C++ Builder XE4, 10.2 Tokyo > 에러 메세지 윈도우 > 에러 메세지를 다른 소프트로부터 취득한다
6133 단어 cppBuilderappOperationmemory
C++ Builder XE4
RAD Studio 10.2 Tokyo Update 2 (追記: 2018/01/05)
관련
C++ Builder > 메모리가 부족합니다 (Abnormal Program Termination) > 재현 방법
처리
에러 메시지가 표시된 상태에서, 에러 메시지를 다른 소프트웨어로부터 취득한다.
참고 : h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 27260843 / 게 t-xt 보 x- ゔ ぅ 에 - an d 쇼 웬 t- s
answered Dec 2 '14 at 23:52
FelipeDurar
해당 HWND 값을 어떻게 얻는가?
Microsoft Spy++에서 확인한 결과, 에러 메시지는 아래와 같다.
정책으로서는, 「Static의 다음의 Static」을 취득한다.
참고 : Z 주문 창 가져 오기
code
Unit2.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
HWND winhwnd;
winhwnd = FindWindow(NULL, L"Project1");
if (winhwnd == NULL) {
return;
}
HWND msghwnd = FindWindowEx(winhwnd, NULL, L"Static", NULL);
HWND nexthwnd = GetWindow(msghwnd, GW_HWNDNEXT);
HWND target = nexthwnd;
int len = GetWindowTextLength(target) + 1;
wchar_t text[100]; // 100: 任意の長さ
GetWindowText(target, text, len);
ShowMessage(text);
}
//---------------------------------------------------------------------------
실행 예
C++ Builder > 메모리가 부족합니다 (Abnormal Program Termination) > 재현 방법 에서 빌드한 Project1.exe를 실행합니다.
10.2 도쿄
10.2 Tokyo에서도 작동했습니다.
오류 메시지는 다릅니다.
참고 : C++ Builder 10.2 Tokyo > Error: OleStr형에서 Date형으로의 변형형 변환은 할 수 없습니다.
Reference
이 문제에 관하여(C++ Builder XE4, 10.2 Tokyo > 에러 메세지 윈도우 > 에러 메세지를 다른 소프트로부터 취득한다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/7of9/items/680c65d1024f8498cf8e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)