首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

高分!c++调用dll中的函数的现实方式

2012-02-06 
高分求救!!c++调用dll中的函数的现实方式现在有一个第三方的dll,我想用c++调用dll中的方法,请问应该怎样做

高分求救!!c++调用dll中的函数的现实方式
现在有一个第三方的dll,我想用c++调用dll中的方法,请问应该怎样做呢?按照网上说的做了,还是不成功,本人对C++不太熟悉,我是用DEV C++来写的,但是编译时提示“`HINSTANCE' undeclared (first use this function) ”,请问是怎么回事呢?请高手指教!谢谢!
我的代码如下:

int main(int argc, char *argv[])
{
   
//装载加密/解密DLL
HINSTANCE hdll=NULL; 
hdll=::Load Library ("Mwic_32.dll");
//通过类型定义语句typedef来定义函数指针类型
Typedef BOOL (_stdcall *lpFileEncrypt)(LPCTSTR, LPCTSTR, LPCTSTR, LPCTSTR);
//函数声明
LpFileEncrypt FileEncrypt1;
//获取加密函数File Encrypt的函数指针
FileEncrypt1=(lpFileEncrypt)::GetProcAddress(hdll,"ic_init");
//调用DLL中加密函数File Encrypt对文件加密,user-12345678为软件注册号
int a=FileEncrypt1(0,9600);
//释放DLL模块
::AfxFreeLibrary(hdll);
printf("result="+a);
   
}


[解决办法]

C/C++ code
#include<windows.h>#include<stdio.h>int main( int argc, char *argv[] ){//装载加密/解密DLL    HINSTANCE hdll = NULL;    hdll = LoadLibrary ( "Mwic_32.dll" );//通过类型定义语句typedef来定义函数指针类型    typedef BOOL ( _stdcall *lpFileEncrypt )( LPCTSTR, LPCTSTR, LPCTSTR, LPCTSTR );//函数声明    lpFileEncrypt FileEncrypt1;//获取加密函数File Encrypt的函数指针    FileEncrypt1 = ( lpFileEncrypt )::GetProcAddress( hdll, "ic_init" );//调用DLL中加密函数File Encrypt对文件加密,user-12345678为软件注册号    int a = FileEncrypt1( "1", "2", "3", "4" );//释放DLL模块    FreeLibrary( hdll );    printf( "result=" + a );}
[解决办法]
HINSTANCE是Windows.h里的吧

顺便说一句,devc++没什么前途

热点排行