Vbscript VB脚本系统找不到某些计算机/用户上指定的文件

Vbscript VB脚本系统找不到某些计算机/用户上指定的文件,vbscript,Vbscript,你好!我有一个打开access应用程序的脚本 此脚本适用于多个用户,但不适用于一个用户。此用户正在获取此错误 “错误80070002:系统找不到指定的文件” 我很确定我的脚本没有问题,因为只有一个人遇到了这个问题 是否有导致此问题的计算机设置或更新? 除“打开文件”部分外,所有操作都正常 这仅适用于某些计算机/用户。大多数计算机/用户可以毫无问题地执行此操作 提前谢谢 这是剧本 '**********************************************************

你好!我有一个打开access应用程序的脚本

此脚本适用于多个用户,但不适用于一个用户。此用户正在获取此错误

“错误80070002:系统找不到指定的文件”

我很确定我的脚本没有问题,因为只有一个人遇到了这个问题

是否有导致此问题的计算机设置或更新? 除“打开文件”部分外,所有操作都正常

这仅适用于某些计算机/用户。大多数计算机/用户可以毫无问题地执行此操作

提前谢谢

这是剧本

'*******************************************************************************
'Find user name
'*******************************************************************************    
Set WshNetwork = CreateObject("WScript.Network")
userName = WshNetwork.UserName
Set WshNetwork = Nothing

'******************************************************************************* 
'Find version of master file
'******************************************************************************* 
Set folder = objfso.GetFolder(folderPath)  
For Each file In folder.Files
    If InStr(file.Name, "AMSDshbd_M") = 1 Then
        masterVersion = Mid(file.Name, 11, (InStrRev(file.Name, ".") - 11))
        Exit For
    End If
Next

'*******************************************************************************
'Find version of user file, if it exists
'*******************************************************************************    
isUserFile = 0
For each file In folder.Files    
    If InStr(file.Name, "AMSDshbd_" & userName) = 1 Then
        isUserFile = 1
        userVersion = Mid(file.Name, (Len(userName) + 10), (InStrRev(file.Name, ".") - (Len(userName) + 10)))
        Exit For
    End If
Next

'*******************************************************************************
'Copy the file if no user file exists or if the user version is not current
'*******************************************************************************
sourceFile = folderPath & "AMSDshbd_M" & masterVersion & ".accde"
targetFile = folderPath & "AMSDshbd_" & userName & "_M" & masterVersion & ".accde"

isCopyNeeded = 1
if isUserFile = 1 then
    if userVersion = masterVersion then
        isCopyNeeded = 0
    end if
end if

if isCopyNeeded = 1 then
    objFSO.CopyFile sourceFile, targetFile, True
end if

'*******************************************************************************
'Open the file
'*******************************************************************************
sComTxt = Chr(34) & microsoftAccessFile & Chr(34) & " " & Chr(34) & targetFile & Chr(34) 
'objShell.Run sComTxt
objShell.Run sComTxt,,true

Set objFSO = Nothing
Set objShell = Nothing

我知道发生了什么。变量“microsoftAccessFile”是指向MS Access EXE的路径,一些用户有不同的路径指向此Access EXE,这就是为什么它对他们不起作用。我确定了他们的Access EXE的存储路径,并为他们更改了脚本,现在可以使用了。谢谢你指出变量

我知道发生了什么。变量“microsoftAccessFile”是指向MS Access EXE的路径,一些用户有不同的路径指向此Access EXE,这就是为什么它对他们不起作用。我确定了他们的Access EXE的存储路径,并为他们更改了脚本,现在可以使用了。感谢您指出变量

什么是
MicrosoftAccess文件
?将
Option Explicit
放在顶部。错误发生在哪一行?@HelO'Ween它位于“objShell.Run sComTxt,,true”错误显示第86行,这是它指向的地方。@omegaspes它被声明为Access应用程序本身,抱歉,我没有包含脚本。这是“查找用户名”之前的脚本:大家好,我知道发生了什么。变量“microsoftAccessFile”是指向MS Access EXE的路径,一些用户有不同的路径指向此Access EXE,这就是为什么它对他们不起作用。我确定了他们的Access EXE的存储路径,并为他们更改了脚本,现在可以使用了。感谢您指出变量@HelO'WeenWhat
microsoftAccessFile
?将
Option Explicit
放在顶部。错误发生在哪一行?@HelO'Ween它位于“objShell.Run sComTxt,,true”错误显示第86行,这是它指向的地方。@omegaspes它被声明为Access应用程序本身,抱歉,我没有包含脚本。这是“查找用户名”之前的脚本:大家好,我知道发生了什么。变量“microsoftAccessFile”是指向MS Access EXE的路径,一些用户有不同的路径指向此Access EXE,这就是为什么它对他们不起作用。我确定了他们的Access EXE的存储路径,并为他们更改了脚本,现在可以使用了。感谢您指出变量@HelO'Ween