' eScan 簡易インストールスクリプト ' ' 使い方: mwav.exe とこのスクリプトを同じフォルダにおいて実行します ' ' *** このスクリプトがやること *** ' 0. カレントに mwav.exe があるか確認 ' 1. VirusScanTool2 の仕様に合わせて C:\Bases\Bases_X に mwav.exe を解凍 ' 2. デスクトップに、eScan を起動するショートカットを作成 On Error Resume Next Const WIN9X=0 Const WIN2K_XP=1 Const WINVISTA=2 Set objShell = WScript.CreateObject("WScript.Shell") Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") ' インストール開始のダイアログ If objShell.Popup( "eScan のインストールを開始します。", True, "mwav 簡易インストーラ", vbInformation + vbOKCancel ) <> vbOK Then objShell.Popup "キャンセルされました。", 0, "mwav 簡易インストーラ", vbCritical + vbOKOnly Wscript.Quit End If ' mwav.exe がカレントにない場合警告して、必要に応じて説明ページへ誘導 If Not objFSO.FileExists ( "mwav.exe" ) Then intMessage = objShell.Popup( "mwav.exe が見つかりません。" & vbCRLF & _ "下記 URL から mwav.exe をこのスクリプトと同じフォルダに" & vbCRLF & _ "ダウンロードして、再度このスクリプトを実行してください。" & vbCRLF & vbCRLF & _ "ftp://ftp.microworldsystems.com/download/tools/mwav.exe " & vbCRLF & _ "http://www.mwti.net/download/tools/mwav.exe " & vbCRLF & vbCRLF &_ "「はい」をクリックすると説明ページを開きます。", 0, _ "mwav 簡易インストーラ", vbCritical + vbYesNo ) If intMessage = vbYes Then objShell.Run "http://www.higaitaisaku.com/escan.html" Wscript.Quit Else Wscript.Quit End If End If ' 既存の C:\Bases フォルダがあれば問い合わせて OK がでれば削除 If objFSO.FolderExists ( "C:\Bases" ) Then If objShell.Popup( "C:\Bases フォルダがすでに存在します。削除してよいですか?", _ 0, "既存フォルダの削除確認", vbQuestion + vbYesNo ) <> vbYes Then objShell.Popup "既存フォルダの削除が許可されませんでした。" & vbCRLF & _ "C:\Bases フォルダを削除しても構わない状態にしてからもう一回実行してください。", 0, _ "mwav 簡易インストーラ", vbCritical + vbOKOnly Wscript.Quit End If objFSO.DeleteFolder "C:\Bases" , True End If ' OS の判定 Set colEnv = objShell.Environment("Process") If Instr( UCase(colEnv.Item("OS")), "WINDOWS_NT" ) > 0 Then strComputer = "." Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}\\" & strComputer & "\root\cimv2") Set colOperatingSystems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") For Each objOperatingSystem in colOperatingSystems strOSCaption = objOperatingSystem.Caption Next If Instr( LCase(strOSCaption), "vista" ) > 0 Then intOSVersion = WINVISTA Else intOSVersion = WIN2K_XP End If Else intOSVersion = WIN9X End If Set colEnv = Nothing ' C:\Bases\Bases_X フォルダの作成 objFSO.CreateFolder "C:\Bases" objFSO.CreateFolder "C:\Bases\Bases_X" objShell.Popup "自動的に eScan が起動するまでしばらくお待ちください。", 0, _ "mwav 簡易インストーラ", vbInformation + vbOKOnly ' mexe.com を直接起動する escan.vbs を C:\Bases\Bases_X に作成 Set objOutput = objFSO.OpenTextFile( "C:\Bases\Bases_X\escan.vbs" ,2 ,True ) objOutput.WriteLine( "Option Explicit" ) objOutput.WriteLine( "Dim objShell" ) objOutput.WriteLine( "Set objShell = WScript.CreateObject(""WScript.Shell"")" ) objOutput.WriteLine( "objShell.Run ""C:\Bases\Bases_X\mexe.com"", 1, FALSE" ) objOutput.Close ' mwav を実行 Select Case intOSVersion Case WIN9X Set colEnv = objShell.Environment("Process") colEnv.Item("TEMP") = "C:\Bases\Bases_X" objShell.Run "mwav.exe", 1, True Case WIN2K_XP Set colEnv = objShell.Environment("Process") colEnv.Item("TEMP") = "C:\Bases\Bases_X" objShell.Run "mwav.exe", 1, True Case WINVISTA Set colEnv = objShell.Environment("User") strTempPath = colEnv.Item("TEMP") colEnv.Item("TEMP") = "C:\Bases\Bases_X" objShell.Run "mwav.exe", 1, True colEnv.Item("TEMP") = strTempPath End Select ' デスクトップフォルダのパスを取得 strDesktop = objShell.SpecialFolders("Desktop") ' デスクトップに eScan.lnk ショートカットを作成 strFileName = strDesktop + "\eScan.lnk" Set objShortCut = objShell.CreateShortcut( strFileName ) objShortCut.TargetPath = "C:\Bases\Bases_X\escan.vbs" objShortCut.WorkingDirectory = "C:\Bases\Bases_X" objShortCut.IconLocation = "C:\Bases\Bases_X\MWAVL.exe, 0" objShortCut.WindowStyle = 1 objShortCut.Description = "eScan の起動ショートカット" objShortCut.Save ' End of file