CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  数据库

CFileDlg按确定之后不能打开数据库.是不是Bug?

楼主payou444(一天)2006-06-01 08:39:24 在 VC/MFC / 数据库 提问

CFileDialog   FileDlg;  
  //打开数据库(可以)  
  if(FileDlg.DoModel()==IDOK)  
  {  
        //打开Access数据库(不行)  
  }  
  //打开数据库(不行)  
   
  如果把打开数据库的代码写到打开CFileDialog之前就可以打开,  
  如果CFileDialog之后就不行。  
  只要按OK就不行,按Cancel就可以。  
  谁知道怎么回事,是不是Bug 问题点数:20、回复次数:8Top

1 楼payou444(一天)回复于 2006-06-01 12:22:00 得分 0

没人看么Top

2 楼fenge1981(居易锦风)回复于 2006-06-01 14:42:23 得分 0

具体的代码贴出来!Top

3 楼payou444(一天)回复于 2006-06-13 11:33:10 得分 0

static   char   BASED_CODE   szFilter[]="Chart   Files(*.xls)|*.xls|AllFiles(*.*)|*.*||";  
   
  CFileDialog   dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,szFilter,NULL);  
   
  CString   filepath;  
   
  if(dlg.DoModal   ()==IDOK)  
  {  
        filepath=dlg.GetPathName   ();  
  }  
  else  
        return   ;  
  经过测试,打开EXcel文件之后再此代码后边执行的关于数据库的代码出现未知错误.  
  如果没有打开文件或者打开的是TXT文件则,后边的关于数据库的代码正常执行.  
   
  Top

4 楼seu07201213(【_】〖汪洋中的一片叶子〗≈^︵^≈)回复于 2006-06-13 11:44:39 得分 0

打开Access数据库的路径写成绝对路径呢??Top

5 楼jimlei76(ly)回复于 2006-06-13 11:56:42 得分 0

测试一下调用CFileDialog前后的程序当前目录,估计目录不对了!  
  Top

6 楼payou444(一天)回复于 2006-06-13 12:19:11 得分 0

如果不使用CFileDialog就没有问题,使用绝对路径可以.但是,这到底怎么回事,我获得Txt文件路径之后仍然可以运行以后数据库代码,获得XLS文件路径之后就不可以了,是不是我的CFileDialog写的有问题?Top

7 楼handsomerun(毛毛)回复于 2006-06-13 12:51:33 得分 20

原因很简单,cfiledialog这个对话框会改变当前路径的,所以你用相对路径打开数据库,用了ok以后,就找不到数据库文件了  
   
  用CFileDialog的时候,选上OFN_NOCHANGEDIR  
  具体参考msdnTop

8 楼payou444(一天)回复于 2006-06-14 12:54:02 得分 0

谢谢,果然是路径的问题,谢谢了.Top

相关问题

关键词

得分解答快速导航

  • 帖主:payou444
  • handsomerun

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo