我在加载读片的时候用了下面的这一句代码
LoadT8("C:\Documents and Settings\lenovo\桌面\fff\data\imagesdata/images/sand1.bmp",g_cactus[0]);
然后生成可执行文件,但是那个文件只能放在桌面才能运行,我知是和路径有关系,我就是想问一下,怎么编写代码,象这样加载图片什么的程序,生成可执行的文件后,放在哪里都可以运行。谢谢!
如果要打开一个不在“程序当前目录”下的文件,就要事先调用SetCurrentDirectory函数,把当前目录指向文件所在目录,就你在1楼所说的情况,就要调用SetCurrentDirectoy(“C:\Documents and Settings\lenovo\桌面\fff\data\imagesdata/images/”);(某些情况还要考虑转意符的问题,这里先把这个问题忽略。。。)
把目录转到C:\Documents and Settings\lenovo\桌面\fff\data\imagesdata/images/
下,才能找到目标文件。
然后你就可以直接打开sand1.bmp文件了。。。
那这样的话,用SetCurrentDirectoy(“C:\Documents and Settings\lenovo\桌面\fff\data\imagesdata/images/”);就只能在桌面可以运行这个文件,但如果,我把这个exe可执行文件放到其它盘的话,那就又不能运行了,比如说D盘。要想运行只能改SetCurrentDirectoy(“D:\fff\data\imagesdata/images/”),,那我每次换地方运行,每次都 要换代码,那多不好啊。
不管你地exe是在c,d,e,f,g,h,i,j,....................................................哪一个盘哪一个目录下,都会在C:\Documents and Settings\lenovo\桌面\fff\data\imagesdata/images/这个目录下读文件啊。。。