- PR -

インストーラ実行時のユーザ認証

1
投稿者投稿内容
優希
ベテラン
会議室デビュー日: 2003/08/12
投稿数: 92
投稿日時: 2006-07-04 14:41
お世話になっております。

VS.NET 2005 (C#)にて開発を行なっております。

セットアッププロジェクトを作成していて、
インストール時にユーザ認証を行い、
合致すれば処理を続行、というような処理にしたいと思っています。

このような処理は、
プロパティの設定で可能なのでしょうか?

また、プロパティの設定以外で
画面追加などが必要になる場合は、
アドバイスを頂けないでしょうか?

宜しくお願い致します。
とっちゃん
大ベテラン
会議室デビュー日: 2005/07/19
投稿数: 203
投稿日時: 2006-07-04 15:46
とっちゃんです。
引用:

優希さんの書き込み (2006-07-04 14:41) より:

セットアッププロジェクトを作成していて、
インストール時にユーザ認証を行い、
合致すれば処理を続行、というような処理にしたいと思っています。

このような処理は、
プロパティの設定で可能なのでしょうか?

また、プロパティの設定以外で
画面追加などが必要になる場合は、
アドバイスを頂けないでしょうか?


ユーザー認証にどういうものを想定しているのかわかりませんが、
プロパティで設定というようなレベルでは実現できないと思います。

プロパティを弄くって設定できるのは、
Windows Installer が標準で備えているシリアル番号の検査機構しかありません。
詳しくは、SerialNumberTemplate プロパティ の説明を見ていただきたいと思いますが
たいしたことは出来ません。

どこかのサーバーにつないだり、自社のシリアル発行規定に従って
クライアント内部の認証機構を設けるという場合は、ここの設定を
自動処理する代わりに、自ら同じような検証機構を用意して設定することになります。
こちらは Custom Action とよばれる、VSセットアップのカスタム動作とは違う
Windows Installer 用の専用DLL(Native C/C++ で作成します)で実装することになります。

画面については、シリアル番号の入力部分でまかなえれば、プロパティ設定だけで
済みますが、Custom Action を用意する場合は、msi をビルドした後、
Orca などを利用して、実装を弄くることになります。

_________________
// とっちゃん(高萩 俊行)@わんくま同盟
// とっちゃん’Blog
// MS-MVP for Developer Tools - Visual C++
// WindowsInstallerの話題はhttp://www.freeml.com/msiまで
優希
ベテラン
会議室デビュー日: 2003/08/12
投稿数: 92
投稿日時: 2006-07-04 16:37
ご返答、ありがとうございます。

「シリアル番号の検査機構」の方では、
ラベルが"パスワード"などと変更できないので、
控えたいと思います。


「Custom Action」のほうはもう少し
調べてみたいと思います。


私もいろいろやってみて、
また教えて頂きたいことがあります。

セットアッププロジェクトを右クリックして
「View」-「Custom Actions」を開いて
"TextBboxes"を追加してみたのですが、
このテキストボックスに入力した値を
「次へ」ボタンを押したタイミングで取得する方法はありませんか?
とっちゃん
大ベテラン
会議室デビュー日: 2005/07/19
投稿数: 203
投稿日時: 2006-07-04 18:52
とっちゃんです。
引用:

優希さんの書き込み (2006-07-04 16:37) より:

「シリアル番号の検査機構」の方では、
ラベルが"パスワード"などと変更できないので、
控えたいと思います。



Custom Action も同様ですが(繰り返しますが、VS内部で出来るカスタム動作(英語版ならCustom Actions)とは違うものです)
出来上がったmsiの編集で変更することは可能です。
ただし、それが望みのものであるかはわかりませんが(^^;

引用:

セットアッププロジェクトを右クリックして
「View」-「Custom Actions」を開いて
"TextBboxes"を追加してみたのですが、
このテキストボックスに入力した値を
「次へ」ボタンを押したタイミングで取得する方法はありませんか?



こちらは、日本語版ではカスタム動作となっている部分ですね。
どんな名前をつけてもコントロールにはなりませんので、次へボタンなどとは別の扱いです。
詳しくは、カスタム動作 のあたりを一度お読みください。

独自の画面作成もチュートリアルなどで出ています。
インストーラの画面は通常のアプリケーションとは異なりかなり制約がある上、
Visual Studio のセットアッププロジェクトの場合、原則カスタマイズ不可となっています(もちろん作ってから自分で弄くることは可能)。

もし、英語が苦ではないのであれば、WiX などの利用を検討しても良いかもしれません。
こちらについての日本語でのディスカッションは、WindowsInstaller/WiX/InstallShield メーリングリストで行なっています。

_________________
// とっちゃん(高萩 俊行)@わんくま同盟
// とっちゃん’Blog
// MS-MVP for Developer Tools - Visual C++
// WindowsInstallerの話題はhttp://www.freeml.com/msiまで
優希
ベテラン
会議室デビュー日: 2003/08/12
投稿数: 92
投稿日時: 2006-07-04 19:11
ご回答、ありがとうございます。


「カスタム動作」や「WindowsInstaller/WiX/InstallShield メーリングリスト」あたりを、
一度じっくり読んでみようと思います。

とっちゃんさん、ありがとうございました。
解決した際は、また書込みさせて頂きます。
1

スキルアップ/キャリアアップ(JOB@IT)