Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[10329] 링크드리스트 문제...
Genie [msj0191] 1237 읽음    2005-11-02 17:56
델파이에서 dll 로 링크드리스트를 써서 값을 가져올려고 하는데 잘않되네요.
c++에서 값은 잘들어가는데 delphi 에서 가져올때 문제가 있는것 같습니다.

무엇이 문제일까요?

//////////////////////////////////////////////////////
// delphi source
type
   PTEST = ^TEST
   TEST = packed record
   Index : Ingeger;
   NEXT : PTEST;       
end;

TFunc = function(Output:PTEST):Integer; stdcall;

var
H : Handle;
TEST_F:TFunc;
Output : PTEST;

begin

H := LoadLibrary('TEST.DLL');
@TEST_F := GetProcAddress(H, 'TEST_OUT');
New(Output);
Result:=TEST_F(Output);

while(Output <> nil) do
begin
{ 막상돌리면 여기에 값이 없음...}
nIndex := Output^.Index;
Output := Output^.NEXT;
end;

end;

//////////////////////////////////////////////////////
// c++ source
typedef struct TEST
{
int Index;
TEST* NEXT;   
}

TEST* head, *New,*current = NULL;

int WINAPI EXPORT TEST_OUT(TEST* pTest)
{
pTest = NULL;
head  = NULL;
New   = NULL;
current = NULL;   

New = (PTEST*)malloc(sizeof(PTEST));   
New->pNext = head;
head = New;
New->Index = 1;

New = (PTEST*)malloc(sizeof(PTEST));   
New->pNext = head;
head = New;
New->Index = 2;

New = (PTEST*)malloc(sizeof(PTEST));   
New->pNext = head;
head = New;
New->Index = 3;

pTest = head;

return 0;
}

+ -

관련 글 리스트
10329 링크드리스트 문제... Genie 1237 2005/11/02
10331     Re:링크드리스트 문제... 박무개 1172 2005/11/03
10330     Re:링크드리스트 문제... civilian,안영제 1391 2005/11/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.