InstallShield インストール済みファイルの名称変更方法 [InstallShield]
InstallShieldバージョン: 2010
プロジェクトタイプ: InstallScriptプロジェクト
InstallShield2010のInstallScriptプロジェクトで、インストールするファイル名の中に日本語名のファイルがあるとコンパイルエラーとなる。この対応としてインストール時は英語のファイル名とし、インストール完了後、日本語にリネームする方法で対応する。
ただしアンインストール時にリネームしたファイルは残ってしまう。またInstallShield2012Springでは日本語ファイル名でもインストールが可能だった。
1.インストールデザイナから「動作とロジック」、「InstallScript」を選択する。
2.「ファイル」フォルダ内の「Setup.Rul」を選択するとスクリプトのソースコードが表示される。
3.「関数」フォルダ内の“RenameToJapaneseFileName”(これはユーザー作成の関数)を選択し、以下のコードを追加する。
// 英語名ファイル保存場所へのパス
folder_path = Folder_Path ^ "PrintTemplate\\sample\\Japanese\\";
src_file_name = "ShipingList.pdf"; // 英語名ファイル名
dst_file_name = "出荷リスト.pdf"; // リネーム後の日本語ファイル名
if(FindFile(folder_path, src_file_name, temp) == 0) then
// RenameFileは上書きしてくれないので、すでにリネーム後ファイル名のファイルがある場合は削除する
if(FindFile(folder_path, dst_file_name, temp) == 0) then
DeleteFile(folder_path + dst_file_name);
endif;
// リネーム実行
RenameFile(folder_path + src_file_name, folder_path + dst_file_name);
endif;
ちなみにこの関数は“OnFirstUIAfter”および“OnMaintUIAfter”イベントハンドラ関数内で呼び出す。
OnFirstUIAfter関数: これは、アプリケーションの初回インストール用の機能をインストールした後に処理しなくてはならないタスクを実行します。
OnMaintUIAfter関数: このイベント ハンドラでは、アプリケーションのメンテナンス インストールによって機能が再インストールされた後に発生するタスクが実行されます。
コメント 0