
我創建了一個計算機程序,將其安裝為 Windows 服務,並且添加了對另一個 Windows 服務“KEPServerEX 6.9 Runtime”的依賴項,如您從以下屏幕截圖中看到的:
我用不同的方式測試了這種依賴:
- 我已重新啟動計算機,並嘗試驗證“KEPServerEX 6.9 Runtime”是否早於我的程式啟動。
- 我已經停止了“KEPServerEX 6.9 Runtime”,我預計我的程式也會停止。
這些是我的結果:
- 不知道:當我的程式啟動時,事件日誌中會建立條目。 「KEPServerEX 6.9 Runtime」的情況並非如此,「KEP...」也不會建立日誌記錄,因此我不知道此測試在哪裡成功。
- 我的程式沒有停止。
即使我設法證明我的程式僅在重新啟動電腦時在「KEPServerEX 6.9 Runtime」之後啟動,我想知道(請參閱第 2 點)Windows 服務依賴項的意義是什麼。
我正在使用 Windows-10 計算機,而我的客戶正在使用 Windows Server 2016。
供您參考:「KEPServerEX 6.9 Runtime」是一個商業工具,我無法修改它。
答案1
來自微軟的 sc.exe配置:
取決於=
<dependencies>
指定必須在此服務之前啟動的服務或群組的名稱。名稱之間以正斜線 (/) 分隔。
這是依賴關係的唯一原因 - 將一些命令放入 Windows 啟動過程中。
啟動後,依賴項不起作用,除非重新啟動依賴服務。