• ベストアンサー

他人のプログラムを実行すると、「実行できません」のエラーが出ます

VisualC++初心者です。 移植のため、他人のプログラムをそのまま貰って解析しろと言われています。 ところが、そのままビルドして実行しても、ビルドでエラーは出ないのですが、「プログラムを実行できません」メッセージが出てしまいます。ステップ実行しようとすると、「*.exeファイルが見つかりません。」エラーが出ます。 リソースでSDIのDialogBoxを持っていますが、ソースはすべて拡張子.cで.cppファイルは有りません。 とっかかりが掴めず困っています。 どうすれば実行できるようになるでしょう?

質問者が選んだベストアンサー

  • ベストアンサー
  • Ponn
  • ベストアンサー率25% (14/54)
回答No.4

メニューの 「プロジェクト(&P)」から、「設定(&S)」を選択して、「デバッグ」タグをクリックして、「デバッグセッションの実行可能ファイル(&E)」があっているかどうか確認してみてください。普通はデバッグフォルダの中に*.EXEファイルがあると思いますので、そこも確認してみてください。

yamahati
質問者

お礼

ありがとうございました。若干自己フォローです。 ビルドが出来るのに、設定されたexeファイルができないので悩んでいました。 もともと、Aフォルダにあるワークスペースでビルドすると、勝手にBフォルダを作成してA,B両方で動作するような複雑なプログラムだったのです。 指摘された「プロジェクト(&P)」の直下に、「アクティブプロジェクトに設定 1.B 2.A」というメニューがありました。 今まで気にしていなかったのですが、今回デフォルトでないBを選択してビルドすると、exeファイルが作成されました。 それにしてもVCの実務ベースプログラミングは、入門書との差が有り過ぎるように思います。先が思いやられる。

その他の回答 (3)

  • when
  • ベストアンサー率41% (7/17)
回答No.3

素人なのでよく分かりませんが、パスとかが通っていないのではありませんか? MS-DOSプロンプトを開いてそのディレクトリに移動して直接実行してみてはいかがでしょうか? ところで、Hello, World!とかの普通のプログラムもできないのでしょうか? それができないと、コンパイラとかの問題ではないと思います。 読んでいて、ふとそんな感じがしましたので。ぜんぜん的外れだったらごめんなさい。

  • senjyu
  • ベストアンサー率25% (7/27)
回答No.2

こんにちは。 その他人のプログラムは実行型ですか(exe)ですか? それとも、DLLもしくはActiveX(OCX)の形ですか? exe型の場合は、ビルドが成功しているのであれば、どこかに実行ファイルが できているはずですから、プロジェクトの設定のデバッグ欄で実行可能ファイルの パスを修正してください。 DLLもしくはActiveXの場合は、他のプログラムに付随して動作しますので、 そのままでは動きません。 詳細を元の開発者に聞きましょう。 ただ、DLL、ActiveXの連携動作がわかっていないと理解しがたいときがありますのでまずはそちらの勉強をしましょう。 では。

  • Ponn
  • ベストアンサー率25% (14/54)
回答No.1

移植のためということですよね。 何から、Windowsへの移植かは分かりませんが、普通そのままビルドできたからといっても動かないのでは? プログラムを見て、仕組みを理解してから、VC++でWindows用に書き換えられたら如何でしょう。

yamahati
質問者

補足

C++で書かれたものを読んで動かして別の組み込み用言語に移植する予定です。 もっと一般的な質問に言い換えます。 例えば、C言語で書かれた参考書のサンプルプログラムを、そのままVisualC++に書き写して実行しようとしても、同じような現象になります。 きっと私が初心者で対処の仕方が判らないだけだとは思うのですが。 WinMainのエントリーポイントを作らなければいけないとか、そういうことかなと漠然と考えているのですが、具体的対処法が思い付きません。

