6

VisualStudioでSWI-Prologとインターフェイスするプログラムがあります。以前はVS2010(XP)を使用していましたが、すべて正常に動作します。次に、VSをVS2012(Win7)にアップグレードしましたが、コードに問題があります。

次のコードになると:

PlEngine.Initialize(param);

常に次の例外メッセージが表示されます。

The specified module could not be found. (Exception from HRESULT: 0x8007007E)

アップグレードプロセスのために、私が犯した間違いや、可能であれば私がしなければならない変更を誰かが見つけることができますか?

私のコードに関する追加情報:

  • 最新のswiPLCsライブラリ(バージョン:1.1.60301.0)を使用しました
  • 上記のコードの「param」は次のとおりです。string[]param= {"-q"、 "-f"、@ "c:\ program files(x86)\ pl \"};
  • パス環境変数をc:\ program files(x86)\ pl \およびc:\ program files(x86)\ pl\binに設定しました
  • コードに次の設定があります:Environment.SetEnvironmentVariable( "SWI_HOME_DIR"、Global.g_prologLocation);
  • 私はへの参照を持っていました:swiPLcs.dll
  • すでにSWIProlog64ビットを使用しようとしましたが、それでも同じ問題が発生します

どんな助けでも本当にありがたいです。

どうもありがとう

4

1 に答える 1

5

私は最終的に自分で答えを得ました。VS2010 とは異なり、VS2012 では SWI-Prolog パッケージを VS2012 に追加する必要があるようです。そこで、Nuget を使用して SWI.Prolog パッケージを追加します。どのように?

参照: https://nuget.org/packages/SWI.Prolog

そして、VS2012 は SWI.Prolog を認識します。

とにかくありがとう

于 2013-01-28T13:48:56.267 に答える