首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于win32 Dynamic-Link Library的有关问题

2012-01-26 
关于win32 Dynamic-Link Library的问题我用VC6++建立了win32Dynamic-LinkLibrary的dll,里边写了一个用ado

关于win32 Dynamic-Link Library的问题
我用VC6++   建立了win32   Dynamic-Link   Library的dll,里边写了一个用ado连接oracle数据库的函数如下   ,问题是怎么才能将查出内容用MessageBox显示,最后的返回值应该怎么给?

这个dll中没有CString   或   String

int   myconn()
{
char   *aa;
  ...
  m_pRecordset   =   m_pConnection-> Execute( "select   a   from   tablename   where   t.id=1 ' ",&RecordsAffected,adCmdText);  
_variant_t   vIndex   =   (long)0;  
vCount   =   m_pRecordset-> GetCollect(vIndex);
m_pRecordset-> Close();
aa=(char*)(_bstr_t)vCount;
MessageBox(0, "这里应该把该字段值显示出来 ", "调试对话框 ",1);
return   这里应该怎么给返回值
;

}

[解决办法]
返回值是什么这个完全自己定的,比如我可以这样写:
int rtn = MessageBox(0, "这里应该把该字段值显示出来 ", "调试对话框 ",1);
return rtn;

另外1:你的excute语句似乎引号不匹配哦。

另外2:MessgeBox的调用应该在界面模块中完成,不应该在逻辑模块中完成,MessageBox(0,...)这样的调用往往会导致混乱。
[解决办法]
可以用CHAR* 建议楼主 返回类型用BOOL 在参数中返回char*
你的接口成功与否都不是很清楚,这样写不妥当
如果返回类型一定是CHAR*的话,如果失败请返回NULL
[解决办法]
用MESSAGEBOX调试不是最好的办法。

热点排行