아래와 같이 DLL 프로젝트에서 Unit를 하나 만들어서 record를 만들었고요
type TmyRecord = packed record
myinfo : integer;
myname : string[8];
myAddress : string[20];
comment : string[20];
end;
GetRec 라고 DLL에서 export된 함수를 하나 만들었습니다. (물론 DLL 프로젝트에 선언해주었숩니다)
이 함수를 외부에서 호출시 리턴값으로 위 레코드 값 모두를 날려줄려고 합니다.
Application에서 함수 호출시(VC++로 구현된 program) 위 레코드를 참조하여 값을 조회해보려고 하는것이죠.^^
function Getmyrec(???) : (리턴값 타입);
begin
result := 레코드 정보;
end;
리턴값형으로 integer,string,char..이렇게 정의된 형은 쓰는데..레코드로 처리하고자 할때는 못본거 같네요.
리턴값으로 레코드의 모든 데이터값을 보내주려고 할때 리턴값 처리와 함수처리시 주의할 점음
무엇인지 궁금합니다. 고수님덜의 조언바랍니다.
myinfo : integer;
myname : string[8];
myAddress : string[20];
comment : string[20];
end;
procedure Getmyrec(p : pointer );
var pTmyRecord : ^TmyRecord;
begin
pTmyRecord := p;
TmyRecord^.myinfo := 0;
TmyRecord^.....
end;
VC에서는 당근 Object(상기 Structure로 생성된)의 Pointer를 날려주시면 끝...