여러 이름으로 같은 DLL 기능을 내보내기 : 대부분의 경우같이, 내 DLL에서 일부 기능을 만들었습니다
export
DoThis,
DoThis name 'DoThat';
이 "이름 바꾸기 :
procedure DoThis(A: PChar): Boolean; stdcall;
begin
f := TFileStreamCreate(A, fmCreate);
f.read()
f.free;
end;
는 내가이 이름 아래 수출 "작품. 그러나 적어도 하나의 경우에는 "DoThat"이라는 이름을 바꾼 함수가 실제 파일의 데이터를 읽지 않고 무효화 된 데이터를 읽습니다. 같은 파일에서 DoThis를 호출하면 멋지게 작동합니다.
할 일이 "이름 바꾸기"가 아닌 합법적 인 것입니다 나는 모든 메모리가
그래서 질문은 (일반 콘솔 응용 프로그램에 코드를 변환) FastMM4가 덕분에 누수 제거?
합법적 인 경우 콘솔 앱으로 변경하지 않고 FastMM4로 DLL을 디버깅 할 수 있습니까?
당신이 설명하는 것은 증명하지 않으면 일어날 수없는 일입니다. 가짜 코드를 붙여 넣지 마십시오. 완전한 프로그램 인 실제 프로그램을 붙여 넣으십시오. 가짜 코드는 모든 사람의 시간 낭비입니다. –
200kB 이상의 코드는 여기에 붙여 넣을 수 없습니다. 나는이 문제에 대한 해결책을 찾고있는 것이 아니라 단지 2 가지 질문에 대한 답을 찾고있다. – Tom
게시글은 코드의 축소판입니다. 당신은 20-30 라인 만 있으면됩니다. 그 컷 다운 재현을 만드는 행위는 그 문제가 다른 곳에 있다고 당신에게 확신시킬 것입니다. –