サービスが起動しているかどうかの検知


ぽにょ  2009-07-01 17:41:05  No: 34966

あるサービスが起動しているかどうかを検知して動作を分岐するにはどうすればよろしいのでしょうか。

開発マシンはXP、利用者マシンはXP、Vista
delphi5,6,ターボいずれかの環境で開発します。


DEKO  2009-07-01 19:16:39  No: 34967

サービスの状態は QueryServiceStatus() で取得できます。

・OpenSCManager()
・OpenService()
・CloseServiceHandle()
等も一緒に使う必要がありますね。

場合によっては EnumServicesStatus() も使わなくてはならないかもしれません。

・StartService()
・ControlService()
を使うと、サービスの状態を変更できます。
(開始/停止/一時停止/再開)

# WinSvc を uses して下さい。


KHE00221  2009-07-02 06:44:08  No: 34968

サービスの一覧取得と開始と停止

http://khe00221.image.coocan.jp/index.php?FrontPage%2FTips2%2F%A5%B7%A5%B9%A5%C6%A5%E0%20-%20%A5%B5%A1%BC%A5%D3%A5%B9%2F%B0%EC%CD%F7%BC%E8%C6%C0%A4%C8%B3%AB%BB%CF%A4%C8%C4%E4%BB%DF

ProcessServiceUnit.pas
http://khe00221.image.coocan.jp/index.php?FrontPage%2FUnit%2FProcessServiveUnit.pas

PrivilegeUnit.pas
http://khe00221.image.coocan.jp/index.php?FrontPage%2FUnit%2FPrivilegeUnit.pas


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加