我嘗試使用AddIPAddress以非管理員用戶身份登錄時向網卡添加臨時IP地址。 AddIPAddress的MSDN文檔指出,如果該函數是由非管理員用戶調用的,則ERROR_INVALID_HANDLE將作爲錯誤返回。模擬管理員用戶時使用AddIPAddress的問題
鑑於我已經使用API調用LogonUser()和ImpersonateLoggedOnUser()來調用AddIPAddress。現在我的應用程序認爲它以管理員身份登錄,但AddIPAddress仍然失敗並顯示ERROR_INVALID_HANDLE。
MSDN還指出..
「注意組策略,企業策略,網絡可能會阻止成功完成這些功能的其他限制。確保應用程序具有所需的網絡權限嘗試使用這些之前功能。」
是否可以使用模擬來調用AddIPAddress?如果是的話如何?我猜我需要更改上面提到的權限,但是我對這個領域的內容感到不知所措。
任何幫助,將不勝感激!
產生額外的:我也畫一個空白,同時試圖調出的netsh使用CreateProcessAsUser使用手柄的模擬的管理員用戶啓動程序(再次登錄作爲一個普通用戶)。始終返回錯誤,指示不足的特權。
確實,試圖讓它沒有成功地運作。 LogonUser/ImpersonateLoggedOnUser和CoInitializeSecurity都沒有幫助。看起來像一些挖掘到GpEdit.msc是必需的。 – Andrey 2009-05-23 09:53:18
欣賞你花時間研究這一點。我仍然無法相信它應該如此難以實現! – 2009-05-26 20:32:02