今天无意中发现一个神奇的bug。步骤如下:
1. 在桌面创建一个文件,重命名,在重命名输入框中不停输入,直到不能输入更多为止。
2. 在程序中使用CFileDialog选择1中新建的文件。
3. 调用CFileDialog的GetPathName()获取文件路径。
结果:通过GetPathName()获取的文件路径竟然少一个字符。 例如:1中重名文件的文件为***.pdf, 通过GetPathName()获取的结果为:C:\\...\***.pd, 最后的f没了。
操作系统是64位win7, 程序是在vs2008下写的MFC的32位程序。