Permissions

Windows XP 以管理員身份自動啟動過程

  • December 4, 2015

我正在尋找一種方法,可以在具有管理員權限的使用者登錄時自動啟動某個程序。

我已經嘗試過使用任務調度程序,但沒有成功,因為您必須輸入格式為 machine\user 的使用者名,而我們的 pxe-image-deployment-system 會自動修補機器名稱,因此輸入的域\使用者停止工作。

更新

runas.exe 命令似乎也不適合此任務。如果使用 /user:machinename\Administrator /savcred 則在映像後無效。一位使用者建議使用 .\Administrator 或 localhost\Administrator 但兩者都不能在我的 XP SP3 機器上執行。

UPDATE2

在我需要執行此功能的程序中被使用:

   [DllImport("user32.dll")]
   public static extern int ExitWindowsEx(int uFlags, int dwReserved);

使用 Alan Kuras 建議的程序時,此功能失敗,這對我來說是不行的。

更新3

是的!我明白了,我想!在其他使用者上下文下執行時,您似乎無法使用 ExitWindowsEx。

我只是將我的應用程序切換到 WTSLogoffSession,現在它可以工作了!

如果由於您的部署系統而無法使用內置功能完成此任務,那麼有一個解決方案適用於許多其他事情,例如發送可以在不知道密碼的情況下以管理員身份執行的程序。

基本上您需要創建包含管理員密碼的程序,並且可以獲得以另一個使用者身份執行的指定權限。我想到了幾個程序:

這些程序可以加密你的腳本、使用者名和密碼,並在使用者環境中自動以本地管理員身份執行。

或者,如果您知道某種程式語言,您可以自己編寫。只需閱讀有關模擬(例如在 C#中)

編輯2: 我想到的第二件事。如果您在獲取電腦名時遇到問題您可以嘗試使用 %COMPUTERNAME% 變數,例如 %COMPUTERNAME%\Administrator 並檢查它是否有效。

引用自:https://serverfault.com/questions/400256