VBScript错误52错误的文件名或编号
我有一个VBScript,用于Avaya CMS,每3秒生成一个CSV。然后,节点服务器会在每次更改时读取此CSV 它偶尔会抛出一个错误(错误52),然后需要有人在提示符上手动单击OK,然后继续 我没有编写初始脚本,但我一直在尝试修复它,以便它不会抛出此错误 据我所知,当节点服务器尝试读取文件时,脚本尝试写入文件时会导致问题 到目前为止,我已经尝试通过使文件为只读来解决这个问题,然后,在脚本中,它使文件可写、写入并再次使其为只读 我以为这已经解决了问题,但我再次收到错误52弹出窗口,现在我不确定 有人知道有没有办法让VB/Avaya忽略错误?我在想类似于将VBScript错误52错误的文件名或编号,vbscript,wsh,avaya,Vbscript,Wsh,Avaya,我有一个VBScript,用于Avaya CMS,每3秒生成一个CSV。然后,节点服务器会在每次更改时读取此CSV 它偶尔会抛出一个错误(错误52),然后需要有人在提示符上手动单击OK,然后继续 我没有编写初始脚本,但我一直在尝试修复它,以便它不会抛出此错误 据我所知,当节点服务器尝试读取文件时,脚本尝试写入文件时会导致问题 到目前为止,我已经尝试通过使文件为只读来解决这个问题,然后,在脚本中,它使文件可写、写入并再次使其为只读 我以为这已经解决了问题,但我再次收到错误52弹出窗口,现在我不确定
放在错误恢复上,然后在写入文件的行之前
我知道忽略错误不是一个好的做法,但是在这种情况下,如果它确实忽略了错误,这只意味着文件不会在这个循环中更新,但是3秒钟后它会再次循环,所以应该可以
脚本:
On Error Resume Next
cvsSrv.Reports.ACD = 1
Set Info = cvsSrv.Reports.Reports("Real-Time\Designer\Skill Status")
If Info Is Nothing Then
Else
b = cvsSrv.Reports.CreateReport(Info,Rep)
If b Then
Rep.RefreshInterval = 3
Rep.SetProperty "Split/Skill","5"
Set WshShell = CreateObject("WScript.Shell")
theHTMLLocation = "C:\wamp\www\wallboards\agent_status.csv"
theSleepFile = "C:\wamp\www\wallboards\sleep.vbs"
theTemplateLocation = ""
Set fso = CreateObject("Scripting.FileSystemObject")
Set gfile = fso.GetFile("C:\wamp\www\wallboards\agent_status.csv")
Do While Rep.Window.Caption <> ""
gfile.Attributes = 0
d = Rep.ExportData("C:\wamp\www\wallboards\agent_status.csv", 44, 0, False, True, True)
gfile.Attributes = 1
WshShell.Run "wscript.exe """ & theSleepFile & """", , True
Loop
If Not cvsSrv.Interactive Then cvsSrv.ActiveTasks.Remove Rep.TaskID
Set Rep = Nothing
End If
End If
Set Info = Nothing
出错时继续下一步
cvsSrv.Reports.ACD=1
Set Info=cvsSrv.Reports.Reports(“实时\设计师\技能状态”)
如果信息不重要,那么
其他的
b=cvsSrv.Reports.CreateReport(信息,代表)
如果b那么
Rep.RefreshInterval=3
Rep.SetProperty“分割/技能”、“5”
设置WshShell=CreateObject(“WScript.Shell”)
htmlocation=“C:\wamp\www\wallboards\agent\u status.csv”
theSleepFile=“C:\wamp\www\wallboards\sleep.vbs”
theTemplateLocation=“”
设置fso=CreateObject(“Scripting.FileSystemObject”)
设置gfile=fso.GetFile(“C:\wamp\www\wallboards\agent\u status.csv”)
执行While Rep.Window.Caption“”
gfile.Attributes=0
d=Rep.ExportData(“C:\wamp\www\wallboards\agent\u status.csv”,44,0,False,True,True)
gfile.Attributes=1
WshShell.Run“wscript.exe”“&theSleepFile&”“,True
环
如果不是cvsSrv.Interactive,则为cvsSrv.ActiveTasks.Remove Rep.TaskID
Set Rep=无
如果结束
如果结束
设置信息=无
另外,我在文件开头遗漏了一些我认为不相关的参数,如果有人认为它们相关,我会添加它们
AFAICS您发布的代码中没有任何内容应该引起注意。请显示准确的错误消息。我会在它再次弹出时立即发布它的屏幕截图,但是它只是间歇性地发生,所以可能需要一段时间才能发布。@AnsgarWiechers我在周末收到了错误消息。我已经发布了它的截图。这是来自CMS的错误,而不是来自VBScript。您需要与Avaya的技术支持部门接洽,如错误消息中所述。@AnsgarWiechers我知道Avaya正在抛出错误,但该错误是否仍然是VB错误?我已经生成了一些这样的报告,但这是唯一一个抛出此错误的报告。如果这是一个avaya问题,我不应该期望在我的其他报告中也看到同样的问题吗?AFAICS您发布的代码中没有任何内容应该引起注意。请显示准确的错误消息。我会在它再次弹出时立即发布它的屏幕截图,但是它只是间歇性地发生,所以可能需要一段时间才能发布。@AnsgarWiechers我在周末收到了错误消息。我已经发布了它的截图。这是来自CMS的错误,而不是来自VBScript。您需要与Avaya的技术支持部门接洽,如错误消息中所述。@AnsgarWiechers我知道Avaya正在抛出错误,但该错误是否仍然是VB错误?我已经生成了一些这样的报告,但这是唯一一个抛出此错误的报告。如果这是一个avaya问题,我不应该期望在我的其他报告中也看到同样的问题吗?