用WinExec函数打开的应用程序无法使用相对路径

有两个程序,A程序和B程序,B程序里有一个按钮,点击后能打开A程序。
B程序的按钮响应函数里是这样实现的:
WinExec("D:\\MyTest\\A.exe",1);   \* A程序的路径为D:\\MyTest\\A.exe*\

这样打开貌似没有问题,但是!
A程序里有这样一段代码:
XX.open("cfg\\config.xml","r");  \* 打开配置文件,使用相对路径*\

单独运行A程序都没有问题,不论是双击运行、调试运行、还是快捷方式都没有问题。

可是当点击B程序里的按钮时,配置文件就打不开了,open的实际路径是B程序的绝对路径+cfg\\config.xml,当然也就找不到这个文件。

解决办法:使用SetCurrentDirectory函数会改变相对路径。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值