답장이 늦어서 죄송하네요. 올려달라고 해놓고 잊고 있었습니다.
델파이쪽에서 호출할 때 함수 선언을 다음과 같이 수정하세요.
procedure seedD(psStr:pChar;outlen:pInteger;cIn:pChar;inlen:integer);cdecl; external 'seedD.dll' name '_seedD';
혹은,
procedure _seedD(psStr:pChar;outlen:pInteger;cIn:pChar;inlen:integer);cdecl; external 'seedD.dll';
다음 글을 참고하시구요.
http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_tutorial&no=125
그럼...
혀니 님이 쓰신 글 :
: #include <vcl.h>
: #include <windows.h>
:
:
: #pragma argsused
: int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
: {
: return 1;
: }
: ...중간에 함수들 있음 ....
:
: void seed(char *out, int *outlen, char *in, int inlen)
: {
: 값처리함
: }
:
: extern "C" void __declspec(dllexport) seedD(char *out, int *outlen, char *in, int inlen)
: {
:
: seed(out,outlen, in, inlen);
:
: }
:
:
:
: 박지훈.임프 님이 쓰신 글 :
: : C++빌더 코드에서 선언한 엑스포트 프로토타입을 보여주셔야...
: :
: :
: : 혀니 님이 쓰신 글 :
: : : seedD.dll파일의 프로시져 seedD을 가져다 쓸려고 합니다.
: : : '프로시저 시작 지점 seedD을(를) DLL seedD.dll에서 찾을수없습니다' 라고 에러메세지가 드구요
: : :
: : : procedure seedD(psStr:pChar;outlen:pInteger;cIn:pChar;inlen:integer);cdecl; external 'seedD.dll';
: : :
: : : 형태로 가져다가 implementation 아래에 놓았습니다.
: : : 같은 폴더안에 dll파일도 놓았구요...
: : :
: : : 뭐가 잘못일가요?
: : :
: : : 참고로 bcb에서는 그대로 사용되었습니다...