2012-03-12 168 views
0

我在VBScript中遇到問題。運行此腳本時出現錯誤。它說'找不到路徑'。VBScript錯誤:找不到路徑

<SCRIPT Language="VBScript"> 
Option Explicit  
dim filesys, filetxt 
Const ForReading = 1, ForWriting = 2, ForAppending = 8 
Set filesys = CreateObject("Scripting.FileSystemObject") 
If not filesys.FileExists("%USERPROFILE%\CAD_Kunde\CAD_Kunde.txt") Then 
    Set filetxt = filesys.OpenTextFile("%USERPROFILE%\CAD_Kunde\CAD_Kunde.txt", ForWriting, True) 
    filetxt.WriteLine ("1") 
filetxt.Close 
End If 

</script> 
+0

你自己做了什麼?當您將現有位置(C:\ temp)而不是'%USERPROFILE%'放入時,它是否工作?當你放入用戶位置(C:\ Documents and Setting \ yourusername)而不是'%USERPROFILE&'時,它是否工作?你有沒有試過[谷歌](http://www.google.nl/search?q=vbscript+USERPROFILE)? – AutomatedChaos 2012-03-12 09:17:42

+0

我已經完成了(C:\ temp),但現在我想在用戶配置文件中完成它。與C:\ Documents和設置\ myusername它沒有工作相同的錯誤。是的,我試過谷歌。 – user1225282 2012-03-12 09:36:54

回答

0

解決此問題的步驟。 (我可以給一個oneliner的解決方案,但什麼是 樂趣 學習的嗎?)

  1. Appearently,%USERPROFILE%沒有得到由Scripting.FileSystem COM認可。所以我們必須用適當的值手動替換它。
  2. %USERPROFILE%是一個environment variable。系統變量可以通過Shell對象的ExpandEnvironmentStrings方法檢索。所以你必須創建shell對象:Set WShell = CreateObject("Wscript.Shell")
  3. 現在你可以調用Wshell對象上的ExpandEnvironmentsStrings方法。它返回用戶配置文件字符串
  4. 在路徑中使用返回的字符串。
+0

感謝幫助 – user1225282 2012-03-12 10:06:06