首先我不是编码器,所以我可能会遗漏一些非常基本的东西。
当我们的用户登录到我们的某些终端服务器以检查用户主文件夹中是否存在特定文件时,我正在编写一个将通过GPO运行的脚本,如果它应该退出,如果没有则应该复制来自其他位置的.ini文件。这是我失败的脚本。
On Error Resume Next
dim shell
set shell=createobject("wscript.shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists("C:\%USERPROFILE%\AppData\Roaming\Microsoft Dynamics SL\solomon.ini") Then
Wscript.Quit
Else
objFSO.CopyFile "\\Server\sharepath\file.ini" , "C:\%USERPROFILE%\AppData\Roaming\Microsoft Dynamics SL\"
Wscript.Echo "File Copied."
End If
它只显示运行脚本时的文件复制回显,如果文件不存在则不复制文件,如果文件存在,它仍然会经过它并显示文件复制文本。
编辑:试图清理论坛上显示的方式。
答案 0 :(得分:0)
试试这个:
On Error Resume Next
Dim strAppDataPath
strAppDataPath = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%appdata%")
With CreateObject("Scripting.FileSystemObject")
If .FileExists(strAppDataPath & "\Microsoft Dynamics SL\solomon.ini") Then
Wscript.Quit
Else
.CopyFile "\\Server\sharepath\file.ini", strAppDataPath & "\Microsoft Dynamics SL\"
Wscript.Echo "File Copied."
End If
End With
答案 1 :(得分:0)
您不能在VB字符串中使用系统环境变量。 按照omegastripes的指定事先展开它们,并使用连接运算符将它们附加到路径中。