var
MysqlStartupInfo:TStartupInfo;
MysqlProcessInfo:TProcessInformation;
MysqlPid: Integer;
begin
//ShellExecute(Self.handle,'open', PWideChar(edit_MysqlPath.Text + '\bin\mysqld.exe'),PWideChar('--defaults-file=my.ini'),'',SW_SHOWNORMAL);
FillChar(MysqlProcessInfo,sizeof(MysqlProcessInfo),0);
FillChar(MysqlStartupInfo,Sizeof(MysqlStartupInfo),0);
MysqlStartupInfo.cb:=Sizeof(MysqlStartupInfo);
MysqlStartupInfo.dwFlags:=STARTF_USESHOWWINDOW;
MysqlStartupInfo.wShowWindow:=SW_SHOW;
If CreateProcess(PWideChar(edit_MysqlPath.Text + '\bin\mysqld.exe'),PWideChar('"' + edit_MysqlPath.Text + '\bin\mysqld.exe' + '"' + ' --defaults-file=my.ini'),nil,nil,False,0,
nil,nil,MysqlStartupInfo,MysqlProcessInfo) then
begin
memo1.Lines.Add('[' + FormatdateTime('hh:nn:ss', Now)+ '] MYSQL数据库启动成功');
MysqlPid := MysqlProcessInfo.dwProcessId;
else
begin
memo1.Lines.Add('[' + FormatdateTime('hh:nn:ss', Now)+ '] MYSQL数据库启动失败,请检查相关配置');
end;
end;
本文介绍了一个使用Delphi启动MySQL服务的示例代码。通过创建进程的方式启动MySQL,并捕获启动过程中的成功与失败状态,同时记录了MySQL服务的进程ID。
3021

被折叠的 条评论
为什么被折叠?



