4

最終結果が必要なものから始めます。 お客様は、インストール中にクリップボードから入力ボックスに正しい形式のプロダクトキーを貼り付けることができます。

私が今いる場所: 私たちはWiXを使用してMSIを作成しています。現在、正常に機能するマスクされた編集コントロールを使用しています。「次へ」ボタンを押すと、カスタムアクションを使用してプロダクトキーの検証がすでに実行されています。プロダクトキーの検証は同じままである必要があり、入力方法のみが問題になります。

私は最終日、これを達成するための可能な方法を研究し、いくつかのアイデアを持っていますが、それらのいずれかが機能するかどうかはわかりません。MSIにはそのイベントをキャプチャする方法がないことがわかっているため、貼り付け時にカスタムアクションをトリガーしようとすることはすでに除外しています。

だから、私の考えは「クリップボードから貼り付ける」ボタンです。これにより、クリップボードアイテムをキャプチャし、プロダクトキー(簡単な部分)のように見えるかどうかを判断し、それを編集コントロールに貼り付けるカスタムアクションがトリガーされます。私が編集コントロールと言っていることに注意してください。マスクされた編集コントロールでそれがまったく可能かどうかはわかりません。また、標準の編集コントロールでも機能するかどうかはわかりません。ライセンステキストが表示されているかどうかを確認するカスタムアクションがすでにあります。これは、ライセンスが存在するウィンドウと「richedit」クラスウィンドウを検索し、スクロール位置を取得することで実現されます。この方法で編集コントロールをクリップボードキーに設定できるのではないかと思っていましたが、これが機能するかどうかはわかりません。

自分のUIコントローラーを作成する可能性についてはすでに読んだことがあります。私はこれが大きな仕事であることを知っていますが、この段階では何​​も除外されていません。どこから始めればよいのかわかりません。

私の最終的なアイデアは、どのように実装できるかについては考えていませんが、マスクされた編集コントロールを標準の編集コントロールに変更することです。これにより、カスタムアクションを使用して検証しなくても、明らかに完全なプロダクトキーを貼り付けることができます。それは正しい形式ですが、それ以上先に進むことはできません。ただし、顧客がプロダクトキーを手動で入力する場合は、ダッシュを自動的に追加する必要があります。

誰かが私のアイデアの実現可能性とそれらを実装する方法、または私の目標を達成するための他の方法に光を当てることができますか?

4

1 に答える 1

1

私は当初考えていた「クリップボードから貼り付け」オプションを使用してこれを行うことができました。フォームにボタンを追加しました。このボタンは、クリップボードにクエリを実行し、成功した場合はインストーラーに2つのプロパティを設定するカスタムアクションを呼び出します。1つはフォーマットされたプロダクトキーを含み、もう1つはクリップボード操作が成功したかどうかを示す基本的なプロパティです。マスクされた編集コントロールはプロダクトキープロパティにリンクされており、コントロールを更新することで、

<Publish Event="Reset" Value="0" Order="3">ClipboardSuccess = 1</Publish>

プロダクトキーは、マスクされた編集コントロールに入力されます。

于 2012-10-08T07:50:46.233 に答える