2016-04-01 14 views
2

opencv-2.4.9.exeをダウンロードしてD:\opencvというディレクトリに開きました。OpenCVプログラムは別のコンピュータでは動作しません

その後、私はVisual Studio 2013とラッパーDLLを備えたOpenCVライブラリを作成しました。このラッパーDLLをC#Windowsアプリケーションで使用しました。それは私のコンピュータ上で完璧に動作しました。しかし、別のコンピュータでコピーして実行するとエラーになります。このエラーは、OpenCV DLLが見つからないことを示しています。ここで

私が使用したソースです:

https://marcomuraresearch.wordpress.com/2015/04/16/install-opencv-visual-studio/comment-page-1/#comment-181

https://drthitirat.wordpress.com/2013/06/06/use-opencv-c-codes-in-a-vc-project-solution-of-creating-a-managed-clr-wrapper/

は、どのように私はOpenCVのが存在しない場合でも、私のプログラムは、任意のコンピュータ上で実行することができますか?

+1

ラッパーDLLとOpenCV DLLの両方を持ち越しましたか? – RyanP

答えて

0

DLLラッパーを作成する場合は、次の2つの方法があります。OpenCV DLLをリンクするか、OpenCVを静的ライブラリとしてDLLにコンパイルするかを選択できます。おそらくあなたは現在、OpenCV DLLとリンクしています。つまり、DLLラッパーは、OpenCV DLLが読み込まれてDLLからコードを実行できるようにするためです。あなたのシステムにOpenCVがインストールされていれば、あなたのOSのパスにOpenCV DLLがある可能性があるので、あなたのコンピュータ上でOpenCV DLLを見つけることができます。別のコンピュータに移動すると、失敗することがあります。あなたには2つの選択肢があります。

  1. OpenCV DLLとともにDLLを配布します。 (そのコンピュータに何か別のものをインストールする必要はありません。すべてのDLLが実行可能ファイルのディレクトリにあることを確認してください)。
  2. すべての適切な実行可能OpenCVコードがDLLに含まれるように、DLLラッパープロジェクトに静的ライブラリとしてOpenCVをコンパイルします。これはあまり一般的ではありませんので、もう少し努力する必要がありますが、あなたのお気に入りの検索エンジンでこれを行う方法については、おそらくいくつかの参考資料があります。
+0

OpenCV DLLと一緒に私のDLLを配布しようとしました。問題を解決しました。 – SSAVAS

関連する問題