我正在使用VB6並使用ADSI查詢Windows服務的狀態(正在運行或未運行)。看到這篇MS文章:http://msdn.microsoft.com/en-us/library/aa746322(v=vs.85).aspx。使用ADSI查詢服務狀態 - 需要哪些權限?
對於USERS組成員的用戶,我收到了拋出的異常。我相信這是對GetObject方法:
Set comp = GetObject("WinNT://.,Computer")
唯一的例外是:80070005「常規訪問被拒絕錯誤」
運行相同的代碼爲電力用戶的成員,然而,工作得很好。
將所有用戶提升爲超級用戶不是一種選擇。爲了使此功能成功運行,我需要授予哪些確切的權限?
我試着運行procmon.exe,並且無法從輸出中確定發生了什麼或發生了否定。
謝謝!
編輯:這是在XP SP2上運行。
我的歉意,我應該包括,這是在XP(編輯包括這個小竅門)。感謝您的鏈接,我會檢查該界面(不知道爲什麼它沒有出現在我以前的搜索)。 – MarkL 2011-03-23 13:23:14
好的,只是在XP上測試過的服務。有限的用戶帳戶是Users組的成員,並且可以從正在運行的服務查詢信息,因此ADSI可能會在幕後請求太多信息。僅供參考,但內置的Guest帳戶無法查詢服務信息,您可以在此處執行的最佳操作是獲取正在運行的進程名稱的列表。我建議使用API調用,以便更好地控制過程。 – 2011-03-23 22:46:41
是的,也適合我。而且我還注意到了訪客/用戶帳戶的差異。 謝謝! – MarkL 2011-03-24 15:18:14