- - PR -
ISでVBScript(WScript)の記述方法について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2008-08-17 16:07
InstallShieldのMSIプロジェクトでインストーラを作成しております。
現在、VBScriptを使用してファイルの書き込みを行おうとしています。 ファイルの書き込みはWScriptで記述しております。 ISではコンパイル、ビルド後のインストーラで、インストールすると、 WScriptで記述した箇所でインストールが中断されてしまいます。 (VBScript単体で動作させた場合は正常に動作するのです。) InstallShieldに組み込むVBScriptでWScriptを使用したい場合はどの ように記述すればよいのでしょうか? どなたかご存知の方がいましたら、ご教示お願いします。 環境 InstallShield2009、MSIプロジェクト、Windows Vista | ||||||||
|
投稿日時: 2008-08-17 16:41
WScript オブジェクトは WSH がスクリプトに対して公開するプライベートオブジェクトなので、IntallShield に限らず、WSH 以外の環境では使えません。
なら、FSO を使うとか。 | ||||||||
|
投稿日時: 2008-08-17 17:52
渋木宏明(ひどり)さん
返信ありがとうございます。
FSOを使用して下記のように記述したらうまくいきました。 ありがとうございました。 ---- 'InstallShieldでインストールフォルダに '月日を記述したファイルの保存する。 Function WriteDate() Dim dtmNow ' 月日保存用 Dim objFSO ' FileSystemObject Dim objFile ' ファイル書き込み用 Dim strInstallDir, strFilePath ' ディレクト、パス保存用 '年月日を読み取る dtmNow = Now strNow = Year(dtmNow) & "." & Month(dtmNow) & "." & Day(dtmNow) 'インストールディレクトリの場所を取得する strInstallDir = Session.Property("INSTALLDIR") strFilePath = strInstallDir & "installdate.txt" 'ファイルに書き込む Set objFSO = CreateObject("Scripting.FileSystemObject") If Err.Number = 0 Then Set objFile = objFSO.CreateTextFile(strFilePath, True) If Err.Number = 0 Then objFile.WriteLine(strNow) objFile.Close End If End If Set objFOS = Nothing Set objFile = Nothing End Function |
1