흑... 제가 만든게 아니에요 ㅠ_ㅠ
일단 답변주신대로 하려고 노력을 해봐야 겠네요..
감사합니다^^
둘리.CSIEDA 님이 쓰신 글 :
: 우선 path 를 걸어준다는것은
: 윈도우즈 환경 설정 입니다. 오에스가 해당 파일을 찾는 경로 설정이죠.
: 실행파일과 같은 위치에 있으면 궂이 패스를 걸어주지 않으셔도 되고요.
:
: VC 설치에 redist 라는 폴더가 있습니다. 거기에 debug / release mode 용 환경들이 있어요.
:
: 참고적으로
:
http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=en
:
: 를 가보세요..
:
: 배포 런타임 설치 입니다.. 물론 VC 버전에 따라 다르니 맞는것을 찾으세요.
:
: 또한 해당 DLL이 VC 의 표준 library 가 아닌 기타 다른 것들을 사용할 수 있으니..
: 해당 DLL을 만드신 분에게 여쭈어 보세요.. 직접 만드신거면.. 환경을 아실것 같군요..
:
: 그럼...
:
:
:
: 임형섭 님이 쓰신 글 :
: : 우선 답변 감사합니다.
: : 그런데 제가 이해력이 딸려서 그러는데 path를 빌더에서 설정 한다는 건가요?
: : 다시말해서 a.dll, b.dll 이라는 파일이 vc(이게 vs가 맞나요? vc가 맞는 건가요?) runtime library라면 이 파일들의 패스를 잡아주어야 한다는 것인지? 잡아준다면 프로젝트 옵션에서 링커를 잡는건가요?
: : 만약 위의 해석이 맞다면 혹시 vc 버전에 따른 배포 런타임 라이브러리 이름을 참고할 만한 싸이트 알려 주실수 있나요?(이건 너무 염치 없나...-_-;;;)
: :
: : 둘리.CSIEDA 님이 쓰신 글 :
: : : VC 로 만드신 DLL이시면 아마도 VC runtime library 들 문제일수 있습니다.
: : : LoadLibrary 로 dll을 로딩할때 VC 환경(해당 dll 이 돌기위한 vc runtime library)을 가져와야 로딩이 됩니다.
: : :
: : : vc 의 배포 런타임 라이브러리(흔히 dll 파일들이죠) 을 path 등 걸어 주셔야 합니다.
: : :
: : : VC도 버전에 따라 다르니 참고해보세요..
: : :
: : :
: : :
: : :
: : : 임형섭 님이 쓰신 글 :
: : : : LoadLibrary로 dll 파일을 불렀을때, NULL 값이 나오는 이유를 모르겠네요.
: : : : 파일이 존재만 한다면 NULL값이 안나와야 하는것 아닌가요?
: : : : HINSTANCE hInst = LoadLibrary(TEXT("asn1.dll")); 이런식으로 불렀는데 NULL값이 나오더군요
: : : : asn1.dll의 위치는 해당 프로젝트의 DEBUG폴더와 소스가 있는 폴더에 넣어놓았고, implib로 만든 lnk 파일도(이 dll이 vs로 작성된것이라서) 프로젝트 메니저를 통해서 add한 상태 입니다.
: : : : 혹시 dll을 만드는 방법에 따라서 로드가 될수도 되지않을수도 있는건가요?
: : : : 참고로 Memo1->Text = GetLastError를 통해서 보니 126 이 나오더군요. 이것이 ERROR_MOD_NOT_FOUND가 나오던데 상세설명이 The specified module could not be found더군요? 이게 파일을 못 찾겠다는것 아닌가요?
: : : : 이 상황을 이해 하지 못하겠네요. 그래서 다른 dll 파일을 같은 방식으로 했을때는 NULL값이 안나오던데...