iT邦幫忙

0

請教vbs問題,copyfiles的時候,我要以AD username進行file該怎麼做?

  • 分享至 

  • xImage

各位先進大家好~
我目前想使用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
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

4
蟹老闆
iT邦大師 1 級 ‧ 2014-06-04 03:48:57
最佳解答

請參考

<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

我要發表回答

立即登入回答