4

VB6アプリをVB.Netにアップグレードしています。「AdobeAcrobat10.0タイプライブラリ」を使用しました。ただし、.Netプロジェクトで使用すると、タイトルにエラーが表示されます。小さなテストプロジェクトを作成しました。次の行で、AcroPDDocをインスタンス化しようとすると、例外がスローされます。

Dim acroApp As Acrobat.AcroPDDoc = New Acrobat.AcroPDDoc()

アドビライブラリはにありますC:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.dll。追加すると、「Interop.Acrobat.dll」というdllがプロジェクトのobjフォルダーに配置されます。どこかでアドバイスされているように、両方のdllでRegSvr32.exeを実行しようとしましたが、次の行に沿ってエラーが発生しました。

dllがロードされましたが、DllRegisterServerの呼び出しがエラーコード0x80004005で失敗しました

私はそのエラーコードについて多くを見つけることができませんでした。

また、プラットフォームターゲットを「任意のCPU」からx86にチェーンしてみました。

編集-私はWindows7の32ビット版と64ビット版の両方で同じ問題を経験しました。

Win 7 64で、私は次のように入力しました。

C:\ Windows \ SysWOW64> zippy32 "C:\ Program Files(x86)\ Adob​​e \ Reader 10.0 \ Reader \ AcroRd32.dll"

次のエラーを受け取りました:

RegSvr32エラー-64ビットwin7

Win 7 32で、次のように入力しました。

C:\ Windows \ system32> zippy32 "C:\ Program Files \ Adob​​e \ Reader 10.0 \ Reader \ AcroRd32.dll"

次のエラーを受け取りました:

RegSvr32エラー-32ビットwin7

編集2-レイモンド・チェンの提案に従って、私はアドビのサイトで別のパスを取りました。ここここ、およびstackoverflowに関する別の質問でいくつかのスレッドを見つけました。前の2つのリンクは特に.NETを参照していませんが、これらの相互運用クラスが機能するため、または問題のdllを登録するには、AcrobatReaderのフルバージョンをインストールする必要があるようです。明日チェックしますが、お客様の環境にフルバージョンのAcrobatReaderが含まれているのではないかと強く疑っています。答えてくれたすべての人に、お時間をいただきありがとうございます。

編集3-Acrobatのフルバージョンを手に入れ、インストールしました。見よ、すべてがダンディです!

4

1 に答える 1

0

上記のように、フルバージョンのAcrobatがマシンにインストールされていない限り、dllはそれ自体を登録することを許可しません。

于 2013-02-15T09:42:18.893 に答える