1

私のセットアッププログラムには、登録する必要のあるCOMdllが1つあります。

win7 32ビット「標準ユーザー」でセットアッププログラムを実行しようとしましたが、管理者権限を必要とするCOMdll登録が原因で失敗しました。これを除いて、私のアプリケーションは動作するために管理者権限を必要としません。

この問題を解決する方法はありますか?管理者以外のユーザーに対してアプリケーションを実行する必要があります。

4

2 に答える 2

3

ユーザーごとの登録 (HKCU への reg.exe インポートなど) には、管理者は必要ありません。管理者以外の ActiveX コントロールを参照してください

于 2012-06-21T00:06:33.110 に答える
1

COMコンポーネントは、使用するために登録する必要はありません。

CoRegisterClassObjectを使用して、オブジェクトのIClassFactoryインターフェイスを登録できます。このメソッドは、COMオブジェクトを実装する場合に機能します。

LoadLibraryを呼び出してdllへのDllGetclassObjectエントリポイントを取得し、クラスファクトリを直接使用してオブジェクトを作成できます。

COMdllをアセンブリとして公開する単純なXMLファイルを作成できます。アプリケーションの依存アセンブリとしてアセンブリを追加すると、RegistrationFreeComが作成されます。

于 2012-07-03T20:59:14.327 に答える