请问一个DLL初级问题 程序运行一定要有特定的DLL,DLL中的函数是怎样被调用的,函数的入口参数和结果放在程序的什么地方. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 感谢两位朋友的帮助,可能我未说清楚,我的意思是:DLL中的函数是如何被调用的? 去找一些PE文件结构的资料看一下,再了解一下PE文件如何映射入内存运行,你就能理解了。 加载到内存中,call就行了,就像汇编中Jmp 给你一段调用dll的代码 自己看看就应该可以懂的HINSTANCE dllinstance; dllinstance=::LoadLibrary("EZDSK.dll"); if(dllinstance==NULL) AfxMessageBox("can't open dll file"); /////////////////////////////////////////////////////////////// typedef void (FAR __cdecl *Key_Download)(char KeyFileName[255],int); Key_Download KeyDownload; KeyDownload =(Key_Download)GetProcAddress(dllinstance,"Key_Download"); if(KeyDownload ==NULL) AfxMessageBox("can't find function"); else{ KeyDownload (fn , m_serial); czlvc(haha) ,您好.GetProcAddress()是不是封装在EZDSK.dll中的函数.还有,redteasoft(红茶) 说的"PE文件结构"是什么样子的,以前没听说过,请您也帮着指点指点好吗? 动态调用和静态调用.静态调用很简单,直接在将*.lib给包含进去就可以了.动态调用先声明要调用的函数,然后用LoadLibrary调用DLL,用完后用FreeLibrary释放就可以了. 在看《VC++图像处理》,有一个程序没看明白。 button 凹陷 修改颜色 符号在那面语句中有什么作用? 求一个日期控件!在双击windows状态栏右侧的时间时,弹出“日期/时间属性”对话框,其中左边那部分日期控件是怎么实现的? 全局变量 HWND hDlgML = CreateDialog(hInst,(LPCTSTR)IDD_TIPS,hwnd,(DLGPROC)DlgTips); 大家教教我msdn怎么用啊~ API函数设计有问题?各位慎用 串口通信是指什么? 请教!!! 请教一个刷新的问题 请问如何将DC保存到一个CBitmap对象中。 想赚钱的高手请进!!!!!
HINSTANCE dllinstance;
dllinstance=::LoadLibrary("EZDSK.dll");
if(dllinstance==NULL) AfxMessageBox("can't open dll file");
/////////////////////////////////////////////////////////////// typedef void (FAR __cdecl *Key_Download)(char KeyFileName[255],int);
Key_Download KeyDownload;
KeyDownload =(Key_Download)GetProcAddress(dllinstance,"Key_Download");
if(KeyDownload ==NULL) AfxMessageBox("can't find function");
else{ KeyDownload (fn , m_serial);
静态调用很简单,直接在将*.lib给包含进去就可以了.
动态调用先声明要调用的函数,
然后用LoadLibrary调用DLL,用完后用FreeLibrary释放就可以了.