vs2012를 사용하여 VC6으로 빌드 된 다른 DLL (.lib)에 링크하는 작은 래퍼 DLL을 만듭니다.vc6 dll/lib에 링크 할 때 확인되지 않은 기호
내가 좋아하는 링크 오류를 얻을 : 내가 과거에했던대로,
error LNK2019: unresolved external symbol [email protected]
내가 링크 라인에 VC6 DLL을 함께 제공 lib 디렉토리 파일을 추가 ... 일부 버전의 문제는 여기에있다? VC6의 DLL 헤더 파일 내가 표준 방법입니다 생각의 함수를 선언
#define DLLIMPORT extern "C" __declspec(dllimport)
DLLIMPORT ULONG WINAPI functionName(...);
DUMPBIN 사용 /를 VC6 lib 디렉토리 파일에 대한 수출은 꼬마 도깨비 접두사없이 "FUNCTIONNAME"를 표시하고 "8 @".. 그게 문제인지 또는 그냥 덤프비가 좋고 나를 위해 쇠약 해지는지 확실하지 않습니다.
저는 윈도우 사용자가 아니며 링커가 기호를 찾지 못하는 이유를 모르겠습니다 ... 도움을!
다시 보내주십시오. 원하지 않습니다. DLLIMPORT 및 WINAPI를 삭제해야하지만, .h 파일에 나타나면 정확하지 않을 수 있습니다. –
음, 의견을 주셔서 감사합니다,하지만 왜 DLLIMPORT 및 WINAPI를 드롭해야합니까? DLLIMPORT는 컴파일러/링커에게 내가 참조하고있는 함수가 올바른 dll로 제공 될 것이라고 말하고 있습니다. WINAPI는 올바른 규칙이기도합니다. –
DLLIMPORT는 DLL에 __imp로 시작하는 * 추가 * 내보내기가 있다고합니다. WINAPI는 호출 규칙이 추가 @ 8을 생성하는 __stdcall이라고 말합니다. dumpbin.exe로는이 파일을 찾을 수 없으므로 다시 보내려합니다. 아무 쓸모가 없습니다. –