如何在C++中引用文件位置



我正在尝试引用一些图像,以便这段代码可以在任何电脑上运行,而不仅仅是我自己的电脑。

pictureBox1->ImageLocation = "C:\Users\W10\Desktop\pacanelematii\cireasamtii.png"; 

这是c++中的一个小项目,在visualstudio中使用windows窗体。无法使引用生效。根据我的理解,应该有点像";。。调试\panelematii\portocalamatii.png"或";。。pacanelematii\portocalamatii.png";,但两者都不起作用。我想,一旦文件路径被引用到.exe,我就可以很容易地复制.exe的整个文件夹,并将应用程序发送给任何愿意尝试的人。我把";pacanelematii";文件夹到";调试">

在程序开始时,您应该将当前工作目录设置为包含可执行文件的文件夹。使用Win32 API,您可以这样做:

wchar_t path[MAX_PATH];
GetModuleFileNameW(NULL, path, MAX_PATH);
PathCchRemoveFileSpec(path, MAX_PATH);
SetCurrentDirectory(path);

然后,确保图像被放置在可执行文件的目录中,并简单地使用其相对路径
例如,您可以将它放在可执行文件旁边的文件夹Images中,并将其用作Images/imagename.png

最新更新