各位先進大家好~
我目前想使用vbs進行檔案複製,在strFolder3="C:\Users\%UserName%\AppData\Software\",將%UserName%改成AD帳號,就可以正常Copy,我上網搜尋了一下,好像要Set objSysInfo = Createobject("ADSystemInfo"),才能讀取AD帳號,但我對程式不熟,想請問要怎麼修改才能copy,還請各位多幫忙,謝謝。
On Error Resume Next
Set FSO = CreateObject("Scripting.FileSystemObject")
Set NetWorkObj = CreateObject("WScript.Network")
Set objSysInfo = Createobject("ADSystemInfo")
UserName = objSysInfo.UserName
Dim strFolder1,strFolder2
strFolder1="\\server02\file01.dll"
strFolder2="\\server02\file02.ini"
strFolder3="C:\Users\%UserName%\AppData\Software\"
Call CopyFiles(strFolder1)
WScript.Quit
Sub CopyFiles(strPath)
Dim Folder,subFolders,Files,File,fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.CopyFile strFolder1,strFolder3,True
fso.CopyFile strFolder2,strFolder3,True
End Sub
請參考
<pre class="c" name="code">
方法一:
UserProFile1 = """" & Environ("USERPROFILE") & "\AppData\Software\"""
方法二:
UserProFile2 = """C:\Users\" & Application.UserName & "\AppData\Software\"""
Environ 函數說明
傳回 String,它會關聯於一個作業系統環境變數。在Macintosh中無法使用。
語法
Environ({envstring | number})
Environ 函數語法含有以下這些指名引數:
單元 描述
envstring 選擇性引數,此為包含一個環境變數名稱的字串運算式。
number 選擇性引數,此為一個數值運算式,用來表示在環境字串表格中的環境字串的數值順序。number 引數可以是任何的數值運算式,但在在計算前,它會先轉換為一個整數。
請注意
如果在環境字串表格中找不到 envstring,則會傳回一個空字串 ("")。如果找到,則 Environ 會傳回一段文字,乃關於所指定的 envstring ; 也就是說,這段文字會等於 (=) 環境字串表格中的環境變數。
如果你指定 number,則在環境字串表格中所佔的數值位置上的字串會傳回。在這種情況下,Environ 會傳回所有的文字,包括 envstring,如果在特定位置上沒有環境字串,那麼 Environ 會傳回一個空字串。
補充說明:
Environ()中可用的環境變數請查看CMD中的SET