http://community.csdn.net/Expert/topic/5452/5452861.xml?temp=.7395899
前一个问题谢谢热心解答的朋友。
通过加了一个if判断检查了一下,貌似报错的原因是因为文件没有打开造成的。这里想问下是什么原因造成了文件没有打开。如果文件名不带参数的话,程序应该是在执行文件所在的目录下找文件的,但我的文件明明就和执行文件在一起放着,为什么会打不开呢?

解决方案 »

  1.   

    用绝对路径打开文件。
    象CFileDialog等等,会更改当前路径,也就是GetCurrentDiretory()得到的路径。
    GetModulePath()获取执行文件所在路径。
      

  2.   

    你的文件放在哪里的~???debug下的话,你调试是打不开的,调试要放在工程目录下的~~~就是和.dsw同一个目录下`~~
      

  3.   

    GetCurrentDiretory()得到当前路径,该路径并不一定是Debug的目录,这个值经常变更。
    GetModulePath()获取执行文件(exe)所在路径。一般使用GetModulePath()要不GetCurrentDirectory()要好
      

  4.   

    自己可以使用debug跟踪调试以下.我上回调试跟踪了一下:发现GetCurrentDirectory()获得的路上是:项目名文件夹\项目名文件夹\debug\而不适合exe的文件夹:项目名文件夹\Debug\
      

  5.   

    谢谢livedeal(怀念),果然不能放在debug里。也谢谢其他热心的朋友。