我试图通过函数从win32中的相对文件路径加载文件。我使用的URL绝对存在,用于测试目的,在资源文件中使用相同的URL作为添加的位图。使用LoadImage相对文件路径
Image = (HBITMAP)LoadImage(NULL, "..\\..\\Images\\Mage default.bmp",
IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
然而,它返回错误代码2,表示该文件不能被发现。我已经在一定程度上使用了这个问题,并且提到了MSDN,并且我找不到任何说明如何使用的相对文件路径的任何内容。
它似乎与LoadBitmap
和一个预先定义的位图正常工作,但在这种情况下似乎不起作用。任何帮助将不胜感激
在许多情况下不推荐反向相对寻址。它使程序员的管理路径复杂化。 – deepmax
依靠正在设置的默认工作目录永远不会停止伤害。当它在正常安装位置的用户计算机上运行时,它就无法工作。没有c:\ program files \ images目录。从GetModuleFileName()生成绝对路径名,传递NULL以查找EXE的存储位置。 –
@HansPassant好的,非常感谢。通过组合上面生成的相对路径和绝对路径,生成绝对文件路径应该很容易。 –