|
지금 XE4/XE7을 각각 사용 중입니다.
(Windows 10 64비트 : XE4,,, Windows 7 32비트 : XE7)
그런데 간단한 코드 컴파일 오류가 나는데 그 차이는 ShellExecute 와 ShellExecuteA 뿐 입니다.
AnsiString TempBMPFName=ChangeFileExt(ParamStr(0),".bmp");
Image1->Picture->SaveToFile(TempBMPFName);
ShellExecute(NULL, "print", TempBMPFName.c_str(), NULL, NULL, SW_HIDE);
>>>>> [bcc32 Error] MainUnit.cpp(402): E2034 Cannot convert 'char const[6]' to 'const wchar_t *' 오류 발생
그런데
ShellExecuteA(NULL, "print", TempBMPFName.c_str(), NULL, NULL, SW_HIDE); 에서는 정상 컴파일 됩니다.
무슨 차이일까요?
ShellExecuteA 이외는 모두 오류가 납니다.
아래 코드도 동일한 오류 발생합니다.
SHELLEXECUTEINFO ExVal;
ExVal.cbSize = sizeof(SHELLEXECUTEINFO);
ExVal.fMask = NULL;
ExVal.hwnd = NULL;
ExVal.lpVerb = NULL;
ExVal.lpFile = "NATEON40.exe";
ExVal.lpParameters = NULL;
ExVal.lpDirectory = NULL; //"C:\\";
ExVal.nShow = SW_SHOWNORMAL;
ExVal.hInstApp = NULL;
ShellExecuteEx(&ExVal);
유니코드 안시코드 참 모르겠습니다.
|