PSExec 在本機上“找不到指定的檔案”

PSExec 在本機上“找不到指定的檔案”

正如您從下面的螢幕截圖中看到的,C:\Windows\system32\cmd.exe存在(因為命令提示字元本身正在使用該路徑),我嘗試使用短cmd.exe 名稱和完整路徑引用它,但這兩者都會導致PsExec 出現相同的錯誤。

The system cannot find the specified file.

網路服務用戶確實存在;如果我輸入錯誤,如果收到密碼提示並顯示使用者名稱密碼不存在的訊息。

我在多台電腦上收到此錯誤訊息,但它在其他電腦上有效;混合使用 Windows Server 2008 R2 和 2012 R2。我正在使用最新版本的 PsExec.exe(目前為 2.11),並且正在執行我用來以管理員身份啟動 PsExec 的命令提示符,因此它應該具有任何必要的權限。

我發現很多關於在遠端電腦上運行 PsExec 時遇到此問題的帖子,但沒有針對我正在執行的本地電腦的帖子。

關於問題是什麼有什麼想法嗎?

在此輸入影像描述

答案1

修復最終是不執行我以管理員身份啟動 PsExec 的命令提示字元。如果我從以管理員身分執行的 cmd 提示字元執行該命令,則會收到錯誤訊息。如果我從非提升的命令提示字元運行它,它工作正常。

答案2

發生這種情況的另一個原因是您已停止或停用 LanmanServer(伺服器)或 LanmanWorkstation(工作站)服務。

PsExec 的工作方式需要這些才能發揮作用。

答案3

我還發現,如果我將 PSExec 複製到另一個目錄(並且 Sysinternals 目錄不在 PATH 上)並嘗試從那裡運行它,它將失敗,如上所述。如果我在 Sysinternals 目錄上運行 PSExec,則 -s 選項將起作用。

因此,另一個要檢查的項目是確保 Sysinternals 資料夾位於路徑上,或者 PSExec 是從該目錄執行的。

顯然,它需要另一個 Sysinternals 可執行檔...

答案4

對我來說解決這個問題的方法是從預設的cmd 位置(在我的例子中為c:\windows\system32)執行“psexec”命令,並給出參數的完整路徑(您正在運行的應用程式) :

C:\WINDOWS\system32>psexec c:\Projects\newdesktop\someapp.exe

相關內容