정직한 하나님, 나는 지금 내 마음을 잃고 있습니다. 먼저 "MessageBox"함수가 CodeBlocks 내부에서 텍스트를 정의 할 때 완벽하게 올바르게 작동한다고 말하면서 시작하겠습니다. 어떤 이유로 든 Visual Studio는이 MessageBox 함수의 내부에 무엇이 들어갈 수 있는지에 대해 까다 롭습니다.내 메시지 상자가 다른 언어로 나타나는 이유는 무엇입니까?
내가 그 안에 넣은 것이 LPCWSTR "물건"에 대해 유효하지 않다고 계속 말했습니다. 이 문제를 회피하기 위해, 나는 아래이 일 프로그램 :
이것은 매우 스트레스 : 그것은 내가 원래 생각했던 방법을 작동하는 대신
int main()
{
LPCWSTR a;
std::string s = "Please help me.";
a = (LPCWSTR)s.c_str();
LPCWSTR b;
std::string t = "MTS";
b = (LPCWSTR)t.c_str();
MessageBox(0,a,b, MB_OK | MB_ICONSTOP);
}
를 내가 대신의 결과이있어 저와 저는 그것이 이전에 한 번 물었습니다. 따라서 제 질문을 중복으로 표시하지 마십시오. 내 메시지가 영어로 표시되고 내가 분명히 말하고자하는 것을 묘사하도록이 코드가 작동하도록하려면 어떻게해야합니까? 미리
감사합니다,
MTS
'MessageBox'는'LPCTSTR' 인수를 취하지 만'LPCWSTR'을 제공하고 있습니다. 'LPCTSTR' 대신에'a'와'b'를 선언/캐스팅 해보십시오. – Doc
@Doc a) MessageBox가 MessageBoxA가되거나 MessageBoxW가 프로젝트 설정/전 처리기 항목에 의존하는 경우. b) 주조가 도움이되지 않습니다. c) japanese 결과물은 W 변형입니다. – deviantfan