2016-07-05 3 views
0

Installshieldによって作成されたビルド済みのセットアップでデータを追加する方法はありますか?既にビルド済みのinstallshield setup.exeにプロダクトキーを追加

私が必要とするのは、各製品キーごとに個別のコピーを作成する必要なく、同じセットアップ実行ファイルに異なる製品キーを追加することです。

Installshieldを使用してこれを達成する方法はありますか?

+0

トランスフォームはありますが、実際にトランスフォームを生成できるかどうかは、パッケージに署名しているかどうかによって異なります。あなたですか? –

+0

いいえ。トピックに関するさらに詳しい情報を提供できますか?私は研究を行ったが、Orcaと呼ばれるmsiインストールのためのツールしか見つからなかった。 –

+0

InstallShield(少なくともプロフェッショナル/プレミアエディション)はトランスフォームを作成できます。新しいファイルを参照してください。しかし、もっと重要なことに、これらのプロダクトキーは何を変更する必要がありますか?レジストリキーに値を記録するだけですか?エンドユーザーから有効なプログラムが提供されるまでプログラムが動作しないようにしますか?他に何か? –

答えて

1

InstallShield setup.exeを使用しているため、最も簡単な方法はおそらくsetupini.exeツールを使用することです(InstallShieldの一部の以前のバージョンではこれは別の「サポートされていない」ツールでした)。 )。 MSIパッケージに渡されたコマンドラインを変更して、キーを含むプロパティを含めることができます。プロパティを使用してPRODUCTKEYそれは次のようになります。これは意味のあるものにするには、このプロパティを使用してインストーラで何かを含める必要があります

SetupIni.exe "<path to>\MySetup.exe" Startup CmdLine PRODUCTKEY="12-34-56" 

。最も単純なのは、値(または値のデータ)にPRODUCTKEYプロパティへの参照を含むレジストリキーです。このようになります.regファイル、として表される:PRODUCTKEYは公共の財産であることを

[HKEY_LOCAL_MACHINE\Software\My Company Name\My Product Name\Version] 
"ProductKey"="[PRODUCTKEY]" 

は注意(その名前が何小文字を含まない)、およびSecureCustomPropertiesプロパティに記載されています。同様に、これはセキュアではなくアドバイザリとみなされるべきであることにも注意してください。たとえば、顧客に一致するコードを入力するように要求して製品のライセンスを取得する場合はしないでください。この手法は、インストールを記録するノウハウを持っているか、またはタスクマネージャを使ってコマンドラインを見つけるためにも、キーを顧客に提供します。

プロパティの設定が不十分な場合はcreating a transformとし、setupini.exeを使用して自動的に適用するように設定することもできますが、それ以降は顧客に変換されてしまうという問題もあります彼はおそらく今日ただ一つのファイルしかダウンロードしないでしょう。これは2つのファイルを必要とします。

+0

これはどのように動作するのか理解しました。しかし、InstallShieldでは、レジストリビューに新しいレジストリキーを作成することはできません。 「宛先コンピュータ」では、右クリックでコンテキストメニューは表示されません。残念ながら私はInstallShield 10.5 Premier Editionを使用しています。 この問題で私を助けてもらえますか? –

+0

これはうまくいきません(正しい場所で右クリックしていますか?)が、ダイレクトエディタを使用して同じ効果を得ることができるはずです。必要に応じてコンポーネントを追加し、レジストリテーブルに行を追加します。構文は簡単です。 –

関連する問題