Vbscript 如何在visual basic脚本上引用主文件夹
首先,我要说的是,我是一个linux爱好者,对VBS甚至windows全局变量都不太熟悉 我被要求更新一个VBS脚本,它基本上将最新版本的访问表单复制到计算机上。目前,它将此访问表单放在C:\MedMaint中。问题是我们在此位置不以管理员身份运行。因此,当新用户尝试访问vbs脚本时,原始用户必须删除该文件夹。我需要将此脚本更改为~/MedMaint的linux等效脚本,或“C:\Documents and Settings\MyUserName\Application Data\MedMaint” 下面是一个代码示例Vbscript 如何在visual basic脚本上引用主文件夹,vbscript,Vbscript,首先,我要说的是,我是一个linux爱好者,对VBS甚至windows全局变量都不太熟悉 我被要求更新一个VBS脚本,它基本上将最新版本的访问表单复制到计算机上。目前,它将此访问表单放在C:\MedMaint中。问题是我们在此位置不以管理员身份运行。因此,当新用户尝试访问vbs脚本时,原始用户必须删除该文件夹。我需要将此脚本更改为~/MedMaint的linux等效脚本,或“C:\Documents and Settings\MyUserName\Application Data\MedMain
If Not FSO.FileExists("c:\MedMaint\" & File.Name) Then
FSO.CopyFile File.Path, "c:\MedMaint\" ' copy the missing file
Else
Set RPFile = FSO.GetFile("c:\MedMaint\" & File.Name) ' Get the file object from the local object
If (File.DateLastModified >= RPFile.DateLastModified) Then
FSO.CopyFile File.Path, "c:\MedMaint\"
我想知道如何将c:\MedMaint\reference更改为用户的home dir您可以使用Shell对象
看看链接 如果您使用的是Windows脚本主机,这里有一种方法
Set WshShell = CreateObject("WScript.Shell")
strHomeFolder = WshShell.ExpandEnvironmentStrings("%USERPROFILE%")
要获取用户配置文件文件夹的路径(例如Windows XP中的C:\Documents and Settings\或Windows Vista中的C:\Users\),可以执行以下任一操作:
- 使用以下方法评估
环境变量:USERPROFILE
- 使用以下方法检索文件夹路径:
Set oShell = CreateObject("WScript.Shell")
strHomeFolder = oShell.ExpandEnvironmentStrings("%APPDATA%")
''# or
Const ssfAPPDATA = &H1A
Set oShell = CreateObject("Shell.Application")
strHomeFolder = oShell.NameSpace(ssfAPPDATA).Self.Path
要将文件夹名称附加到路径,只需使用如下字符串连接:
strMedMaintFolder = strHomeFolder & "\MedMaint"
另外,如果脚本包含许多路径连接,我建议使用该方法,因为它会为您处理路径分隔符(\
):
谢谢你这就是我需要的。。。。“设置oShell=CreateObject(“WScript.Shell”)strHomeFolder=oShell.ExpandEnvironmentString(“%APPDATA%”)”
Set oShell = CreateObject("WScript.Shell")
strHomeFolder = oShell.ExpandEnvironmentStrings("%APPDATA%")
''# or
Const ssfAPPDATA = &H1A
Set oShell = CreateObject("Shell.Application")
strHomeFolder = oShell.NameSpace(ssfAPPDATA).Self.Path
strMedMaintFolder = strHomeFolder & "\MedMaint"
Set oFSO = CreateObject("Scripting.FileSystemObject")
strMedMaintFolder = fso.BuildPath(strHomeFolder, "MedMaint")