忍者ブログ

ひっそり開発室

Webメインでフリーのシステム開発をやっています。 思いつくままに書いていますので 間違い等はおもむろに突っ込んでもらえれば助かります。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

現在、新しいコメントを受け付けない設定になっています。

はじめての InnoSetup

VBの依頼が来たんですが、
ひょんなことからインストーラーもお願いしますとか、
普通にインストーラー作るの面倒だし、
InnoSetupを使ってさらっと作ろうという方向で考えていたのだけれど・・・

案の定、お客さんの要望がどんどん膨らんでいって、
デフォルトのテンプレートだけじゃとても対応できないという。
1.シリアルの入力画面
2.ライセンスコードの入力画面
3.シリアル+ライセンスの組み合わせのチェック
4.入力されたシリアル+ライセンスの保存
5.他、画面の文言の調整

InnoSetupについては完全に初心者なもので
Inno Setup 日本語デベロッパーズ
Inno Setup Help
等のページを見ながらで
最初はほんとよくわからん状態。
日本語デベロッパーズだけじゃ
まったく情報が足らなくて理解できなかったのだけれど、
ひとまず InnoSetup Help の Setup Script Sections が大事でした。
それぞれのセクションを簡単に説明すると
----
[Setup] 基本設定
[Tasks] セットアップ時にショートカット等を作成する設定
[Files] インストールするファイルの設定
[Languages] セットアップ表示言語の設定
[Messages] セットアップ画面のメッセージ文字列の設定
[Registry] セットアップでレジストリに入力する設定
[Run] セットアップ後プログラムを実行する設定
[Code] セットアップ時に動作するプログラム設定
----
4は[Registry]で保存する形にしてしまえば解決かしら。
5も[Messages]で対応ができそう。
1-3は設定だけでは厳しそうなので
[Code]セクションで対応するしかないようです。

当初、シリアルとライセンスコードは
ランダムの英数字だけという認識でいたのですが、
シリアルはハイフンで2つに分けたものにして、
ライセンスはハイフンで4つにわけて入力させたいとか。
それだけならともかく、1のボックスで
ハイフンも一緒に入力する形でいいのかと聞いてみたらNGで
ハイフンをボックスの中に設置するか
ハイフンで区切るところでボックスを分けてほしいみたいな。
InnoSetupでできることもろくに把握してないのに無茶振りだわー

[Code]セクションはPascalでコーディングできます。
むかーしむかーしあるところでDelphiなんてさわっていたのが、
今頃役に立つとかなかなかの驚き。

しかしながら、日本語のサイトでInnoSetupをどんだけ探そうが
サンプルコードなんて出てこない始末。
仕方ないからHelpと英語サイトのサンプルを見ながら組み立て
サンプルを見てすぐわかったのは
----
TInputQueryWizardPage テキストボックス
TInputOptionWizardPage ラジオボタン
TInputDirWizardPage ディレクトリ選択ボックス
TInputFileWizardPage ファイル選択ボックス

上記のクラスでインストーラー画面のページに
それぞれ入力欄を表示することができるようになっている模様
ただし、テキストボックス・ラジオボタン等を
組み合わせて表示することは無理なので、
さらにカスタムしたいなら TWizardPage クラスを利用して、
自分でインストーラページを作成する必要があるようだ。

とりあえず、ある程度できそうなところまでは理解して、
ほっとしたところで・・・・え・・・・?
サンプルソースが見たいって?
今度気が向いたら載せます。
PR

コメント

お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字

ブログ内検索

カレンダー

03 2025/04 05
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

プロフィール

waggy
PHP / JavaScript を中心にプログラム開発を行っています。
お客様のご要望次第で Access Delphi等も触ることがあります。

最新コメント