私のセットアッププログラムには、登録する必要のあるCOMdllが1つあります。
win7 32ビット「標準ユーザー」でセットアッププログラムを実行しようとしましたが、管理者権限を必要とするCOMdll登録が原因で失敗しました。これを除いて、私のアプリケーションは動作するために管理者権限を必要としません。
この問題を解決する方法はありますか?管理者以外のユーザーに対してアプリケーションを実行する必要があります。
私のセットアッププログラムには、登録する必要のあるCOMdllが1つあります。
win7 32ビット「標準ユーザー」でセットアッププログラムを実行しようとしましたが、管理者権限を必要とするCOMdll登録が原因で失敗しました。これを除いて、私のアプリケーションは動作するために管理者権限を必要としません。
この問題を解決する方法はありますか?管理者以外のユーザーに対してアプリケーションを実行する必要があります。
ユーザーごとの登録 (HKCU への reg.exe インポートなど) には、管理者は必要ありません。管理者以外の ActiveX コントロールを参照してください
COMコンポーネントは、使用するために登録する必要はありません。
CoRegisterClassObjectを使用して、オブジェクトのIClassFactoryインターフェイスを登録できます。このメソッドは、COMオブジェクトを実装する場合に機能します。
LoadLibraryを呼び出してdllへのDllGetclassObjectエントリポイントを取得し、クラスファクトリを直接使用してオブジェクトを作成できます。
COMdllをアセンブリとして公開する単純なXMLファイルを作成できます。アプリケーションの依存アセンブリとしてアセンブリを追加すると、RegistrationFreeComが作成されます。