2012-05-10 4 views
4

컴파일하기 전에 프로젝트에 dcu 파일을 추가하고 싶습니다. 나는 OTA를 이것을 사용하려고 노력하고있다. IOTAProject에서 파일 (AddFile())을 추가 할 수있는 옵션이 있지만 dcu를 추가하려고하면 허용되지 않으며 파일을 내 프로젝트의 첫 번째 파일로 설정해야합니다.[OTA] 컴파일하기 전에 프로젝트에 dcu 파일 추가

내가 좋아하는 어떤 것을 시뮬레이션 싶습니다

------------------ Original project 
program Project1; 

uses 
    Forms, 
    Unit1 in 'Unit1.pas' {Form1}; 
etc... 

------------------- Before compile I intercept it and set 
program Project1; 

uses 
    MyDCU, //Add this 
    Forms, 
    Unit1 in 'Unit1.pas' {Form1}; 
etc... 

------------------ After compile remove and it came back to 
program Project1; 

uses 
    Forms, 
    Unit1 in 'Unit1.pas' {Form1}; 
etc... 

애프터/차단을 컴파일하는 것은 문제가되지 않습니다 전에 IOTAIDENotifier 나에게 작업을하는 데 필요한 인터페이스를 제공합니다. 문제는 내 프로젝트의 첫 번째 파일로 dcu 파일에만 있습니다.

누군가 나를 도울 수 있습니까? Tks

+0

프로젝트 옵션에서 컴파일 옵션을 사용하기 전과 후에 컴파일 옵션을 사용할 수있는 것은 유틸리티 패키지를 호출하는 것입니다. – ComputerSaysNo

+0

@Dorin Duminica, 나는 내 글을 편집했다. 대답은 Tks. 그러나 컴파일 인터 셉션에 문제가있는 것은 아니며 문제는 dcu입니다. –

+0

나는 dpr을 텍스트 파일로 바꾸고, 필요한 것들을 추가하고, 저장하고, 제거한 후 다시 저장하려고 생각하고있다. 그러나 나는 그것을 피하기위한 해결책을 찾고있다. –

답변

1

OTA가 CodeDom을 제공하지 않기 때문에 (내가 아는 한) 유일한 방법은 BeforeCompile Notification을 가로 채고 프로젝트 파일 (IDE 버전은 파일 시스템이 아님)을 구문 분석하여 추가하는 것입니다 uses 절 자신에게. 그렇게하면 수정 된 내용을 IDE 버퍼로 다시 스트리밍합니다.

+0

사실, 이것은 'DelFor' 전문가가 코드를 다시 포맷하기 위해 사용하는 메커니즘입니다 (PAS 및 DPR 파일 포함). – menjaraz

관련 문제