我编写了一个C++程序并将其部署在c:\ my_app中,并且我的可执行文件的路径是c:\ my_app \ my_app.exe。说,my_app需要许多文件,如位于c:\ my_app \ the_file.txt中的the_file.txt文件。已部署的win32应用程序的相对路径问题
在我的可执行文件中,我打开txt文件为:xx.open(“the_file.txt”);
此外,我已将我的程序与.myp扩展名关联起来。
当我在桌面上,并且想打开一个名为example.myp的文件时,我的程序看不到the_file.txt。因为它(以某种方式)假定它目前在桌面上工作。
是否有任何简单的方法来通过更改shell命令来打开HKEY_CLASSES_ROOT来处理此问题?天真的解决方案是用“%my_app_location/the_file.txt”之类的东西来改变所有的文件打开操作。我不想这样做。
感谢您的帮助。