Windows

當沒有人登錄時在電腦啟動時啟動程序並在有人登錄時顯示視窗(作業系統:Windows)

  • January 15, 2019

我有一個程序在系統啟動時使用 Windows Server 2012 上的任務計劃程序啟動。即使電腦自動重新啟動,該程序也必須啟動。

管理員是用於啟動程序的帳戶,該任務選中“無論使用者是否登錄都執行”選項。

這樣做的問題是,當有人最終使用遠端桌面連接以管理員身份登錄時,界面(程序視窗)是隱藏的。

據我了解,沒有辦法使用任務計劃程序來解決這個問題。

我該如何解決這個問題?

這應該是一個相當普遍的問題,但我通過搜尋網路找不到任何東西。我很驚訝微軟在他們的調度程序中允許這樣的限制。我可以製作一個 VBScript 或在啟動時執行並啟動程序,然後在使用者實際登錄時可見嗎?

其他想法?

(我不想製作一個單獨的純 GUI 程序,順便連接到原始程序。如果我不必在使用者登錄時終止已經執行的程序然後啟動,我也更喜歡它再說一遍。)

想辦法自己做。這在某種程度上是一種解決方法,但這就是我期望得到的。

  • 好的,第一步是從微軟獲取一個名為 AutoLogon.exe 的程序:

http ://technet.microsoft.com/sv-se/sysinternals/bb963905.aspx

停止!不要畏縮。繼續閱讀…

  • 執行它,設置它以便管理員應該自動登錄。
  • 在任務計劃程序中創建一個任務。將其設置為僅在使用者(管理員)登錄時執行。觸發器是“登錄時”,並指定它僅在管理員登錄時。
  • 創建第二個任務。僅在使用者登錄時執行,在管理員登錄時觸發。操作應為“啟動程序”,程序為“C:\Windows\System32\rundll32.exe”,參數欄位設置為“user32.dll,LockWorkStation”。

如果您重新啟動電腦,現在發生的情況是管理員自動登錄,您要啟動的程序啟動並且工作站被鎖定。如果我通過遠端桌面連接登錄,我可以看到程序視窗並使用 GUI。我可以毫無問題地鎖定/解鎖電腦並隨意斷開/重新連接。如果我去伺服器並在實際工作站登錄也沒有問題。由於管理員已經登錄,任務將不會再次執行(它不會創建一些您無法擺脫的無限登錄鎖定循環)。

就那麼簡單。當然,在自動登錄後電腦被鎖定之前有一秒鐘的時間段,我猜一個可以物理訪問電腦的專業黑客可能會在這個時間段內偷偷摸摸地做一些事情,但就我而言,我可以忽略這種安全風險。只要我不讓任何專業黑客進入我家並向他們展示電腦,系統就應該相對安全。最重要的是,需要超級保險庫保護的電腦沒有那麼多價值,所以我對這個解決方案非常滿意。

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