델파이나 C++빌더의 IDE 안에서 프로젝트를 Run으로 실행시킨 경우인지 여부를 코드에서 확인해야 할 경우가 있습니다. 물론, 컴파일된 모드가 디버그 모드인지 릴리즈 모드인지를 확인하기 위해서는 컴파일러 디렉티브 _DEBUG를 쓰면 되는데요.디버그 모드로 컴파일되어있는지가 아니라 IDE 안에서 Run으로 실행된 경우, 즉 현재 디버깅 진행중인지를 알아내려면 전역변수 DebugHook의 값을 검사하면 됩니다. 이 DebugHook의 값이 0보다 크면 디버깅 중인 것입니다.델파이라면...procedure TForm1.Button1Click(Sender: TObject);begin if DebugHook>0 then ShowMessage('디버깅 중입니다.');end;C++빌더라면...void __fastcall TForm1:...more
델파이로 서드파티 컴포넌트의 패키지 프로젝트(.dpk)를 사용자인 개발자가 직접 컴파일할 때, DesignIntf 유닛에서 컴파일러 에러가 나는 경우가 있습니다. 이런 경우에는 흔히 ToolIntf, DesignEditors, Proxies 등의 유닛들도 같이 걸리는 경우가 많습니다.많은 초중급 델파이 개발자들이, 이런 에러를 만나면 일단 이들 유닛들의 pas 혹은 dcu 파일을 찾아서 해결하려고 접근합니다. 게다가, 열심히 찾는 개발자들의 경우, 그 노력에 부응하듯이, 델파이가 설치된 디렉토리 아래에서 이들 파일들의 pas 소스를 찾아내게 됩니다. 그러면 너무나 당연한 공식처럼, 이 파일들을 찾아낸 개발자들은 패키지 프로젝트에 이들 파일을 추가하거나...more