
Windows 10 專業版
版本 1709 作業系統
內部版本 16299.666
我有一項想要存取網路磁碟機的服務U:/public/blah.txt
。使用命令提示字元以普通使用者身分執行它是可行的,但作為服務運行它則不行。
如果轉到services.msc -> servicename -> properties -> Log On -> This account
並使用MYDOMAIN/MYUSER
正確的密碼並重新啟動,它仍然不起作用,並產生相同的錯誤訊息。這是可以從命令提示字元成功運行程式的帳戶。
它是一個運行在內部的 golang 可執行文件NSSM服務,實際的錯誤訊息是Error opening file U:\public\blah.txt: The system cannot find the path specified
。
該程式過去作為服務在另一台電腦上工作,甚至訪問同一驅動器。我能看到的唯一區別是我現在使用的帳戶是網域帳戶,而之前是本機使用者。
如果我的服務以擁有磁碟機對應的使用者身分成功登錄,為什麼看不到磁碟機對應?
答案1
不要讓服務透過映射驅動器存取數據,而是使用 UNC 路徑名。
載入使用者設定檔時可以透過多種方式來對應驅動器。當發生以下情況時,並非所有這些都會被觸發服務使用特定帳號登入。因此,UNC 路徑比映射驅動器更可靠。