PDA

View Full Version : تشخیص stop بودن sqlserver



سیروس مقصودی
شنبه 23 بهمن 1400, 00:48 صبح
با سلام

از طریق کد نویسی چگونه میتوان تشخیص داد که sqlserver متوقف شده یا نه ؟

با تشکر

Touska
شنبه 30 بهمن 1400, 13:24 عصر
می تونی از لیست سرویس های ویندوز سرویس SQL رو پیدا کنی - و چک کنی Start هست یا نه.

سیروس مقصودی
چهارشنبه 04 اسفند 1400, 00:23 صبح
می تونی از لیست سرویس های ویندوز سرویس SQL رو پیدا کنی - و چک کنی Start هست یا نه

نحوه انجام همین کار را نمیدانم . چگونه بایستی این کار را انجام دهم ؟ من میخوام از طریق کد نویسی اینکار را انجام دهم

با تشکر

Touska
چهارشنبه 04 اسفند 1400, 10:54 صبح
من از این یونیت استفاده کردم - کار می کنه مشکلی نداره.

Detect windows service state (https://stackoverflow.com/questions/5913279/detect-windows-service-state/5917648)

ابوالفضل عباسی
چهارشنبه 24 آبان 1402, 12:26 عصر
uses Winapi.WinSvc, Vcl.SvcMgr;


function IsMSSQLServerRunning: Boolean;
var
ServiceManager: TServiceManager;
SQLService: TService;
begin
Result := False;
ServiceManager := TServiceManager.Create(nil);
SQLService := TService.Create(nil);


try
ServiceManager.Access := SERVICE_QUERY_STATUS;
SQLService.ServiceName := 'MSSQLSERVER'; // نام سرویس MSSQLServer


if ServiceManager.Connect then
begin
try
if SQLService.Open then
begin
try
Result := (SQLService.Status = SERVICE_RUNNING);
finally
SQLService.Close;
end;
end;
finally
ServiceManager.Disconnect;
end;
end;
finally
ServiceManager.Free;
SQLService.Free;
end;
end;