2021-06-04代码vs调试没问题,但是直接运行exe闪退

代码在VS调试正常,直接运行EXE却闪退,原因是代码包含EXE找不到的路径,如主程序参数在VS配置,不会编译进EXE。解决办法一是将绝对路径加入代码编译进EXE,不过较笨;更好的方法是保持加载main函数参数不变,用命令行运行程序并加参数,前提是配置文件在EXE目录。

代码在vs调试没问题,但是直接运行exe闪退
生成dmp文件:
在这里插入图片描述
这种情况其实是代码包含有exe找不到的路径,导致应用程序找不到
我的代码实际是在主程序的参数处出了问题:
在这里插入图片描述
这里load函数是要调用主程序参数的,主程序参数是在vs配置的。
在这里插入图片描述
这里的参数配置是在vs中启动程序时首先加载的,这里的配置并不会编译进exe,所以exe自然无法找到这个配置文件。
所以,解决办法应该是把绝对路径加入代码,编译进exe.
在这里插入图片描述
虽然问题是这样解决了,但是很明显感觉这个方法笨笨的。真正的解决方法应该是保持加载main函数的参数不变,用命令行运行程序并加上参数:
在这里插入图片描述
运行成功。当然,前提条件是配置文件要在exe所处目录。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值