解决方案 »
- 求教chart数据过多如何解决?
- 【求助专家】请问OpenFileDialog 是否可以设置读取默认文件夹路径
- 如何使用Parameter【】传递存储过程的参数??有例子最好,谢谢!!!
- 继承的dll窗体,现在,要给被继承窗体的只读属性赋值,该怎么做?
- “double”并不包含对“Format”的定义是怎么回事???double不能设定它的格式吗?
- 现在用.NET4.0开发的企业多吗?有.NET的产品吗?
- 100分求System.DirectoryServices.DirectoryEntry创建站点的相关方法
- C#和DirectX9画图问题
- 正则表达式的问题
- 在vs.net开发环境中,(注意是开发环境)由于需要在同一位置放置数个控件,怎样在放置新控件时隐藏原来控件避免互相干扰?
- [求助]如何让DataGridView像Excel一样点击列标题选中一列
- .net和java如何选择?
{
// TODO: Add extra validation here
// UpdateData(TRUE);
m_cardstate = _T("");
m_cardno = _T("");
m_cardclose = _T("");
m_device = _T("");
m_port = _T("");
m_deviceno = _T("");
int ret=0;
CString cardno,cardinfo;
ret=LQPORT_open();
if(ret==1)
m_port = _T("打开设备成功");
else
{
m_port = _T("打开设备失败!!");
goto end;
} ret=LQCheckReader();
if(ret==1)
m_device = _T("合法设备");
else
{
m_device = _T("非法设备!!");
goto out;
}
ret=LQCheck_Card();
if(ret==0)
{
m_cardstate = _T("新卡!!");
goto out;
}
else if(ret==1)
{
m_cardstate = _T("已初始化");
goto out;
}
else if(ret==2)
{
m_cardstate = _T("卡已发行");
}
else if(ret==3)
{
m_cardstate = _T("卡未初始化");
goto out;
}
else if(ret==4)
{
m_cardstate = _T("非法卡");
goto out;
}
else if(ret==5)
{
m_cardstate = _T("非识别卡");
goto out;
}
else if(ret==6)
{
m_cardstate = _T("卡密码有误");
goto out;
}
else if(ret==7)
{
m_cardstate = _T("卡已损坏");
goto out;
}
else if(ret==8)
{
m_cardstate = _T("无卡");
goto out;
}
else if(ret==9)
{
m_cardstate = _T("旧卡");
goto out;
}
else
{
m_cardstate = _T("异常卡");
goto out;
}
// 0--新卡 1--此卡已初始化 2---此卡已发行 3---此卡未初始化 4---此卡为非法卡 5---此卡为非识别卡
// 6---此卡密码有误 7--此卡已损坏 8--无卡 9---旧卡
// 其它--异常卡
cardinfo=LQRead_Card_Info();
m_deviceno = cardinfo;
cardno=LQGetCardNO();
m_cardno=cardno;
out:
ret=LQCPORT_close();
if(ret==0)
m_cardclose = _T("设备关闭成功");
else
m_cardclose = _T("设备关闭失败");
end:
UpdateData(FALSE);
// CDialog::OnOK();
return;
}void CDemoCardDlg::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
这个函数的C++定义,你贴出那么多干什么?
LQDKQDLL BSTR LQRead_Card_Info();//读卡信息
//返回 卡信息
LQDKQDLL BSTR LQRead_Device_Num();//读设备编号
//返回 设备编号
LQDKQDLL BSTR LQGetCardNO();//获取读卡号
//返回 卡号
LQDKQDLL BSTR LQGetOldInfo();//获取就卡信息
//返回旧卡信息
LQDKQDLL BSTR LQGetUSERID();//获取用户ID
//返回用户ID
LQDKQDLL BSTR LQGetresult();//获取结果
class CString{
char* m_pStr;
}
其实CString就是个char*,但是这个char*指向的字符串不一定是以'\0'结尾的,所以传递的时候肯定有问题
char * WINAPI LQRead_Card_Info();//读卡信息替换了DLL,现在就好了.谢谢大家了