関連するQ&A

  • ソースが数文字違うプログラムの同時?ビルド

    今VisualC++でプログラムを作成しているのですが、 ソースが数文字違う複数のプログラムを一度にビルドし、それぞれ別のフォルダに保存することは可能でしょうか? 具体的には、基本的な動作は同じプログラムなのですが、 1.txtというファイルがリソースAとしてビルドされたプログラムをフォルダ「1」に。 2.txtというファイルがリソースAとしてビルドされたプログラムをフォルダ「2」に。 3.txtというファイルが・・・ ・ ・ ・ 1000.txtというファイルがリソースAとしてビルドされたプログラムをフォルダ「1000」に。 のように複数の、微妙に違うプログラムを一度に作成することは可能でしょうか? もしくは、このようなプログラムを作成しようとした場合には一つ一つ手動で作成していくしかないのでしょうか?

  • 付属プログラムを引用してもエラーが起きて困っています。

    参考書に書かれてあるプログラムを書き写して練習してますが、 ビルドしたところ、参考書と同じなのにビルドエラーが起きます。 ちなみに、今参考にしているのは、 猫でも分かるゲームプログラミングです。 試しにその付属CDのプログラムを 外部ファイルの画像を描画するプログラムのcppごと まるまる移してもなぜかビルドエラーになります。 開発環境はVisual C++です。 開発環境が違えば製品についてくるプログラムでもエラーが 起きるのでしょうか? あと、猫でも分かるゲームプログラミングの他にC言語逆引き大全を持ってます。

  • C++プログラム最後まで表示できません

    かけだしです。VisualC++.NET2003,WindowsXP SP2 Win32projectのコンソールアプリケーション空のプロジェクトにての作成です。 簡単な文字列をキーを押すごとに順番で10種類ぐらいずつ表示するプログラムを始めて作ったのですが、プロジェクトを開き「ビルド」→「ソリューションのビルド」→「デバックなしで開始」すると最後の表示までいくのですが、出来上がったファイル(「デバック」内の実行ファイル)をデスクトップに落として実行すると最後のワンステップ前で消えてしまいます。なぜだかわかりません。よろしくお願いします。

  • 実行するファイルを替える

    Visual studio 2012 Express を使用して、プロジェクトHello内に、.cppファイルを三つ作成しました。main ,_tmain ,_tWinMainを書いたプログラムですが、 _tmain ,_tWinMainのファイルを選択し、ビルドとデバックを行っても、mainのファイルが実行されてしまいます。 _tmain ,_tWinMainのファイルを実行する方法を教えてください。 お返事お願いします。

  • VisualC++.netの実行ファイル(.exe)

    VisualC++.netを今日インストールしたばかりです。どうにかこうにかプログラムを実行してみたのですが、デバッグが開始されず、実行ファイル(.exe)も作成されません。VisualC++.6.0で作ったプログラムで、エラーも出なかったものなので、プログラムに問題はないはずなのですが・・・一体何が問題なのでしょうか。誰か教えて下さい。本当に困っています・・・

  • ステップ実行ででは出ないエラーが実行時にでる

    Visual studio.NET 2010上C#ででコーディングしています。 ステップ実行では出ないエラーが通常の実行時(Debugビルド)に出ます。 しかも、実行ごとに場所が違っていて困っています。 ステップ実行では出ないエラーが出る要因は一般的にどんなのが考えられるでしょうか? システムはWindowsフォームのボタンクリック時に、ローカル処理のみのバッチ処理に近いものですが、 ローカルに保持したDBアクセス(特殊なデータベース)があります。

  • プログラムが実行できないです↓ 初心者です↓

    学校の授業でプログラミングを勉強しているのですが、いまいち理解できません。 家でも勉強できるように、学校でCDを借りてVisual studio2003をインストールしました。 しかし、家でプログラムを作って実行させようとしたら、「ビルド」 とう項目がなく、プログラムを実行できませんでした。 学校のパソコンもバージョンは2003です。 学校では、 「プログラムを作成→ファイルを保存→既存項目の追加→ビルド→デバックなしで開始」 といった感じで実行しているのですが、ビルドできなくて困っています。 何か設定しなければならないのでしょうか? 素人な質問ですみません。 知識のある方、是非助けてください。

  • Visual Windows for BC++ のサンプルプログラムがエラーになる

    Visual Windows for BC++ をインストールした直後に、新しいプロジェクトをwindows型でつくり、サンプルプログラムをビルドしたところ、うまく実行ファイルができ、正常に動作しました。 次に、OpenCVを http://nautilus.cs.miyazaki-u.ac.jp/~yoshi/pukiwiki/index.php を参考にダウンロードして、 インクルードファイルの検索パスに3つ: C:\Program Files\OpenCV\cv\include、C:\Program Files\OpenCV\cxcore\include、C:\Program Files\OpenCV\otherlibs\highgui ライブラリファイルの検索パスに1つ:C:\Program Files\OpenCV\lib を追加しました。 OpenCVのサンプルプログラムをビルドしようとしたのですがエラーになり先に進みません。それどころか、インストール直後にビルドできたサンプルプログラムもエラーが出るようになってしまいました。 エラーが発生したため、brc32.exe を終了します。 となります。 コンパイルも、以下の警告が出るようになってしまいました。 私の設定が悪いのでしょうか、それとも、Visual Windows for BC++では、OpenCVは扱えない ということでしょうか? よろしくお願いします。 Visual Windows for BC++, Copyright (c) 2003-2007 M. Yasue: proj1.exe ビルド実行中..... Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland ..\hello.cpp: 警告 W8060 ..\hello.cpp 30: おそらく不正な代入(関数 __stdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) ) 警告 W8057 ..\hello.cpp 41: パラメータ 'hPrevInstance' は一度も使用されない(関数 __stdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) ) 警告 W8057 ..\hello.cpp 41: パラメータ 'lpCmdLine' は一度も使用されない(関数 __stdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) ) 警告 W8057 ..\hello.cpp 95: パラメータ 'message' は一度も使用されない(関数 __stdcall OnPaint(HWND__ *,unsigned int,unsigned int,long) ) 警告 W8057 ..\hello.cpp 95: パラメータ 'wParam' は一度も使用されない(関数 __stdcall OnPaint(HWND__ *,unsigned int,unsigned int,long) ) 警告 W8004 ..\hello.cpp 130: 'wmEvent' に代入した値は使われていない(関数 __stdcall WndProc(HWND__ *,unsigned int,unsigned int,long) ) 警告 W8057 ..\hello.cpp 183: パラメータ 'lParam' は一度も使用されない(関数 __stdcall About(HWND__ *,unsigned int,unsigned int,long) ) Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland リソースファイルコンパイル・リンク実行中..... Borland Resource Compiler Version 5.40 Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. 終了.....

  • VC++6.0のスケルトンコードをビルド&実行でエラー

    VC++6.0を使ってゲームを作ろうとしているのですが、少し困った問題が起きました。 「新規作成」で「プロジェクト」→「MFC AppWizard (exe)」を選んで、 ステップ1で「SDI」を選択、「ドキュメント/ビューアーキテクチャのサポート」をOFFにして、 ステップ3で「ドッキングツールバー」と「初期ステータスバー」をOFFにします。 そしてできあがったスケルトンをそのままビルドして実行すると、下記メッセージが表示され終了します。 Debug Assertion Failed! Program: ○○○ File: winocc.cpp Line:331 For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts. 上記はDebug版の場合ですが、Release版の場合はCliant領域が更新されないだけで一応動いてはいます。 スケルトンコード内のAssert(っぽい)箇所をコメントアウトしましたが結果は同じでした。 どなたか原因をご存じないでしょうか?もしかして、VC++6.0のバグ? 尚、「ドキュメント/ビューアーキテクチャのサポート」、「ドッキングツールバー」、 「初期ステータスバー」のどれか1つでもONにすれば何も起きません。

  • Visual Studio2008で簡単にプログラムを組む方法を教えてください

    お世話になります。c++初心者です 現在Visual Studio2008でc++のプログラムを組んでいるのですが、 ソースファイルフォルダの下に2つ以上プログラムがあると、 それらをまとめて処理してしまうようで、できれば、 a1.cpp,a2.cpp,というように、分割してコンパイル&実行したいのですが、 そのような方法は可能でしょうか? 本来ならば、フリーのソフトで実行すればよいのですが、 どうもそれに見合うものがなく、Visual Studioを使っています。 状況は、プロジェクトの下に、ソースファイルフォルダ、 ヘッダーファイルフォルダ、リソースファイルフォルダがあり、 ソースファイルフォルダに新しい項目を追加する形で、記述しています。 よろしくお願いいたします。

専門家に質問してみよう