一日に何度もすいません。今日練習でいくつもプログラムを書いていて思ったのですが
作ったプログラムの一部を変えて実行すると
「○○○.exeを開いて書き込むことができません」
のメッセージが。。。
毎回タスクバーを起動して停止させるのが面倒なのですが何か良い方法ないでしょうか?
いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
Re: いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
ChangeWindowMode( TRUE ); // ウィンドウモードに設定
DxLib_Init(); // DXライブラリ初期化処理
int x = 50;
int Handle; // 画像格納用ハンドル
Handle = LoadGraph( "画像/キャラクタ01.png" ); // 画像のロード
while( 1 ){
if( ProcessMessage() != 0 ){ // メッセージ処理
break;//ウィンドウの×ボタンが押されたらループを抜ける
}
DrawGraph( x, 100, Handle, TRUE ); //画像の描画
x = x + 2; // xを2増やす
Sleep(7); // 7[ms]待機
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
Re: いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
こんばんは。
DXライブラリではフレーム制御はProcessMessage()でやってくれるので
Sleep(7)は必要ないと思いますよ。
これでプログラムが正常に停止するかは分かりませんが…
DXライブラリではフレーム制御はProcessMessage()でやってくれるので
Sleep(7)は必要ないと思いますよ。
これでプログラムが正常に停止するかは分かりませんが…
Re: いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
こんばんはです。
今もう一回VSを立ち上げてやってみたところうまくいきました。
ただ、プログラムを正常に停止させるようにプログラムを書いていないのですがどうしてうまくいったのでしょうか??
うまくいく時とそうでない時があって困ってます(泣)
今もう一回VSを立ち上げてやってみたところうまくいきました。
ただ、プログラムを正常に停止させるようにプログラムを書いていないのですがどうしてうまくいったのでしょうか??
うまくいく時とそうでない時があって困ってます(泣)
Re: いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
ウィンドウの×ボタンでループを抜け、DxLib_End();return 0;が実行されるならプログラムは正常終了します。
(他に正常終了するための関数がある、ということではありません)
プロセスが残ってしまうのは、DxLib_End();が呼ばれずに終了したからです。
VC++等の機能で強制終了している、またはabort()を呼んだ、などが考えられると思います。
(他に正常終了するための関数がある、ということではありません)
プロセスが残ってしまうのは、DxLib_End();が呼ばれずに終了したからです。
VC++等の機能で強制終了している、またはabort()を呼んだ、などが考えられると思います。
- Dixq (管理人)
- 管理人
- 記事: 1661
- 登録日時: 13年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
> DXライブラリではフレーム制御はProcessMessage()でやってくれるので
Sleep(7)は必要ないと思いますよ。
いや、この場合必要あると思いますよ。
必要ないのは裏画面処理設定にしていてScreenFlip()を呼んだときです。
まぁ、普通裏画面処理をせずにゲームを作ることはないわけですが、、。
Sleep(7)は必要ないと思いますよ。
いや、この場合必要あると思いますよ。
必要ないのは裏画面処理設定にしていてScreenFlip()を呼んだときです。
まぁ、普通裏画面処理をせずにゲームを作ることはないわけですが、、。
- Dixq (管理人)
- 管理人
- 記事: 1661
- 登録日時: 13年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: いちいち実行中の○○○.exeファイルを停止させるのが面倒なのですが
8127さん、管理人さん解答ありがとうございます。
自分はC言語をよく知らないのでもう少し勉強してみます。
自分はC言語をよく知らないのでもう少し勉強してみます。