DxLib_Init();で動作が停止してしまう

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

DxLib_Init();で動作が停止してしまう

#1

投稿記事 by TE » 11年前

少し前にDXライブラリを使用したツールを公開したのですが、起動すると[動作を停止しました]と出る報告をいただきました。
少しずつプログラムを削りながら確認してもらっていたのですが、最終的にDxLib_Init();が原因ではないか?という状況になりました。
以下はテストに使用したソースです。

コード:

#include "DxLib.h"
#include "windows.h"
bool ProcessLoop(){
	if(ProcessMessage() != 0) return false;
	if(ScreenFlip() != 0) return false;
	if(ClearDrawScreen() != 0) return false;
	return true;
}
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
	SetGraphMode(400,240,32);
	SetMainWindowText("");
	ChangeWindowMode(true);
	MessageBox(NULL,"【1】","",MB_OK);
	DxLib_Init();
	MessageBox(NULL,"【2】","",MB_OK);
	SetAlwaysRunFlag(true);
	SetDrawScreen(DX_SCREEN_BACK);
	SetDrawMode(DX_DRAWMODE_BILINEAR);
	MessageBox(NULL,"【3】","",MB_OK);
	/*----------------------------------------------------------------------------------------------------*/
	while(ProcessLoop()){
	}
	DxLib_End();
	return 0;
}

確認していただいた報告によると、【1】→ウィンドウが立ち上がる→(間もなく)[動作を停止しました]らしいです。
上のソースになる少し前(状況は同じ)にログをいただいたので、そちらも貼っておきます。
画像
情報があったら教えて下さい。

taketoshi
記事: 222
登録日時: 14年前
住所: 日本国

Re: DxLib_Init();で動作が停止してしまう

#2

投稿記事 by taketoshi » 11年前

DxLib_Init();関数はハードウェアの
初期化処理を行っているっぽいので被験者のPCの問題ではないでしょうか。

本家の掲示板に似たような議論がございました。
http://hpcgi2.nifty.com/natupaji/bbs/pa ... o=2111&p=1

提示されたソースコードは私のPCでは動きました。

TE

Re: DxLib_Init();で動作が停止してしまう

#3

投稿記事 by TE » 11年前

回答ありがとうございます!
DXライブラリを使用しない方向でも作り直せそうなので、その方にはそれを送ることにします。

ISLe
記事: 2650
登録日時: 14年前
連絡を取る:

Re: DxLib_Init();で動作が停止してしまう

#4

投稿記事 by ISLe » 11年前

Log.txtの内容を見る限りではElecom Wireless Gamepadのドライバに問題があるのでは。

エレコムのサイトでワイヤレスゲームパッドのページを見ると、ドライバの更新情報に
Ver.1.1
特定の環境でDirectXアプリケーションが起動しない現象を改善しました。
という記述がありますが。

閉鎖

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