다음 기능을 변환 중입니다. 그러나 새로운 변환 된 함수는 실행되지 않습니다. 어떤 아이디어?__declspec을 _export C++로 변환하십시오.
올드 기능
통근자 "C"
DWORD의 __declspec (dllexport) FAR Func라고 (숯불 *의 값 1, INT의 *의 값 2)
새로운 기능
통근자 "C"
DWORD _export FAR Func라고 (문자 * value1, int * value2)
다음 기능을 변환 중입니다. 그러나 새로운 변환 된 함수는 실행되지 않습니다. 어떤 아이디어?__declspec을 _export C++로 변환하십시오.
올드 기능
통근자 "C"
DWORD의 __declspec (dllexport) FAR Func라고 (숯불 *의 값 1, INT의 *의 값 2)
새로운 기능
통근자 "C"
DWORD _export FAR Func라고 (문자 * value1, int * value2)
_export는 최신 버전의 Visual C++에서 더 이상 사용되지 않습니다 (here 참조).
나 this article을 인용 보자 : 단순히 _declspec()가 스토리지 클래스 한정자이기 때문에 _declspec() 및 __export로 __export 교체하여 16 비트 및 32 비트 코드는 유형에 대한 단일 소스를 유지하는 것은 불가능합니다 수식어.이 기사에서는 _export가 16 비트 프로그램에서만 작동한다는 것을 설명합니다. 따라서 실제로 16 비트 프로그램과 DLL을 생성해야합니다.
어떤 오류가 있습니까? 디버거를 사용하여 단계별 실행을 시도 했습니까? –
'__declspec (dllexport) '의 문제점은 무엇입니까? '_export' 정의는 무엇입니까? 올바른 DLL을 사용하고 있는지, 기호를 내 보낸 지 확인하십시오. – jweyrich
문제가 해결되었습니다. 이 프로그램은 Delphi C++ 빌더로 작성되었습니다. 프로그램을 컴파일 할 때 컴파일러는 해당 함수에 대한 특정 인덱스를 제공합니다. 하지만 고정 인덱스를 사용하여 그 함수를 호출했습니다. 고마워. – sMah