2008-12-01 4 views
3

우리는 프로세스 중에 다른 32 비트 응용 프로그램을 시작하는 32 비트 응용 프로그램이 있습니다.Windows Server 2003 64 비트에서 CreateProcess가 실패하는 이유는 무엇입니까?

error 193 (not a valid 32 bit application) 

우리는 수동으로 문제없이 해당 시스템에서 이러한 응용 프로그램을 실행할 수 있습니다 : 응용 프로그램이 다른 64 비트 플랫폼에 있지만 Windows Server 2003 64 비트에서 잘 작동, 우리는 애플 리케이션을 시작하려고 오류가 발생합니다.

나는 this article으로 문제를 발견했다고 생각했지만 고객이 이미이 패치를 시스템에 가지고 있으며 오류가 여전히 발생하고 있습니다.

다른 사람이 비슷한 것을 발견했거나 다른 사람이 해결 방법을 알고 있다면 크게 감사하겠습니다.

감사합니다. François Côté

+0

전화를 걸 수 있습니까? 민감한 정보를 변경하면 어떤 매개 변수를 전달할 지 알면 도움이됩니다. – Kiril

답변

0

실행중인 응용 프로그램이 32 비트 용으로 컴파일되어 있습니까? 각 앱을 직접 실행하는 경우 앱이 WOW64 내에서 실행되고 있는지 확인하십시오. 그렇지 않은 경우 Windows에서 64 비트 응용 프로그램으로 실행 중이므로 문제가 발생할 수 있습니다.

+0

시간 내 주셔서 감사합니다 ... 나는 앱을 컴파일했기 때문에 앱이 32 비트라는 것을 알고 있습니다. 우리 연구소의 wow64에서 제대로 실행되고 있으며 다음 번에 고객의 시스템에 연결할 때 확인할 것입니다. – FrankTKO

1

IIRC를 사용하면 응용 프로그램이 실제로 유효한 32 비트 .exe 인 경우에도 dll 종속성 문제와 같은 다양한 이유로 인해이 오류 코드를 얻을 수 있습니다. 또는 Windows 로더가 32 비트 DLL과 동일한 이름의 경로에있는 64 비트 DLL로 혼동되는 경우

1

"자동으로 자식 프로세스 열기 및 프로필"옵션을 사용하여 종속성 워커를 사용하여 런타임 프로필을 수행 할 수 있습니다. 이렇게하면 런타임에 얼마나 멀어지고 어떤 의존성이 해결되는지 더 잘 알 수 있습니다.