⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_47646.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:47646 发表者:元帅 发表日期:2003-07-22 20:44:00
<br>主题:动态加载DLL需要注意那些问题啊?
<br>内容:我在OnButton里动态加载DLL可是只能LoadLibrary(),不能GetProcAddress(),这是为什么啊?//我已经把thread_Dll.dll文件考到我的Debug文件夹下了<BR>//这段程序是VC6.0技术内幕里第22章关于动态连接库的一段相似代码。<BR>OnButton()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;typedef int (*FUN1)(void);<BR>&nbsp;&nbsp;&nbsp;&nbsp;HINSTANCE hInstance;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FUN1 pfun1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;VERIFY(hInstance=::LoadLibrary("thread_Dll"));<BR>&nbsp;&nbsp;&nbsp;&nbsp;VERIFY(pfun1=(FUN1)::GetProcAddress(hInstance,"fnthread_Dll"));<BR>&nbsp;&nbsp;&nbsp;&nbsp;int result = (*pfun1)();<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString str;<BR>&nbsp;&nbsp;&nbsp;&nbsp;str.Format("%d",result);<BR>&nbsp;&nbsp;&nbsp;&nbsp;MessageBox(str);<BR>}
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:太平冰水 回复日期:2003-07-23 13:10:34
<br>内容:输出函数应该使用C标准调用,不能使用c++调用,具体就是用Extern “C”修饰导出函数
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:元帅 回复日期:2003-07-23 20:23:09
<br>内容:我的dll.h文件是<BR>#ifdef DLL_EXPORTS<BR>#define DLL1_API __declspec(dllexport)<BR>#else<BR>#define DLL1_API __declspec(dllimport)<BR>#endif<BR><BR>DLL1_API int fnthread_Dll(void);<BR><BR>不过,我在前面加了extern "c",也是没用的啊,即:<BR>extern "c" DLL1_API int fnthread_Dll(void);
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:元帅 回复日期:2003-07-24 22:22:50
<br>内容:我的问题解决了,谢谢你
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -