|
내용을 대략 해석해보면...
AnsiString 같은 스트링 객체를 파라미터 혹은 리턴값으로 DLL에서 사용했을때 Memmgr.lib를 프로젝트에 추가해서 같이 컴파일해주어야합니다.
메모리 운영상 최적화로 맞추어주기 위해 Borlndmm.dll을 사용하기 때문에 DLL과 EXE의 호출 규칙이 변경
될것때문에 사용하는것 같습니다.
즉, memmgr.lib를 추가해서 컴파일했다면 배포시에 borlndmm.dll을 같이 배포해주어야합니다.
예전에 이런것이 찝찝해서 인자값과 리턴값을 모두 char* 등으로 수정해서 처리했던 기억이 납니다.
만약 AnsiString 등을 사용했다면 그냥 memmgr.lib 추가하고, borlndmm.dll 배포시 같이 배포한다고
생각하시면 될듯합니다.
(예전에 이것때문에 고민했던거 같은데... 기억이 가물거리네요.. ^^;)
nuru 님이 쓰신 글 :
: 안녕하세요..
: DLL을 작성할때 파라메타로 AnsiString 형을 넘기거나 반환값을 AnsiString형으로 받기도 하고 잇습니다.
: 그런데 Dll 작성을 하면 소스상에 주석으로 해서 Memmgr.lib를 추가 하라고 하는 것 같은데
: 메뉴에 프로젝트에서 프로젝트에 memmgr.lib를 추가해 주어야 하나요?
: 메모리 관리상에 문제 라고 하던데 어떤 의미 인지 확실히 모르겟습니다.
:
: 고수님들의 도움을 기다리고 있겠습니다.
|