簡體   English   中英

當C++中的Windows中的服務崩潰時如何運行程序?

[英]How to run a program when a service crashes in Windows in C++?

當服務崩潰時,我想運行另一個程序。 我知道我應該使用微軟提供的SERVICE_FAILURE_ACTIONSChangeServiceConfig2() 但是,我無法使用它們,因為我找不到任何使用這些結構和 function 的示例。

如果有人可以向我展示一個實現這一點的示例,我將不勝感激。

這不是那么難。 你需要這樣的東西:

SC_ACTION sc_actions = { SC_ACTION_RUN_COMMAND, 0 };
TCHAR command [] = __T ("path/to/command");
SERVICE_FAILURE_ACTIONS failure_actions =
    { INFINITE, NULL, command, 1, &sc_actions);
BOOL ok = ChangeServiceConfig2 (service_handle,
    SERVICE_CONFIG_FAILURE_ACTIONS, &failure_actions);

其中,如文檔所述, service_handle是通過調用OpenService獲得的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM