MFC調用DLL操作数据库并显示结果集.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MFC調用DLL操作数据库并显示结果集

功能说明:可打开一个数据库,获取其中任何一个表格的内容,DLL生成的工程和调用的工程在同一工作空间,DLL库中的函数调用声明是__stdcall方式,用.def文件导出函数。 一、用MFC中的CListCtrl控件创建一个列表 ? ? ? ? 1、创建一个MFC工程 ? ? ? ?新建(New)——工程(Project)——MFC AppWizard(exe)——填好工程名(Project Name)——确定(OK)——选择基本对话框(Dialog)——完成 (Finish) ????????2、添加列表控件(CListCtrl) ? ? ????在工作区打开ResourceView界面在Dialog文件夹中找到建立?的窗口,在控件工具栏里面选择列表控件拖入到窗口中,用鼠标拖拽的方式设 ????定合适的大小(如果没有控件工具栏,右击窗口工具栏,在弹出的列表中点击选中控件即可)。 ????????3、关联对象变量 ? ? ? ? 点击选中新添加的列表控件,点击菜单栏中的查看,选中建立类向导,在弹出的窗口中选择Member Variables选项卡,在Contrls IDs:列中招列表控件对应的ID(查看ID可右击列表控件,选择属性即可)并双击(或者点击选中后再点击窗口左边的Add Variable按钮),在弹出的窗口中设置对象的名字及类型。 ????????4、设置列表控件的风格 ? ? ????在OnInitDialog()中添加下面的代码: ? ? ????LONG lStyle; ??? ????lStyle = GetWindowLong(m_List.m_hWnd, GWL_STYLE); ? ?//获取当前窗口style ??? ????lStyle = ~LVS_TYPEMASK; ? ??//清除显示方式位 ??????? lStyle |= LVS_REPORT; ? ??//设置style ??? ????SetWindowLong(m_List.m_hWnd, GWL_STYLE, lStyle); ? ?//设置style ??? ????DWORD dwStyle = m_List.GetExtendedStyle(); ??? ????dwStyle |= LVS_EX_FULLROWSELECT; ? ?//选中某行使整行高亮(只适用与report风格的listctrl) ??? ????dwStyle |= LVS_EX_GRIDLINES; ? ?//网格线(只适用与report风格的listctrl) ??? ????dwStyle |= LVS_EX_CHECKBOXES; ? ?//item前生成checkbox控件 ??? ????m_List.SetExtendedStyle(dwStyle); ? ??//设置扩展风格 二、创建生成DLL文件的工程 ? ? ? ? 1、添加一个新的工程到当前工作空间中 ? ? ? ? 工程——增加到工程——新建——工程选项卡——Win32 Console Application——填好工程名——选择添加到当前工作空间——确定 ? ? ? ? 2、在DLL工程中添加.cpp文件,首先导入ADO动态链接库msado15.dll代码如下: ? ? ? ? #import c:Program Files\Common Files\System\ado\msado15.dll no_namespace rename(EOF,adoEOF) ? ? ? ? 定义三个主要的操作对象: ? ? ? ? _ConnectionPtr m_pConnect; ? ?//定义链接对象 ? ? ? ? _RecordsetPtr m_pRecord; ? ?//定义记录集对象 ? ? ? ? _CommandPtr m_pCommand; ? ?//定义命令对象 ? ? ? ? 编辑相关的函数,初始化COM和链接数据库函数、获取记录集函数等,如: ? ? ? ? //初始化COM库和链接数据库 ? ? ? ? _ConnectionPtr __stdcall OnInitADOConn(_bstr_t strConnect) ? ? ? ? { ? ? ? ? ? ? ?::CoInitialize(NULL); ? ? ? ? ? ? ?try ? ? ? ? ? ? ?{ ? ? ? ? ? ? ? ? ? //对象实例化 ? ? ? ? ? ? ? ? ? m_pConnect.CreateInstance(__uuidof(Connection)); ? ? ? ? ? ? ? ? ? m_pConnect-Open(strConnect,,,adModeUnkno

文档评论(0)

sheppha + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5134022301000003

1亿VIP精品文档

相关文档