エラー Run-Time Check Failure #2 - Stack around the variable 'ps' was corrupted.
締切済
- 気になる
- 1
- 件
- 質問日時:
- 回答数:3件
五目並べのプログラムを作っているのですが、
下記2のサブルーチンを出る時に
下記1のようなランタイムエラーが
どうしても出てしまいます。
原因が分からなく自分の力ではどうにもできないので、
どなたかアドバイスよろしくお願い致します。
記1
Run-Time Check Failure #2 - Stack around the variable 'ps' was corrupted.
記2
LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
{
int id, x, y;
static int nTe = 0;
PAINTSTRUCT ps;
HDC hdc;
char szBuf[64], szSashite[16];
static HMENU hMenu;
switch (msg) {
case WM_CREATE:
hMenu = GetMenu(hWnd);
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
MyMakeBan(hdc);
MyStoneDraw(hdc);
if (bSente)
strcpy_s(szSashite, "先手●");
else
strcpy_s(szSashite, "後手○");
wsprintf((LPWSTR)szBuf, TEXT("差し手 = %s"), szSashite);
TextOut(hdc, 30, SHUI + KANKAKU * 14 + 30, (LPCWSTR)szBuf, strlen(szBuf));
wsprintf((LPWSTR)szBuf, TEXT("第 %02d 手終了 現在 %02d 手目待ち"), nTe, nTe + 1);
TextOut(hdc, 30, SHUI + KANKAKU * 14 + 50, (LPCWSTR)szBuf, strlen(szBuf));
EndPaint(hWnd, &ps);
break;
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
wsprintf()のどちらかでバッファオーバーフローして、
めでたくpsを破壊されたようです。
デバッグ版でよかったですね…。
リリース版にすればランタイムチェックは走らないでしょう。
# 鼻から悪魔が出てきても文句言えませんが。
現実的な解決策は既に出ていますので。
No.2
- 回答日時:
文字列の種類を
char
wchar_t
TCHAR
のどれかに統一したほうがいいでしょう
char szBuf[64], szSashite[16];
を
TCHAR szBuf[64], szSashite[16];
に
strcpy_s
を
_tcscpy_s
に
strlen
を
_tcslen
など
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- 飛行機・空港 ミルウォーキーツールHDC大阪から伊丹空港へ乗り換え無しで行く方法はありますか? できれば、空港直通 2 2023/05/12 06:44
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- C言語・C++・C# スタックフレームの消滅 6 2023/05/20 12:33
- JavaScript jsで、switch文で書かれた分をif文にできませんか。 1 2022/07/28 15:10
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
Run-Time Check Failure #3というエラーが出ます。
C言語・C++・C#
-
Debug Assertion Failed?
C言語・C++・C#
-
Run-Timeエラーの原因に関して教えてください。
C言語・C++・C#
-
-
4
std::stringからLPCWSTR型への変換
C言語・C++・C#
-
5
Expression: nptr != NULL
C言語・C++・C#
-
6
スタック破壊の上手な見つけ方を教えてください
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ポップアップメニュー
-
トラックのループの仕方
-
2÷3などの余りについて
-
C言語で%を使わない余りの出し方
-
比較回数と交換回数表示について
-
信頼区間の1.96や1.65ってどこ...
-
nCmの関数
-
複数桁10進数の*桁目だけを抽出...
-
Notepad++の関数リスト表示の変...
-
C言語のfor文です。 繰り返しの...
-
break文でループを一気に抜ける...
-
正負を反転させて出力するプロ...
-
#define _CRT_SECURE_NO_WARNIN...
-
error C2143: 構文エラー : ';'...
-
プログラムでの数字につく”f”の...
-
既定のコンストラクタがありま...
-
hit&bolwのプログラミングがで...
-
C言語 配列と関数の練習問題
-
c言語
-
std::set<int> で、ある値が何...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エディットボックスの背景の色...
-
ダイアログプログラムでEnterキ...
-
C言語win32api、エディットボッ...
-
音量調節
-
エディットコントロール入力時...
-
プログラミングでエラーが出ま...
-
エラー Run-Time Check Failur...
-
キャレットの現在位置の表示 (W...
-
LoadImageとSetCursorについて
-
コンソールアプリケーションの...
-
画像を表示したいのですが……
-
ボタンの色(WINAPI)
-
COMPORTマルチスレッドで例外発生
-
C++のcase文の書き方
-
Win32APIでウィンドウを中央に...
-
PeekMessageについて
-
CTreeCtrlのCreate関数でエラー...
-
オーバーレイみたいな処理がしたい
-
この列挙体でsysjanの関数はあ...
-
DirectInputについて再
おすすめ情報