아래와 같이 C++로 만든 dll에 델파이에서 만든 함수를 넘겨주려고 합니다.
CppFunction(Param1, DelphiFunction, Param2);
델파이에서 만든 함수는 다음과 같이 정의하였습니다.
procedure DelphiFunction(Param1, Param2); stdcall;
현재 작동은 안하는 건 아닌데 델파이에서 함수 선언을 어디에 해야 옳은 건지
통 모르겠습니다.
현재는
unit Child;
interface
...
type
...
private
...
public
...
end;
procedure DelphiFunction(Param1, Param2); stdcall; <= 여기에 선언
procedure DelphiProcedure(...); <= 여기에 선언하지 않으면 에러남.
implementation
...
procedure DelphiFunction(Param1, Param2); stdcall;
begin
...
DelphiProcedure(...);
end;
이렇게 되어 있는데, 문제는
첫번째, DelphiFunction 안에 사용할 함수들의 선언은 DelphiFunction과 같은 위치에
선언해줘야 한다. 즉 TForm.Function... 이렇게 할 수 없다.
두번째, 코딩 스타일이 깨진다. 즉 함수 선언을 하고 ctrl+shift+c를 하면 함수를
implement 할 수 있도로 자동으로 생성되는데 엉뚱한데 생긴다.
입니다.
어제 하루 삽질했는데 결론을 내지 못했습니다.
좋은 답변 부탁드립니다.
그럼, 오늘도 힘차게, 수고하세요~
|