안녕하세요.
프로그램을 ActiveX로 개발을 하였는데..
같은 소스로 App로도 컴파일하여.. 실행파일을 생성하게끔 하려 합니다.
소스관리를 편하게 하려면 아무래도 같은 소스를 이용해야 할듯 해서..
컴파일 지시자로 구분해서 컴파일 하려 하는데..
오류가 발생합니다..
다음과 같은 구문은..
메인 Form이 TActiveForm을 상속받는 화면이구요,, 익스플로어에 달라 붙는 화면입니다.
일반 App에서는 그냥.. TForm을 상속 받아야겠죠..
그런데 다음과 같이 하면 컴파일 지시자가 적용되지 않나요?
{$IFDEF activeX}
TClientMain = class( TActiveForm )
{$ELSE}
TClientMain = class(TForm)
{$ENDIF}
MainMenu1: TMainMenu;
StatusBar: TStatusBar;
MDebug: TMenuItem;
....
위 구문을 컴파일하면.. TClientMain = class(TForm) 에서
" Expected ':' but '=' found. " 컴파일오류가 납니다..
컴파일지시자가 안먹는거 같습니다..
만약 또 다른 방법이 있다면 조언 부탁드립니다..
Dawndew....
잘못된 구문은 아니지만... 폼이나 데이터모듈처럼 따로 리소스를 쓰는 곳에서는 될 수가 없죠... 리소스파일에(.DFM) 모든 정보들이 다 들어 있으니까요...
제 생각엔 프레임을 이용하시는 것이 좋을듯 하네요... 폼의 모든 컨트롤과 그에 관련된 이벤트, 기타 행동등을 프레임에서 처리하고 메인폼과 ActiveX폼에서는 그 프레임을 불러서 쓰시면... 변경은 프레임만 하시면 되니까요...
^^ 항상 즐코하세요...