質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

1回答

1067閲覧

VisualStudioで作成した実行ファイルを正常に動作させる方法

3203teratail

総合スコア0

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2021/06/03 16:46

前提・実現したいこと

VisualStudio2017、C++、OpenCVを用いて、簡単な画像処理プログラムを作りました。
実行ファイルをダブルクリックすることで、プログラムを実行するといったことを実現させたいです。

発生している問題・エラーメッセージ

VisualStudioの表示をReleaseのx64にして、ローカルWindowsデバッカーのボタンを押したところ、正常に動作しました。次にソリューションのビルドを行い、実行ファイルが作成されていることを確認して、別のフォルダに移し、実行ファイルをダブルクリックしました。しかし、一瞬画面が表示されて落ちてしまいました。

dllファイルをリンクさせればよいという情報を得ましたが、どのdllファイルをどのようにしてリンクさせればいいか分かりませんでした。

補足情報

Windows10です。
プログラムでは、opencv.hppとwindows.hとdirect.hをインクルードしました。

初めて質問するので、分かりにくい点などありましたら申し訳ありません。
助言よろしく願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jbpb0

2021/06/03 23:11 編集

> 別のフォルダに移し、実行ファイルをダブルクリック というやり方ではなく、コマンドプロンプトを起動して、 cd 実行ファイルがあるディレクトリパス をしてから、そのコマンドプロンプト上で実行ファイルを実行してみてください そうしたら、おそらく何かエラーメッセージが表示されると思います 必要なdllが見つからない場合は、そこに表示されます
yominet

2021/06/04 03:08

環境パスか、手動配置か、どちらかしてないとVS上からも起動できないはず 簡単な内容ということとwindows.hを追加したことから推測するに コンソールアプリを作成し、VS上では画面が止まってくれてるが実行ファイルからは即終了してしまってるのではないでしょうか?
dameo

2021/06/04 19:34

皆さんおっしゃるように、今の状況を知るのにはコンソール(コマンドプロンプト/Powershell)から実行してメッセージを見るのが一番いいでしょう。まずはそこからです。 原因としても質問者さん自身が言ってたり、回答にあるとおり、DLL不足である可能性が濃厚です。 確認方法は 上に書いたコンソールからの実行で、その環境に足りないファイルを調べたり、それ以外の原因でないことを確認する か ツールを使用して、.exeの実行に必要な.dllを全て芋づる式に探す のが最初なのでしょうね。 ただし、本来は自分で作った.exeの依存ファイルや、依存.dllの依存.dllが分からないということは(あってはなら)なく、VS自身が実行できている以上、PC上のどこかには必ず存在もしています。 そしてVSの一般的なプロジェクトは依存ファイルを出力先のフォルダに集めるように構築され(るように作り)ます。 なのでまず質問として書かれるべきは 「別のフォルダに移し」たのは.exeファイルだけなのか? です。 もしそうなら、同じフォルダにある.dllを全て移してみてください。
guest

回答1

0

"おそらく"ですけど必要なDLLのパスが通っていないと思われます。
DLLを~.exeと同じdir.もしくは環境変数PATHに設定されたdir.に置いてください。

投稿2021/06/03 23:06

episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問