1

私は、数週間前にこのプログラムを仕事で始めて、HTA と VBScript を独学で学び始めました。まだまだ初心者ですので、的外れな質問でしたらすみません。私は 2 時間検索してきましたが、私が無能であるか、質問を検索する方法がわかりません。

3 つのファイルをチェックするには、このスクリプトが必要です。3 つすべてが存在する場合、スクリプトは続行されます。1 つが欠けている場合、ダイアログ ボックスがポップアップして、どれが欠けているかをユーザーに知らせます。これを行う 50 の異なる方法のように感じられるものを見てきましたが、どれもうまくいきません。次のメソッドは、エラーを返さない唯一のメソッドです。問題は、何も実行せず、何も表示されないことです。(最初に1つのファイルのみをチェックしてこれをテストしています)

    <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 ファイルを削除しても、メッセージ ボックスは表示されず、何の影響もありません。

4

1 に答える 1