3

C# プロジェクトからアクセスする必要のある ActiveX コンポーネントがいくつかあります。

Visual Studio の [参照の追加] ダイアログを介してそれらをインポートできます。これにより、ラッパー クラスも自動的に生成されます。(すなわちABCLibAxABCLib)

TLBIMP /primary個々の OCX ファイルで実行することにより、プライマリ相互運用機能アセンブリを手動で生成できることはわかっていますが、Visual Studio ユーザー インターフェイスを使用しない限り、ActiveX ラッパーを生成する方法が見つかりませんでした。

.NET SDK で ActiveX ラッパーを生成するコマンド ライン バージョンはありますか?

AxABCLibTLBIMP から取得した PIA から手動でバージョンを生成したい。(つまり、名前空間の設定、dll ファイル名の出力など) 可能ですか?

4

1 に答える 1

7

あ、TLBIMPの入ってるフォルダ見てたら出てきた。

と呼ばれていAxImpます。

C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\AxImp.exe

したがって、基本的に、独自のカスタマイズされた名前空間で PIA DLL を生成するには、次のようにします。

  1. OCX を登録する

    regsvr32 abc.ocx

  2. ocx を実行して、厳密な名前のキー ペアを生成します。

    sn -k

  3. TLBIMP を実行し、目的の名前空間を指定します

    tlbimp abc.ocx /primary /keyfile:abc.snk /out:abc.dll /namespace:MyNamespace

  4. ocx で AXIMP を実行し、rcwスイッチを使用して手動で生成された独自の PIA DLL を使用します。

    aximp abc.ocx /source /rcw:abc.dll

それはそれを行う必要があります。

ただし、インポートされる古い TLB にはいくつかの問題があります。それを修正する方法はまだわかりません。

于 2009-01-15T09:25:15.857 に答える