2021년 11월 21일 일요일

델파이 11 버전으로 만들어진 윈도우32비트 실행파일을 윈도우XP에서 실행하기.

아직도 각종 기기를 제어하는 시스템에는 윈도우XP를 상당 사용하고 있습니다. (시스템 프로그램에 굳이 비용과 아이센스측면에서 윈도우7 이상을 사용할 이유는 없는 경우가 많습니다) 

iMac 에서 윈도우프로그램을 델파이로 만들어 실행파일을 돌려볼라치면 부트캠프를 사용하거나, 파라랠즈 같은 가상머신을 돌려서하는 방법이 있습니다. 

그런데 가상머신의 용량이 너무커서 부담이되어 패러럴즈에서 윈도우 XP를 설치하여 실험하면 좋겠다고 생각되어 XP를 설치하였습니다.

윈도우 10은 Lite버전을 설치한 후 델파이11 Alexandria 을 설치하였고,
윈도우 XP는 OS만 설치한후 용량입니다.

델파이11버전으로 윈32실행파일을 생성하여 XP에서 실행하려고 하면 "올바른 Win32응용 프로그램이 아닙니다"(아래)라는 경고창을 볼 수 있습니다.

구굴링해본 결과 델파이 11버전의 업그레이드버전에서는 문제가 해결되었다고 하네요.

업그레이드 이전 버전에서는 (수정. 2021.11 업그레이드 이후에도 아래와 같이 바꾸어주어야함)

 PE Header  부분을 6.0 에서 5.1로 수정하면 되더군요.



또는 프로젝트 소스에서 
program notepad_clone;
{$SETPEOSVERSION 5.1}     // 5.1 로 변경
{$SETPESUBSYSVERSION 5.1} // 5.1 로 변경 

만약 쓰레드를 사용하는 경우에는  Delphi 11 Windows XP compatibility tweak 을 참조하세요.

#delphi11 #windowsxp #windows32 #올바른 Win32 응용 프로그램 #delphi







댓글 없음:

델파이 12.1이냐 11.3이냐?

 델파이가 12.1이 나왔습니다. 혹시 11.3버전의 커뮤니티버전이 필요하시는분이 있을 수 있을 것 같아 https://altd.embarcadero.com/.../RADStudio_11_3_esd_28... 와 이것 찾느랴 엄청고생함.