CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
(图)邪恶的韩国UMPC 使用 Java 编写数据库应用新规范
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

运行路径的问题

楼主howyougen(夫孝,德之本也,教之所由生也)2006-12-01 13:29:01 在 VC/MFC / 基础类 提问

比如程序的路径是在c:\test\test.exe  
                                      c:\test\config.ini  
   
  当我在c:\test\目录下执行test.exe时,可以找到目录里的config.ini  
  但是如果我创建test.exe的快捷方式到桌面.  
  然后双击这个快捷方式执行就无法找到config.ini了  
  请问这种情况怎么办?  
  问题点数:10、回复次数:3Top

1 楼vieri_ch(尘雨-自在飞花轻似梦,无边丝雨细如愁)回复于 2006-12-01 13:51:39 得分 5

GetModuleFilename(NULL...)得到当前程序文件所在路径,然后从中提取出来  
   
  TCHAR   tPath[MAX_PATH];  
  memset(tpath,0,sizeof(tPath)*sizeof(TCHAR));  
   
   
  ::GetModuleFileName(NULL,tPath,MAX_PATH);  
   
  CString   str=tPath;  
   
  int   i=str.ReverseFind("\\");  
  if   (i!=-1)  
  {  
  str=str.Mid(0,i);  
  }  
  str="File   Name="   +   str   +   "\\db.udl";  
  Top

2 楼mrxwh(大徐)回复于 2006-12-01 13:57:01 得分 4

建议使用绝对路径而不是相对路径。  
  在桌面上,默认工作路径是桌面,必然无法得到config.ini文件了。  
   
  GETCURRENTPATH得到的可能是工作目录而不是当前模块(dll或exe)所在的目录。  
  GetModuleFileName()得到当前模块的全部路径(例如:c:\mydoc\prog.exe   ),可以得到模块的路径Top

3 楼alvachien(白衣战神,四大绝技:C#/C++/T-SQL/ABAP)回复于 2006-12-01 13:59:39 得分 1

把快捷方式上设置上运行路径就可以了Top

相关问题

关键词

得分解答快速导航

  • 帖主:howyougen
  • vieri_ch
  • mrxwh
  • alvachien

相关链接

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

广告也精彩

反馈

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