ページ 1 / 1
「.exeを開始できません」について
Posted: 2011年7月31日(日) 17:13
by ほしくず
第二章なんですが
「プログラム'C:¥User¥ユーザー名¥desktop¥フォルダ名¥Dxlib_BCC¥プロジェクト名¥debug¥プロジェクト名.exe'を開始できません 指定されたファイルが見つかりません」
とでてきます
サイトのサンプルプログラムをコピペしても消えませんでした
変えた部分と言えば
#include "../include/GV.h'を
#include "C:\Users\ユーザー名\Desktop\フォルダ名\project\2章\mydat\include/GV.h"
に変えたくらいです
簡単な動作例の
#include "DxLib.h"
// プログラムは WinMain から始まります
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1 ; // エラーが起きたら直ちに終了
}
DrawPixel( 320 , 240 , 0xffff ) ; // 点を打つ
WaitKey() ; // キー入力待ち
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
は実行できたのでVisualC++の設定の間違いは無いと思うのですが原因に心当たりがございましたらどなたか教えて頂けませんか?
Re: 「.exeを開始できません」について
Posted: 2011年7月31日(日) 17:32
by みけCAT
VisualC++なのになぜDxLib_BCCなのでしょうか?
Re: 「.exeを開始できません」について
Posted: 2011年7月31日(日) 20:24
by ほしくず
>>みけCATさん
そこは全く考えてませんでした(==;
ありがとうございます。
しかしフォルダの場所をDxlib_BCCからDxlib_VC変えても同じことが起こりました。
サンプルプログラムがあるprojectフォルダーに移動しても同じでした。
一体何が原因なのでしょうか?(--;)
理解が遅くて申し訳ないです・・・
Re: 「.exeを開始できません」について
Posted: 2011年7月31日(日) 20:44
by non
「編集」
ごめんなさい。勘違いしたコメントでしたので、削除しました。 by non
Re: 「.exeを開始できません」について
Posted: 2011年7月31日(日) 21:08
by ほしくず
>>nonさん
気にしないでください^^
御厚意ありがとうございます
Re: 「.exeを開始できません」について
Posted: 2011年8月01日(月) 02:15
by ISLe
コンパイルは正常終了しているのでしょうか。
出力ウインドウにエラーメッセージが出力されていませんか?
正常にコンパイルできているにも関わらずということなら、ウイルス対策ソフトが実行ファイルを削除しているかロックしているということかもしれません。
特にノートンは注意が必要です。
Re: 「.exeを開始できません」について
Posted: 2011年8月01日(月) 21:52
by ほしくず
>>ISLeさん
エラーでてます(--;)
その一部なのですが
エラー 1 error LNK2019: 未解決の外部シンボル "int __cdecl DxLib::ClearDrawScreen(void)" (?ClearDrawScreen@DxLib@@YAHXZ) が関数 "int __cdecl ProcessLoop(void)" (?ProcessLoop@@YAHXZ) で参照されました。
C:\Users\ユーザー名\Desktop\フォルダ名\DxLib_VC\プロジェクト名\プロジェクト名\main.obj
エラー 13 error LNK2019: 未解決の外部シンボル "void __cdecl DxLib::DrawPixelSetMemImg(struct DxLib::tagMEMIMG *,struct DxLib::tagPOINTDATA *,int)" (?DrawPixelSetMemImg@DxLib@@YAXPAUtagMEMIMG@1@PAUtagPOINTDATA@1@H@Z) が関数 "int __cdecl DxLib::DrawPixelSetSoftware(struct DxLib::tagPOINTDATA *,int)" (?DrawPixelSetSoftware@DxLib@@YAHPAUtagPOINTDATA@1@H@Z) で参照されました。
C:\Users\ユーザー名\Desktop\フォルダ名\DxLib_VC\プロジェクト名\プロジェクト名\DxLib_d.lib(DxGraphics2.obj)
エラー 16 error LNK1120: 外部参照 13 が未解決です。
C:\Users\ユーザー名\Desktop\フォルダ名\DxLib_VC\プロジェクト名\Debug\1st.exe
等外部の物が原因みたいなんです・・・
.cppのファイルにはエラーがないのでプログラム自体は問題ない気がするのですが・・・
Re: 「.exeを開始できません」について
Posted: 2011年8月01日(月) 22:15
by ISLe
DXライブラリ公式サイトの
DXライブラリの使い方に書かれている、『追加のライブラリディレクトリ』の設定は正しく行われているでしょうか?
Re: 「.exeを開始できません」について
Posted: 2011年8月02日(火) 00:46
by ほしくず
>>ISLeさん
4.DXライブラリを使用するためのプロジェクトの設定を行う
という所ですよね?
先ほど確認したのですが特に間違いは見つかりませんでした・・・
でももしそこで間違えていたら次の例の「真っ暗な画面に点をうつ」というプログラミングを同じようにエラーが出る気がするのです・・・(--;)
Re: 「.exeを開始できません」について
Posted: 2011年8月02日(火) 01:51
by ISLe
DXライブラリの『プロジェクトに追加すべきファイル_VC用』フォルダの中のファイルが壊れているのかもしれません。
ほしくず さんが書きました:でももしそこで間違えていたら次の例の「真っ暗な画面に点をうつ」というプログラミングを同じようにエラーが出る気がするのです・・・(--;)
問題のある2章のプロジェクトでソースファイルの中身を点を打つだけのものに入れ替えるとコンパイルも実行もできるということですか?
そうだとすると原因の予想が付かないですね。
(追記)
館で配布してるプロジェクトをそのまま使うと
(project.zipを展開したフォルダ)\project\2章\Debug\RyuJin.exe
という実行ファイルが作成されるはずなのですが、
なぜ違うのでしょう。
Re: 「.exeを開始できません」について
Posted: 2011年8月02日(火) 12:38
by ほしくず
>>ISLeさん
(追記)に関してですが配布されているプロジェクトをそのまま使ったら確かに
「\project\2章\Debug\RyuJin.exe」はありました
しかしまた別に1から書いていった今回のものでは
「1st.pdb」
しかありませんでした・・・
壊れているかもと思いDxLib_VC3_03.exeをもう一度実行してみましたが変わらなかったです(--;)
長くなりますが以下がソースファイルです
~main.cpp~
#define GLOBAL_INSTANCE
#include "C:\Users\ほしくず\Desktop\ゲーム制作\project\2章\mydat\include/GV.h"
extern int GetHitKeyStateAll_2(); // 現在のキーの入力処理を行う
extern int CheckStateKey(unsigned char Handle);
int ProcessLoop(){ // ループで必ず行う3代処理
if(ProcessMessage()!=0){
return -1; // プロセス処理がエラーなら-1を返す
}
if(ClearDrawScreen()!=0){
return -1; // 画面クリア処理がエラーなら-1を返す
}
GetHitKeyStateAll_2(); // 現在のキー処理を行う
return 0;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode(TRUE);//ウィンドウモード
if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0){
return -1;//初期化と裏画面化
}
while(ProcessLoop()==0){ // メインループ
if(CheckStateKey(KEY_INPUT_ESCAPE)==1){
break; // エスケープが入力されたらブレイク
}
ScreenFlip(); // 裏画面反映
}
DxLib_End();
return 0;
}
~key.cpp~
#include "C:\Users\ほしくず\Desktop\ゲーム制作\project\2章\mydat\include/GV.h"
unsigned int stateKey[256];
int GetHitKeyStateAll_2(){
char GetHitKeyStateAll_Key[256];
GetHitKeyStateAll( GetHitKeyStateAll_Key );
for(int i=0;i<256;i++){
if(GetHitKeyStateAll_Key==1){
stateKey++;
}
else{
stateKey=0;
}
}
return 0;
}
int CheckStateKey(unsigned char Handle){
return stateKey[Handle];
}
Re: 「.exeを開始できません」について
Posted: 2011年8月02日(火) 12:44
by ほしくず
失礼しました;;
「ほしくず」はユーザー名
「ゲーム製作」はプロジェクトなどが入っているファイル名
「1st」は今回のプロジェクト名です
Re: 「.exeを開始できません」について
Posted: 2011年8月03日(水) 03:17
by ISLe
ほしくず さんが書きました:しかしまた別に1から書いていった今回のものでは
「1st.pdb」
しかありませんでした・・・
最初にそう書いてくださっていれば良かったのに。
館に書いた通りにしてうまくいかないのだと思ってました。
どちらにしてもプロジェクトの設定がおかしいのが原因でしょう。
「1から書いていった」というのはどのようにしたのでしょうか?
新・ゲームプログラミングの館の
DXライブラリのプロジェクトを自分で作るのようにプロジェクトを作成しましたか?
あと元からある設定を消してしまったりしてませんか?
ほしくず さんが書きました:壊れているかもと思いDxLib_VC3_03.exeをもう一度実行してみましたが変わらなかったです(--;)
DXライブラリもソースファイルの中身も関係なかったですね。
プロジェクトを一から作るなら、ゲーム制作フォルダの下にmyprojectといったフォルダを作ってその下にプロジェクトフォルダを作ると良いですよ。
どこのフォルダにあるものを使っているのか分からなくなりますから、project.zipの中身で必要なものは自分で作ったプロジェクトのフォルダにコピーして使いましょう。
DXライブラリはC:\DxLib_VCに展開して、ここの中身は触らないようにすると間違いが少ないです。
サンプルを試したいときは、新たに別の場所に展開してそちらを触るようにしましょう。
Re: 「.exeを開始できません」について
Posted: 2011年8月04日(木) 17:33
by ほしくず
>>ISLeさん
おかしいことにご紹介頂いたページのものを使っても
例に出てきた
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
DxLib_Init(); // DXライブラリ初期化処理
WaitKey(); // キー入力待ち
DxLib_End(); // DXライブラリ終了処理
return 0;
}
を実行できても2章のプログラミングが実行できませんでした(--;)
エラーの数や大体の内容から多分同じことが起こってます・・・
前回のでは「Win32 プロジェクト」を使ってないからだと思いましたが・・・
1からつくるというのはVisualC++を開いた直後のファイルが無い状態からつくるということです^^;
Re: 「.exeを開始できません」について
Posted: 2011年8月04日(木) 19:08
by ISLe
ほしくず さんが書きました:おかしいことにご紹介頂いたページのものを使っても
例に出てきた
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
DxLib_Init(); // DXライブラリ初期化処理
WaitKey(); // キー入力待ち
DxLib_End(); // DXライブラリ終了処理
return 0;
}
を実行できても2章のプログラミングが実行できませんでした(--;)
何故おかしいと思うのでしょうか。
エラーが出るのは理由があります。
ほしくずさんは自分が正しいのにエラーが出るのがおかしいと思っていらっしゃるのでしょうか。
上記のソースはDXライブラリの関数しか呼び出していませんから、DXライブラリを使うのに必要な設定を行うだけでコンパイルできます。
龍神録の館のプロジェクトは、あとから必要になるソースファイルも最初から含まれていますから、きちんとすべて参照できるように設定しなければなりません。
ほしくず さんが書きました:1からつくるというのはVisualC++を開いた直後のファイルが無い状態からつくるということです^^;
ですから、どのように作ったのかとおたずねしています。
ほしくずさんが、どうしたくて、実際にどうしたのか、具体的に教えていただけない限り、一般的な回答を繰り返すことしかできません。
Re: 「.exeを開始できません」について
Posted: 2011年8月05日(金) 19:41
by ほしくず
>>ISLeさん
>>ほしくずさんは自分が正しいのにエラーが出るのがおかしいと思っていらっしゃるのでしょうか。
そのように捉われてもおかしくない文章でしたね・・・失礼しました
そのようには思っていません
ヘッダーファイルやDXライブラリは龍神録で配布されてるものを別のフォルダーにコピーして使って
.cppの部分は自分で組み立てる
と言って伝わりますか?
龍神録のプログラミングや結果は解答として見る
と言いますか・・・
実際に配布されているRyuJin.slnを使わずにVisualC++の新しいプロジェクトから始めるということです
そこから始めて2章のプログラムを書いて実行した結果エラーが消えないということになってます
上手い言い回しが思いつかなくてすいません・・・
質問の意図に沿っていましたか?
Re: 「.exeを開始できません」について
Posted: 2011年8月05日(金) 20:08
by non
フォルダまるごと添付してみませんか。百聞は一見にしかずっていいますもんね。
Re: 「.exeを開始できません」について
Posted: 2011年8月06日(土) 00:24
by ISLe
実験してみました。
- デスクトップにMyProjectフォルダを作成しました。
- プロジェクトを新規作成しました。
テンプレートは『Win32 プロジェクト』。
プロジェクトの名前はTest。
場所は上記MyProjectフォルダ。
ソリューションのディレクトリを作成のチェックはオフ。
続くウィザードで『次へ >』ボタンを押し、『空のプロジェクト』にチェックを入れて、完了ボタンを押しました。
- MyProjectフォルダの下に作成されたTestフォルダに、龍神録の館のプロジェクトの2章の下のmydatフォルダ(以下すべてのファイルとフォルダ)をコピーしました。
- DXライブラリ公式サイトのDXライブラリの使い方に書かれている設定をしました。#長くなるのでここは省略
- MyProjectフォルダの下にコピーしたファイルの中からmain.cppをプロジェクトに追加しました。
以上の手順では無事にビルド、実行できました。
上記と同様の手順を踏めばプロジェクトを新規作成するという目的は達せられないでしょうか。
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 00:52
by ほしくず
>>ISLeさん
返信が遅れて申し訳ありません
手順どおりにやったつもりですがエラーがでました;;
多分焦ってたのもあるかもしれないのでお昼頃心当たりのあること含めて再度やってみます
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 01:12
by ほしくず
>>nonさん
file:///C:/Users/%E3%81%BB%E3%81%97%E3%81%8F%E3%81%9A/Desktop/%E3%82%B2%E3%83%BC%E3%83%A0%E5%88%B6%E4%BD%9C/
確かにその方が伝わりますね(--;)
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 07:37
by みけCAT
ほしくず さんが書きました:>>nonさん
file:///C:/Users/%E3%81%BB%E3%81%97%E3%81%8F%E3%81%9A/Desktop/%E3%82%B2%E3%83%BC%E3%83%A0%E5%88%B6%E4%BD%9C/
確かにその方が伝わりますね(--;)
これでは中身が見られません。
きちんとアップロードしてください。
代表的なあぷろだ→
http://www.axfc.net/uploader/
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 13:07
by ほしくず
>> ISLeさん
- デスクトップに「MyProject」というフォルダを作りました
パス:C:\Users\ほしくず\Desktop\MyProject
- Win32 プロジェクトを選択
ソリューションのチェックを外す
ウィザードで「次へ」の後に「空のプロジェクト」にチェックを入れる
その後完了
- MyProjectのTestフォルダに2章の「mydat」をコピー
パス:C:\Users\ほしくず\Desktop\MyProject\Test\mydat
- 既存項目の追加から2章の「main.cpp」を追加
(何か.cppが無いとプロジェクトのプロパティで「C/C++」が無い)
- DXライブラリの設定
構成(C):すべての構成
>>構成プロパティ>>全般
文字セット「マルチ バイト文字セットを使用する」
>>構成プロパティ>>C/C++>>全般
追加のインクールド ディレクトリ
「C:\Users\ほしくず\Desktop\ゲーム制作\DxLib_VC\DxLib_VC\プロジェクトに追加すべきファイル_VC用;%(AdditionalIncludeDirectories)」
>>構成プロパティ>>リンカー>>全般
追加のライブラリ ディレクトリ
「C:\Users\ほしくず\Desktop\ゲーム制作\DxLib_VC\DxLib_VC\プロジェクトに追加すべきファイル_VC用;%(AdditionalLibraryDirectories)」
構成(C):Release
>>C/C++>>コード生成
ランタイム ライブラリ「マルチスレッド (/MT)」
構成(C):Debug
>>C/C++>>コード生成
ランタイム ライブラリ「マルチスレッド デバッグ (/MTd)」
OKを押す
- ソリューションエクスプローラーのソースファイルで右クリック
既存の項目を追加
C:\Users\ほしくず\Desktop\MyProject\Test\mydat\source
から「main.cpp」「key.cpp」を追加
以下の物で赤い波線が出てきました
ProcessMessage、ClearDrawScreen、HINSTANCE、LPSTR
ChangeWindowMode、TRUE、GetHitKeyStateAll
以上の物が「識別子が定義されていません」
WinMain、ScreenFlip
この二つは「明示的な型がありません('int'が想定されます)」
if、while、return、}
これらは「宣言が必要です」と出てきます
C:\Users\ほしくず\Desktop\ゲーム制作\project\2章\mydat\source
から開くと波線部は出ませんが実行すると最初の16個のエラーが出てきます・・・
ISLeさんにご紹介して頂いた手順を見ながらやったことを書いていきましたが何処か間違いがございましたか?(--;)
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 16:26
by ほしくず
>>みけCAT
やり方教えて頂きありがとうございます!
>>nonさん
アドバイスをしてくださりありがとうございます!
http://www1.axfc.net/uploader/F/so/62015
以前の物は「myproject」の中の2ndというファイルです
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 16:33
by ほしくず
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 16:41
by みけCAT
# なぜか俺だけ呼び捨て・・・orz
Re: 「.exeを開始できません」について
Posted: 2011年8月08日(月) 22:44
by ISLe
ほしくず さんが書きました:こちらがISLeさんの手順を元にやってみたファイルです
説明とは違って、main.cpp,key.cppともにコピーしたものではなく、外部の(「ゲーム制作」フォルダの中にある)、おそらく館からダウンロードしたproject.zipを展開した中身のソースファイルを参照していますね。
それでDxLib.hだけを相対的に参照できてしまって、不思議なエラーメッセージになっているようです。
MyProjectフォルダの下にコピーしたmain.cpp,key.cppをプロジェクトに追加してください。
ソリューションエクスプローラーでソースファイルを選択状態にして、プロパティウインドウに表示されるパスで確認できると思います。
先に投稿したわたしの手順に足りない点がありました。
(手順も写し間違ってましたね。申し訳ありません。)
GV.hの1行目の
#include "../../../include/DxLib.h"
を
#include "DxLib.h"
に書き換える必要がありました。
あとは、追加のインクールド ディレクトリと追加のライブラリ ディレクトリに追加したパスが正しければビルドできるはずです。
龍神録の館のプロジェクトはフォルダ構成に依存したものなっていますので、プロジェクトやソースファイルなどなど自分で作成するなら、パスを理解しフォルダ構成を意識して、作業するようにしましょう。
(追記)
#いままでの投稿に書かれてたパスから、元のプロジェクトは龍神録の館の配布プロジェクト展開先とDXライブラリ公式配布ファイル展開先をまるごと配下に抱えてるだろうことは予想できた気がする。
Re: 「.exeを開始できません」について
Posted: 2011年8月09日(火) 20:25
by ほしくず
>>みけCATさん
大変申し訳ありません(><)
僕の不注意でした!!
折角ご協力して下さったのに不快な思いをさせてしまって大変失礼しました!!
心からお詫び申し上げます!!
Re: 「.exeを開始できません」について
Posted: 2011年8月09日(火) 21:18
by ほしくず
>> ISLeさん
できました!!
既存の項目から「MyProject」フォルダの「main.cpp」と「key.cpp」を開き、
コピーした「include」フォルダの「GV.h」のご指摘いただいた所を変更し、
ビルドしたら龍神録のページ通りの真っ黒のウィンドウがでてきました!!
長期に渡りご解説して頂きありがとうございます!!
そして・・・途中不快な思いをさせてしまい申し訳ありませんでした・・・。
今までのエラーの原因はフォルダ構成絡みに原因があったんですね・・・
今後そこにも注意します
最初から龍神録に合わせた構成だったんですね・・・
改めてありがとうございましたm(_ _)m
Re: 「.exeを開始できません」について
Posted: 2011年8月09日(火) 21:22
by ほしくず
>>みけCATさん
ファイルのアップロードのやり方を教えて頂きありがとうございますm(_ _)m
おかげさまで的確なアドバイスを受けることができました!!
加えまして・・・途中敬称をつけ忘れてしまい大変失礼しました・・・
最後までご協力ありがとうございました!!
Re: 「.exeを開始できません」について
Posted: 2011年8月09日(火) 21:25
by ほしくず
>>nonさん
アップロードをするという方法を提供して頂きありがとうございますm(_ _)m
ファイルの場所やどんなデータがあるか伝えられなかったのですごく助かりました!!