1
我幾個星期前開始學習HTA和VBScript,通過開始這個工作程序。如果這是一個愚蠢的問題,我仍然是新手,所以請原諒我。我一直在尋找兩個小時,或者我無能,或者我不知道如何搜索這個問題。If Then語句永遠不會執行(VBScript)
我需要這個腳本來檢查三個文件;如果所有三個都存在,腳本將繼續,如果缺少一個,則會彈出一個對話框,告訴用戶哪個丟失了。我已經看過五十種不同的方式來做這件事,但沒有一件對我有用。下面的方法是唯一不返回任何錯誤的方法,問題是它根本沒有做任何事情,它只是一個空白的窗口。 (我只檢查一個文件先試這個)
<SCRIPT LANGUAGE="VBScript">
' Resize and center the window
' ==========================================================
sub DoResize
window.resizeTo 350,250
screenWidth = Document.ParentWindow.Screen.AvailWidth
screenHeight = Document.ParentWindow.Screen.AvailHeight
posLeft = (screenWidth - 350)/2
posTop = (screenHeight - 250)/2
window.moveTo posLeft, posTop
end Sub
DoResize()
</SCRIPT>
<TITLE>Test</TITLE>
<HTA:APPLICATION
Id="oInstall"
APPLICATIONNAME="Test"
SCROLL="no"
SINGLEINSTANCE="yes"
WINDOWSTATE="normal"
SELECTION="NO"
CONTEXTMENU = "NO"
BORDER="Dialogue"
BORDERStyle = "Normal"
INNERBORDER = "YES"
NOWRAP
SYSMENU = "YES"
>
<HEAD>
<STYLE type=text/css>
textarea {
overflow: hidden;
color: #ffffff;
border: none;
background-color: transparent;
}
</STYLE>
<body background="c:\mount\windows\system32\aopentools\Images\MSCBG.bmp">
</HEAD>
<textarea name="ProgSect" rows=1 cols=16 readonly></textarea><img src="c:\mount\windows\system32\aopentools\images\mscind.gif">
<SCRIPT LANGUAGE="VBScript">
Option Explicit
Sub Check
' Creating objects
' ==========================================================
Dim WshShell
Dim objFSO, outFile
Dim filesys
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set filesys = CreateObject("Scripting.FileSystemObject")
Set oFSO=CreateObject("Scripting.FileSystemObject")
' ==========================================================
If oFile=oFSO.FileExists("c:\users\jgainey\desktop\test.txt") Then
BeginImage
Else
MsgBox "An Error Has Occurred" & vbNewLine & "EC03: Test.txt" & vbExclamation & "ERROR"
Window.Close
End If
End Sub
Sub BeginImage
' Creating objects
' ==========================================================
Dim intWindowStyle
Dim bWaitOnReturn
Dim objShell
Dim WshShell
Dim objFSO, outFile
Dim filesys
Set objShell = CreateObject("Wscript.Shell")
Set WshShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set filesys = CreateObject("Scripting.FileSystemObject")
set oFSO=CreateObject("Scripting.FileSystemObject")
set oFile=oFSO.OpenTextFile("c:\users\jgainey\desktop\test.txt",1)
text=oFile.ReadAll
document.all.ProgSect.value=text
End Sub
</SCRIPT>
</BODY>
</HTML>
的結果是我的背景圖片,我的.gif注意,我的文字區域的窗口,就是這樣,文本區域從未填充。當我刪除test.txt文件時,沒有消息框彈出,沒有任何影響。
編輯:好的,我添加了它,並獲得了所有我定義的變量,現在它只是返回消息框,即使該文件存在。 – AbaddonVH
這很奇怪...再次檢查文件位置...同時確認您的頁面有權訪問該文件... –
如果文本文檔存在,可以很好地工作,但如果我移動它,則會得到醜陋的舊的, 「錯誤:找不到文件」腳本錯誤窗口。由於我們需要使用錯誤代碼,所以這不會發生。有什麼辦法可以規避嗎?不過,再次感謝上述,如果它能讓我投票給你。 – AbaddonVH