用VS2005编译了一个C++的DLL,有点问题,请各位大哥帮帮我,谢谢。。。。。。。。。。。。。。。。。。。。。。。。。
我用VS2005编译了一个C++的DLL,类型是“带静态链接MFC的规则DLL”,现在想看看外部传进来的字符串参数是否正确,该用什么语句呢?
DLL中的导出函数:
extern "C" __declspec( dllexport ) void Dcm2Bmp(char *pFileName)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
AfxMessageBox(pFileName);
CDcmBmp m_DcmBmp;
strcpy(m_DcmBmp.m_strFileName, buf);
m_DcmBmp.ConvertDicomToBMP();
}
如上所示,我试着用AfxMessageBox(pFileName);查看传进来的字符串是否正确,但项目调用时,根本弹不出显示pFileName所指字符串的对话框,编译可以通过,但运行时出一个错误提示,还没看清,程序就自动终止了,就啥也没有了,怎么回事呢?但在另一个地方有段代码:
fp = fopen(pszFileName, "rb");
if (!fp)
{
AfxMessageBox(_T("Failed to open file for read."));
return;
}
这段代码就可以输出字符串"Failed to open file for read.",也正是因为老是打不开文件,所以我想看看传进来的路径字符串到底是什么(因为我怀疑传进来的字符串不对),因为若把上面的程序改成:
fp = fopen(“"\\My Documents\\ct1.dcm"”, "rb");
if (!fp)
{
AfxMessageBox(_T("Failed to open file for read."));
return;
}
就可以打开文件,一切都顺利,但就是从外部传进来相同的路径字符串,就是打不开,老跳出对话框“Failed to open file for read.”,所以我想看看传进来的路径字符串到底变成了什么,用开头我说的那个AfxMessageBox(pFileName);不行?那我要怎么办呢?望大家不吝赐教,谢谢啦!!!!!
DLL中的导出函数:
extern "C" __declspec( dllexport ) void Dcm2Bmp(char *pFileName)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
AfxMessageBox(pFileName);
CDcmBmp m_DcmBmp;
strcpy(m_DcmBmp.m_strFileName, buf);
m_DcmBmp.ConvertDicomToBMP();
}
如上所示,我试着用AfxMessageBox(pFileName);查看传进来的字符串是否正确,但项目调用时,根本弹不出显示pFileName所指字符串的对话框,编译可以通过,但运行时出一个错误提示,还没看清,程序就自动终止了,就啥也没有了,怎么回事呢?但在另一个地方有段代码:
fp = fopen(pszFileName, "rb");
if (!fp)
{
AfxMessageBox(_T("Failed to open file for read."));
return;
}
这段代码就可以输出字符串"Failed to open file for read.",也正是因为老是打不开文件,所以我想看看传进来的路径字符串到底是什么(因为我怀疑传进来的字符串不对),因为若把上面的程序改成:
fp = fopen(“"\\My Documents\\ct1.dcm"”, "rb");
if (!fp)
{
AfxMessageBox(_T("Failed to open file for read."));
return;
}
就可以打开文件,一切都顺利,但就是从外部传进来相同的路径字符串,就是打不开,老跳出对话框“Failed to open file for read.”,所以我想看看传进来的路径字符串到底变成了什么,用开头我说的那个AfxMessageBox(pFileName);不行?那我要怎么办呢?望大家不吝赐教,谢谢啦!!!!!
...全文
相关推荐
VS2005 Debug Runtime DLL
若你使用VS2005版開發,但移至另一台pc上無法執行時,很有可能是少了這些dll。把這個壓縮檔解開後,整個資料夾放置在你的exe或dll的旁。這樣xp就可以自動找到對應的dll。資料夾的名字不能改!
Win7_VS2005_C++工程X64环境调用编译好的ARPACK的dll和lib求解特征值特征向量
Windows7系统下VS2005的C++project,演示如何调用编译好的ARPACK_X64dll&lib;,以及特征值特征向量的求解演示。
C#_VS2005调用C++DLL
C#_VS2005调用C++DLL
解决VS2005生成的exe文件不能在没有安装过VS2005的机子上运行的问题
解决VS2005生成的exe文件不能在没有安装过VS2005的机子上运行的问题,安装过这个后,就可以发布release(发布版)的
VS_2005_创建DLL工程
VS_2005_创建DLL工程,创建DLL文件、扩展接口、如何开发DLL文件的说明教程


进程/线程/DLL
