另一个输入过去的文件错误结束

时间:2016-11-07 19:03:36

标签: vbscript hta

我知道是什么导致了这种情况,但我不确定在我的情况下需要修复它。这里的其他人写了代码(或借用了它),但我在第63行第3行的脚本中不断收到错误。请注意该行中的ReadAll

<HTA:APPLICATION ID="oMyApp" 
  APPLICATIONNAME="UPSApp" 
  ICON=".\UPS.ico"
  SCROLL="no"
  BORDER="thin"
  SINGLEINSTANCE="yes">

<script language="VBScript">
Const strStatusFile = "C:\Zscript\fswstatus\fswStatus.txt"

Dim intTimerID
intTimerID = window.setInterval("RunAtInterval", 1000)

Sub Window_onLoad
  Dim intWidth, intHeight

  intWidth = 400
  intHeight = 200

  Me.resizeTo intWidth, intHeight
  Me.moveTo ((Screen.Width / 2) - (intWidth / 2)), ((Screen.Height / 2) - (intHeight / 2))
End Sub

Sub RunAtInterval
  Set objFSO = CreateObject("Scripting.FileSystemObject")

  If Not objFSO.FileExists(strStatusFile) Then Exit Sub
  Set objFile = objFSO.OpenTextFile(strStatusFile, 1, True)

  strContent = objFile.ReadAll
  strContent = Replace(strContent, vbLf, "<br>")

  If strContent = "QUIT" Then
    window.Close
  Else
    document.formStatus.innerHTML = strContent & "<br>"
  End If
End Sub

<form name = "formStatus"

1 个答案:

答案 0 :(得分:0)

您的文件为空/长度为0.证据:

>> n = ".\nix.txt"
>> goFS.CreateTextFile n
>> WScript.Echo goFS.GetFile(n).Size
>> goFS.OpenTextFile(n).ReadAll()
>>
0
Error Number:       62
Error Description:  Input past end of file

更新评论:

因为从空文件中读取没有意义,所以你不应该尝试。检查大小为0,并在您的用例中执行合理的操作。