とっちゃん's Blog

WindowsInstaller に WiX はいかがですか~

目次

Blog 利用状況

ニュース

とっちゃんって?

コミュニティ

@ITの記事

CodeZineの記事

WiX チュートリアル

Windows ユーザー エクスペリエンス ガイドライン

唯一の日本語書籍

記事カテゴリ

書庫

日記カテゴリ

インストーラ関連

旧館

[Desktop App Converter]バッチファイルをインストーラに指定する

Desktop App Converter はどんな形であれ、インストーラさえ用意できれば、appx 化のための間口を用意してくれる優れものです。

ということで、究極の単純インストーラでもある、バッチファイルで実験してみました。

インストール対象は、毎度おなじみ MfcApp.exe(プログラムは、https://1drv.ms/u/s!AOVVWpjfPyA0hNsm からプロジェクトを取得してねw)。

今回は単純に実験なので、MfcApp.exe をコピーするだけの単純なプロジェクトで関連付けなどのレジストリ設定は一切ありません。

用意したバッチファイルもごく単純なもので、

@ECHO OFF
XCOPY Release\MfcApp.exe C:\Samples\MfcApp\

という内容です。

上記プロジェクトのソリューションフォルダに install.cmd という名前で用意しました。

 

まずは結論。

バッチファイルをインストーラにすることができます。

バッチファイルなので複数の処理も指定可能です。ユーザー入力を要求しない限りどのプログラムを実行しても問題なく実行できます(管理者権限を持って動作しているという前提になります)。

これで一気に敷居が下がりますね。

合わせて実験的ですが XCOPY コマンドを直接指定するなども行ってみましたが、これらは失敗してしまいました。

どうやら、システムフォルダはリダイレクトされてしまう関係でうまくいかないみたいです(フルパス指定じゃないとファイルがないって怒られる。。。)

 

そのほかの注意点は

XCOPY するだけで、ショートカットアイコンを作らないので判断材料がガクッと減ります。

そのため、プライマリアプリケーションがわかりませんので、AppExecutable が必須になります。

また、インストール先もわからないので、AppInstallPath がないとW_INSTALL_PATH_NOT_DISCOVERED という warning が出ます。

ということで、指定パラメータは

DesktopAppConverter ?Installer SampleDAC\Install.cmd ?Destination AppxOutput ?PackageName MfcApp ?AppExecutable C:\Samples\MfcApp\MfcApp.exe ?AppInstallPath C:\Samples\MfcApp ?Version 1.0.0.0 ?MakeAppx ?Verbose

という感じになります(見ながら打ち込んだのであってるかどうか自信ないわw)

これで、インストーラなんて作ったことないよ!という人でもサクッと作れますね。

ポイントは、

  1. 出力先は極力単純にする(typo防止策)
  2. 原則パラメータは全部省略できないと思うべし。

です。

あと、忘れがちですが、ここで出来上がるappx はインストーラです。当然作成環境とは異なる環境で動作するのでその点も忘れないようにしましょう。

投稿日時 : 2016年10月20日 15:10

コメントを追加

No comments posted yet.
タイトル
名前
URL
コメント