2012-04-13 12 views
2

QBFCインターフェイス経由でQuickbooksと通信するC#Winformsアプリケーションを最近継承しました。アプリケーションには、COMサーバーInterop.QBFC7.dllへの参照が含まれています。このアプリケーションは、テスト環境およびクライアントのいくつかの環境で正常に動作します。しかし、昨日私は新しい顧客のシステムにインストールしようとしましたが、次のエラーが発生しました。Quickbooksを解決する方法インターフェイスエラー:QBFCエラー「ファイルまたはアセンブリInterop.QBFC7またはその依存関係の1つを読み込めませんでした」

ファイルまたはアセンブリのInterop.QBFC、バージョン= 8.0.0.87、Culture = neutral、PublicKeyToken =を読み込めませんでした。 .. 'またはその依存関係の1つ。システムは、指定されたファイルを見つけることができません。

私は、このアプリケーションをさまざまなバージョンのQuickbooks(つまり、QuickBook Pro、Premier、Enterprise 2008とEnterprise 11.0の間)で実行している顧客がいることは知っています。私の知る限り、これはEnterprise 12.0を持つこのアプリケーションを展開しようとした最初の顧客です。ノー成功を収めて問題を解決するには、次を試みた

1)IntuitのデベロッパーネットワークサイトからQBFC7_Installerをインストール
2)Intuitのデベロッパーネットワークサイトから
をQuickbooksのSDK 10インストーラをインストールします。 3)ファイルシステムにInterop.QBFC7.dllファイルが存在することを確認しました。
4)COMオブジェクトInterop.QBFC7.dllをコマンドプロンプトから手動で登録しようとしました:regsvr32 Interop.QBFC7.dll(これも失敗し、Windowsはオブジェクトを見つけることができない旨のエラーを返します)。

この問題を解決するために他にも提案やフィードバックがありますか?異なるオペレーティングシステム(Windows Server 2008、Windows 7、Windows Vistaなど)を実行しているサイトで、3つの異なるマシンで同じエラーが発生しますか?また、x86と64ビットの両方の設定でコンパイルしようとしても役に立たない。

ご協力いただきありがとうございます。

答えて

0

まず、x86ビルドのみをターゲットにする必要があります。 Any CPUまたはx64をターゲットにすると、QuickBooks SDKは動作しません。あなたの主な問題は、あなたがQBFCの間違ったバージョンを探しているということです。

Could Not Load File or Assembly 'Interop.QBFC, Version=8.0.0.87, Culture=neutral, PublicKeyToken=...' or one of its dependencies. The system cannot find the file specified

QBFC7ではなくQBFC7です。 QBFC8インストーラーで問題を解決できるはずです。

のQuickBooksのバージョンは、(そのことについて、または7)QBFC 8以降、違いを作るべきではありませんあなたがインストールするセットアッププロジェクトを使用してになります2008およびEnterprise 11または12

で動作しますあなたのアプリケーションは将来この問題を回避するために使用します。セットアッププロジェクトは、QBFC依存関係を自動的に検出する必要があります。この問題が発生したら、セットアッププロジェクトのSearchPathプロパティに移動し、マシンにインストールされているSDKからMergeModuleディレクトリを追加します。一度これを行うと、QBFCとXercesのマージモジュールがプロジェクトに自動的に依存関係として追加されます。もちろん、コードをQBFCのより新しいバージョンに更新する必要もありますが、それはおそらくいずれの場合でも良い考えです。

+0

お返事ありがとうございます。参照の「特定のバージョンを使用」プロパティをtrueからfalseに変更することで、この問題を解決できました。最近、別の開発者がQBFC4からリファレンスを7に変更して、新しいインターフェースの追加機能にアクセスし、明らかにそのプロパティーを変更するのを忘れてしまった。 – Grasshopper

関連する問題