4
내 모든 작업에이 함수를 사용할 수 있도록 문자열을 CreateProcess 함수에 전달하려고합니다. 그것을 올바르게하는 방법? 다음은 CreateProcess 함수에 문자열을 전달하는 방법은 무엇입니까?
내 코드입니다 :CString ExecuteExternalProgram(CString pictureName)
{
CString parameterOne = _T(" -format \"%h\" C:\\");
CString filename = pictureName;
CString parameterLast = _T("\"");
CString parameterFull = parameterOne + filename + parameterLast;
CreateProcess(_T("C:\\identify.exe"), parameterFull,0,0,TRUE,
NORMAL_PRIORITY_CLASS|CREATE_NO_WINDOW,0,0,&sInfo,&pInfo);
CloseHandle(wPipe);
.......
}
오류 :
오류이 오류 C2664 : 'CreateProcessW': 'LPWSTR'C에 'ATL :: CString을'에서 매개 변수 2을 변환 할 수 없습니다 : \
CreateProcess(L"C:\\identify.exe",csExecute.GetBuffer(),0,0,TRUE,
NORMAL_PRIORITY_CLASS|CREATE_NO_WINDOW,0,0,&sInfo,&pInfo);
CreateProcess()
가 쓰기를 원하는 : cpp를
".GetBuffer을()"코드 내부 : 예를 들어
다음은이의 주어진 명령 줄을 덤프 조금 utilty 프로그램을 실행합니다. 그러나 그것은 여전히 오류입니다. 위의 질문을 업데이트했습니다. – karikari나는 더 진전을 보였습니다. 다시 위의 코드를 업데이트했습니다. 하지만 여전히 오류가 있습니다. 도움이 필요합니다. – karikari
문제가 해결되었습니다. 나는 parameterFull.GetBuffer()를 사용한다. 감사합니다 – karikari