遇到这个问题真是难,猜不到是哪里的问题;
具体情况如下:CTSCARD_API int fnCtsCard(void);
#ifdef __cplusplus
extern "C"
{
#endif // __cplusplu__declspec(dllexport) void __stdcall Init(int *count);
__declspec(dllexport) bool __stdcall Start();
__declspec(dllexport) void __stdcall Reset(int *ret);#ifdef __cplusplus
}
#endif // __cplusplus这是我的DLL文件里的,,就是start是bool型的,就是它出错
我在主程序里是这样的
CDataDll::CDataDll(CString sPath){
hLib=LoadLibrary(sPath);
if(hLib!=NULL)
{
Init =(INIT)GetProcAddress(hLib,"Init");
Start =(START)GetProcAddress(hLib,"Start");
Stop =(STOP)GetProcAddress(hLib,"Stop");
Dispose =(DISPOSE)GetProcAddress(hLib,"Dispose");
}}在别的地方动态创建,有的很正常,另一个地方不知道怎么搞的,一执行到xx->Start()就报标题的错了。
具体情况如下:CTSCARD_API int fnCtsCard(void);
#ifdef __cplusplus
extern "C"
{
#endif // __cplusplu__declspec(dllexport) void __stdcall Init(int *count);
__declspec(dllexport) bool __stdcall Start();
__declspec(dllexport) void __stdcall Reset(int *ret);#ifdef __cplusplus
}
#endif // __cplusplus这是我的DLL文件里的,,就是start是bool型的,就是它出错
我在主程序里是这样的
CDataDll::CDataDll(CString sPath){
hLib=LoadLibrary(sPath);
if(hLib!=NULL)
{
Init =(INIT)GetProcAddress(hLib,"Init");
Start =(START)GetProcAddress(hLib,"Start");
Stop =(STOP)GetProcAddress(hLib,"Stop");
Dispose =(DISPOSE)GetProcAddress(hLib,"Dispose");
}}在别的地方动态创建,有的很正常,另一个地方不知道怎么搞的,一执行到xx->Start()就报标题的错了。
解决方案 »
- Shell_NotifyIcon函数调用失败,返回1460错误代码。该怎么办呢
- DLL注入后监视用户的按键。。
- CDC对象可以直接序列化进去(出来)而不用做任何其他处理吗?
- 求一个 createprocess,多进程程序的框架例子
- 英业达这个公司到底怎么样啊??
- ::WaitForSingleObject(m_pReceiveFileThread->m_hThread,100); 是什么意思
- 请问:我用什么才能看发到邮箱里的CSDN邮件期刊??
- 视图大小问题,怎么回事?
- ◆→installshield6.2做出来的安装程序,运行安装后无法在控制面板内把应用程序卸掉,怎么办?
- 熟悉DLL的大虾,救命啊!!!!!!!!!!!
- 动态改变对话框控件和字体大小
- 图像处理,谁帮帮忙
不正常的情况,我是用CFileDialog去选另一个文件,路径和存放DLL的路径不一样,这个文件里面存有DLL的路径,然后调上面的函数,就不正常。没办法我试过,如果把这个文件的路径跟那个DLL放在一起或者放在DLL的上一级路径 就正常,
这个我真的很无奈,不理解
CFileDialog FileDialog(TRUE,NULL,".dll",OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_EXPLORER,NULL,NULL);
FileDialog.m_ofn.lpstrFilter="DLL File(.DLL)\0*.dll\0";
FileDialog.DoModal();
将调用该函数的文件选一下,就可成功,不选就不行,,我判断是路径的问题,CFileDialog把一个路径指向了最近打开的文件夹,如果路径不在一个目录下,调用就不成功,杂个办