VBS:如何在objFSO.CopyFile中使用%PROGRAMFILES%?

时间:2014-10-08 10:47:15

标签: vbscript

我正在尝试使用vbs中的objFSO.CopyFile命令复制文件。问题是,我不能在我公司使用硬编码路径,所以我试图使用变量。这是代码,当我使用C:\Program Files\代替%PROGRAMFILES%时,它可以正常工作。

Option Explicit

dim strFileToCopy
dim strFolder
dim objFSO
dim objWShell

set objFso=createObject("scripting.fileSystemObject")
set objWShell=wScript.createObject("WScript.Shell")

strFileToCopy = "%PROGRAMFILES%\mainfolder\subfolder\netcfg.ini"
strFolder = "%PROGRAMFILES%\othermainfolder\"

Const OverwriteExisting = TRUE
Set objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strFolder) Then
  objFSO.CopyFile strFileToCopy, strFolder, OverwriteExisting  
Else

End If

1 个答案:

答案 0 :(得分:2)

使用.ExpandEnvironmentStrings()

>> set objWShell=wScript.createObject("WScript.Shell")
>> WScript.Echo objWShell.ExpandEnvironmentStrings("%PROGRAMFILES%\mainfolder\subfolder\netcfg.ini")
>>
C:\Program Files\mainfolder\subfolder\netcfg.ini
>>