私のプロジェクトの 1 つに、C++ DLL を使用する c# アプリケーションがあります。現在、クライアント PC では、C# で使用できるように、C++ DLL を COM コンポーネントのレジストリに登録しています。
リンクhttp://msdn.microsoft.com/en-us/library/ms973913.aspxで、Microsoft から利用可能な Reg Free ソリューションがあることを NET で知りました。
しかし、読んだ後、私のアプリケーションアーキテクチャは次のように異なるため、あまり手がかりが得られませんでした
- CPForms.dll と Rules.dll の 2 つの C++ dll があります。
- Rule.dll は CPForms.dll 内に含まれています
- CPForms.DLL を使用している ConsumeForm.dll と言う C# dll が 1 つあります。
- ConsumeForm.dll を使用している別の C# Exe があります。
クライアントは C# Exe のみを開いており、ConsumeForm.dll を呼び出しています。これはさらに C++ フォーム (UI) を表示する CPForms.dll を呼び出しています。ユーザーが内部で C++ Rules.dll を使用してそのボタンをクリックすると、ボタンの検証があります。現在、両方の C++ dll をレジストリに登録しています。
Rule.dll は頻繁に変更され、管理者アカウントを使用して何度も登録を解除したり再登録したりしたくないため、クライアントは Rule.dll を RegFree インストールとして参照することだけを望んでいます。
それ以外の場合、そのクライアントは CPForms.dll の登録で問題ありません。
私の質問は、マニフェスト ファイルを生成する方法です。そして、それは私のシナリオでどのように機能しますか?