1、vs2005 smartcard
在使用vs2005时,如果要用到SCardEstablishContext(),SCardListReaders()等系列函数需要在项目中添加库,具体步骤是:
在项目-->项目属性-->链接器-->输入-->附加依赖项-->winscard.lib
在使用VC++6.0时同样需要做相应的添加
2、>LINK : 没有找到 E:\DownLoadTool\同方CosDownLoad\USCosDownLoad\Debug\USCosDownLoad.exe 或上一个增量链接没有生成它;正在执行完全链接
其实这个提示并不影响最后的编译结果,出这个提示的原因是因为你的工程文件(我的为USCosDownLoad.sln)并没有放到代码文件中(USCosDownLoad)下,所以在编译完以后在\USCosDownLoad\Debug目录下就不会出现USCosDownLoad.exe,而会出现在同方CosDownLoad\Debug目录下。
解决方法也很简单,把USCosDownLoad.sln和代码文件放到同一个目录下就好了。
3、错误 1 error C2065: “IDD_USCOSDOWNLOAD_DIALOG”: 未声明的标识,明明自己在资源里创建的却报未声明
解决需要自己包含头文件 #include "resource.h"
4、错误 1 error C2061: 语法错误 : 标识符“CUSCosDownLoadDlg” e:\downloadtool\qhtfcosdownload\uscosdownload\uscosdownload\cosdownloadapi\device.h 43
解决方法:在头文件里先声明类class CUSCosDownLoadDlg;
然后再CPP文件中包含类的头文件#include "..\USCosDownLoadDlg.h",如果不包含会提示该类未定义
5、在将主窗口指针传给外部函数时,主窗口卡死
解决方法:在外部函数中调用AfxGetApp()->m_pMainWnd,获取主窗口的句柄,切记不能用AfxGetMainWnd,如果你不是在主线程中调用 AfxGetMainWnd(),那么你就得不到程序的主窗口,正如我现在做的一个程序中用到的UI线程