2014-10-09 131 views
-2

我有一個DLL明確鏈接,我想使用。在ezcad中使用dll與C++

我創建這個代碼:

#include "StdAfx.h" 
#include <windows.h> 
#include <iostream> 
#include <tchar.h> 
#include <MarkEzdDll.h> 
#include <TCHAR.H> 
#include<HLink.h> 
typedef int (__stdcall *Thiago)(); 

int main() 

{ 


HINSTANCE hEzdDLL = LoadLibrary(_T("C:\\Users\\Thiago\\Desktop\\DLL\\Debug\\MarkEzd.dll")); 
Thiago lmc1_Initial = (Thiago)GetProcAddress(hEzdDLL , "lmc1_Initial"); 
lmc1_Initial(); 

} 

但不是機能的研究,錯誤是:

Unhandled exception at 0x10007f76 (MarkEzd.dll) in DLL.exe: 0xC0000005: Access violation reading location 0x00000004. 

我做什麼?

回答

1

檢查返回的錯誤代碼,如果它是NULL,則表示有錯誤。

根據these sources(並假設您目前使用相同的庫),簽名居然是:

typedef int (*LMC1_INITIAL)(TCHAR* strEzCadPath, BOOL bTestMode, HWND hOwenWnd);