我有一个批处理文件,而不是在WinPE下运行,程序在运行时创建并更新文本文件。我想创建一个简单的前端'使用HTA在更新时显示徽标和文本文件。 我已经显示了徽标并且有一个textarea来显示文本文件的内容..但是它不会随着文本文件的更改而更新。
到目前为止,这是我的HTA代码;
<html>
<head>
<title>Live Text Display</title>
<HTA:APPLICATION
ID=“Display”
APPLICATIONNAME="Display"
SCROLL="no"
SINGLEINSTANCE="yes"
MAXIMIZEBUTTON="no"
MINIMIZEBUTTON="no"
WINDOWSTATE="MAXIMIZE"
>
<style>
img {
width: 45%;
height: 25%;
}
textarea {
width: 100%;
height: 75%;
margin: 0 auto;
padding: 0;
border-width: 0;
text-align: center;
font-size: 18px;
overflow: hidden;
resize: none;
background-color: yellow;
border: none;
}
</style>
</head>
<script language="VBScript">
Option Explicit
Dim oFSO, oFile, pFSO, pFile, pText, TEXT
sub Window_onload
on error resume next
RefreshList
iTimerID = window.setInterval("RefreshList", 1000)
end sub
SUB RefreshList
SET oFSO=CreateObject("Scripting.FileSystemObject")
SET oFILE=oFSO.OpenTextFile("HTA.TXT",1)
TEXT=oFILE.ReadLine
TEXT=Trim(TEXT)
document.all.logo.src=TEXT & "\LOGO.JPG"
oFILE.Close
SET pFSO=CreateObject("Scripting.FileSystemObject")
SET pFile=pFSO.OpenTextFile(TEXT & "\PROGRESS.TXT",1)
pText=pFile.ReadAll
document.all.ScriptArea.InnerText=pText
pFile.Close
END SUB
</script>
<body>
<p style="text-align:center">
<br><img id="logo" width="900" height="150"><br><br>
<textarea name="ScriptArea" rows="12"></textarea>
</p>
</body>
</html>
HTA.TXT包含被发现的USB的驱动器号(例如D :)。使用批处理程序中的命令并保存到默认的&#39; x:\ windows \ system32&#39;在WinPE中运行时的位置标准。
LOGO.JPG是我在HTA表格上显示的图片。
PROGRESS.TXT是我想要在textarea中显示内容的文本文件(名为&#39; ScripArea&#39;)。我试过了两个;
document.all.ScriptArea.InnerText=pText
和
document.all.ScriptArea.Value=pText
让更新显示..既不起作用。
我已经包含了刷新计时器,每1秒运行一次RefreshList子程序。
任何帮助都会受到赞赏,因为我疯狂地想弄明白。
问候。
更新
我现在遇到的问题是,当从批处理程序调用HTA时,批处理程序会暂停,直到我物理关闭HTA,这会导致PROGRESS文件没有更新。
任何人都知道HTA打开时批处理文件命令暂停的原因吗?