我的問題是,我需要找到一個VBScript
的方式來檢索%USERNAME%
的值來獲取用戶配置文件文件夾 - 例如,C:\%USERNAME%\Documents\example.txt
。vb替代.bat%USERNAME%腳本
如何從VBScript
獲得%USERNAME%
?
(編輯)我對vb一無所知,所以我不知道字符串或wscript或類似的東西。解釋給我,好像我是個孩子,在那裏把腳本和等 感謝
我的問題是,我需要找到一個VBScript
的方式來檢索%USERNAME%
的值來獲取用戶配置文件文件夾 - 例如,C:\%USERNAME%\Documents\example.txt
。vb替代.bat%USERNAME%腳本
如何從VBScript
獲得%USERNAME%
?
(編輯)我對vb一無所知,所以我不知道字符串或wscript或類似的東西。解釋給我,好像我是個孩子,在那裏把腳本和等 感謝
看到這個答案:https://stackoverflow.com/a/904747/6550457
我推薦使用%USERPROFILE%,而非%USERNAME%,如果你在標準windows配置文件目錄之後。
返回環境變量的擴展值。
object.ExpandEnvironmentStrings(strString)
對象
WshShell對象。
strString表示要擴大環境變量的名稱
字符串值。
上面沒有詳細說明。如果它是路徑或其他東西,則將整個字符串傳遞給它。 EG %windir%\system32
正常工作,並返回c:\windows\system32
..
但是,這不是VBS的方式來做你想做的。任何程序或用戶都可以搞砸環境變量。
返回用戶的名稱。
object.UserName
對象
WshNetwork對象。
有了可以此示例代碼的伎倆:
Set Ws = CreateObject("WScript.Shell")
UserName=Ws.ExpandEnvironmentStrings("%UserName%")
ComputerName=Ws.ExpandEnvironmentStrings("%ComputerName%")
WScript.Echo "The UserName is : "& UserName
Wscript.echo "The computername is : " & ComputerName
wscript.echo "C:\"& USERNAME & "\Documents\example.txt"
你可以編輯你的文章,以便它確切地說明在哪裏放置信息?謝謝 –
@Bigfat。英美菸草編輯爲什麼我不明白你的意思? – Hackoo
雖然其他答案(和提議的複製品)回答你是問,關於擴大環境變量的問題,它看起來像你」重新嘗試獲取用戶的文檔文件夾。這可以通過Shell對象的集合SpecialFolder
來完成:
Set objShell = WScript.CreateObject("WScript.Shell")
strDocumentDirectoryPath = objShell.SpecialFolders.Item("MyDocuments")
Set WshShell = WScript.CreateObject("WScript.Shell")
CurrentProfilePath = WshShell.RegRead("HKCU\Volatile Environment\USERPROFILE")
的可能的複製[我可以拿起在VBScript腳本WSH環境變量?](http://stackoverflow.com/questions/904739/can-i-pick-up-environment-variables-in-vbscript -wsh-script) – FloatingKiwi