最小化すると動かない

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
yux

最小化すると動かない

#1

投稿記事 by yux » 15年前

こんにちは。初心者のXです。(^^)

DxLib使って、画面を出したときにある、最小化ボタンを押すと、最小化されるんですが、
元に戻そうとすると、
-------------------------------------------------
DinosaurX.exe の 0x005d8f23 で初回の例外が発生しました:
0xC0000005: 場所 0x00000000 を読み込み中にアクセス違反が発生しました。

DinosaurX.exe の 0x005d8f23 でハンドルされていない例外が発生しました:
0xC0000005: 場所 0x00000000 を読み込み中にアクセス違反が発生しました。
-------------------------------------------------
と出てきて、エラーが起きて、そこで止まってしまいます。
どうすればよいでしょうかm(__)m

ちなみにVisualC++2008 Express Editionで、
OSはWindowsXP Home Editionです。

  よろしくおねがいします。
画像

やっくん

Re:最小化すると動かない

#2

投稿記事 by やっくん » 15年前

ソースコードの提示をお願いしてもよろしいでしょうか?

yux

Re:最小化すると動かない

#3

投稿記事 by yux » 15年前

ソースです------------------------------------------------------------------

#include "DxLib.h"
#include "../head/struct.h"
#include "../head/function.h"
#include "../head/define.h"

#define GLOBAL_INSTANCE
#include "../head/global.h"




int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){

int max[16];

ch_t ch;
back_t bc;
music_t ms;



bc.x = GetClipMinX;
bc.y = GetClipMinY;

ch.x = 320;
ch.y = 320;
ch.walking_flag = 0;
ch.muki = 3;



SetMainWindowText("Ben10");



if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1;


SetDrawScreen( DX_SCREEN_BACK ) ;



LoadDivGraph("dat/img/max.png",16,4,4,32,32,max);

ms.music = LoadSoundMem("dat/bgm/village_01.mp3");
bc.img = LoadGraph("dat/img/bk_ground.png");


PlaySoundMem(ms.music,DX_PLAYTYPE_LOOP);



while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){



if(ch.x%32==0 && ch.y%32==0){
ch.walking_flag=1;
if ( Key[ KEY_INPUT_UP ] == 1 )
ch.muki=0;
else if( Key[ KEY_INPUT_LEFT ] == 1 )
ch.muki=1;
else if( Key[ KEY_INPUT_DOWN ] == 1 )
ch.muki=2;
else if( Key[ KEY_INPUT_RIGHT] == 1 )
ch.muki=3;
else
ch.walking_flag=0;

if (ch.walking_flag == 1)
if(can_or_cannot(ch.x,ch.y,ch.muki)==1)//行き先が歩けないなら
ch.walking_flag=0; //歩かないフラグを立てる。

}
if(ch.walking_flag==1){
if (ch.muki==0) {
ch.y--;
bc.y++;
}
else if(ch.muki==1) {
ch.x--;
bc.x++;
}
else if(ch.muki==2) {
ch.y++;
bc.y--;
}
else if(ch.muki==3) {
ch.x++;
bc.x--;
}
}

ch.img = max[(ch.x % 32 + ch.y % 32)/8 + ch.muki * 4];


DrawGraph( bc.x , bc.y ,bc.img ,FALSE);
DrawGraph( GetCenterX-16, GetCenterY-16, ch.img,TRUE);


ScreenFlip();

}

DxLib_End();
return 0;
}

---------------------------------------------------------------------------------------

お願いします(*_ _)

ookami

Re:最小化すると動かない

#4

投稿記事 by ookami » 15年前

ソースには、特に怪しいところは無いように思います。
あとは...
 ・DxLibを最新版にする
 ・PCを再起動してみる
 ・「最小化→戻す」ではなく「画面外をクリック→画面内をクリック」でも同じ現象が起こるか確認
 ・DxLibの作者さんに連絡してみる
くらいでしょうか...

閉鎖

“C言語何でも質問掲示板” へ戻る