发现重大bug 调用GetOpenFileName获取文件路径之后loadimage函数失效获取不到实体 最后导致putimage失效,急急急!
#include <stdio.h>
#include <graphics.h> // 引用图形库头文件
#include <conio.h>
// 返回值: 成功 1, 失败 0
// 通过 path 返回获取的路径
int FileDialog(char *path)
{
OPENFILENAME ofn;
ZeroMemory(&ofn, sizeof(ofn));
ofn.lStructSize = sizeof(ofn); // 结构大小
ofn.lpstrFile = path; // 路径
ofn.nMaxFile = MAX_PATH; // 路径大小
ofn.lpstrFilter = "All\0*.*\0Text\0*.TXT\0"; // 文件类型
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
return GetOpenFileName(&ofn);
}
int main()
{
IMAGE imgHead;
char szFile[MAX_PATH] = {0}; //文件路径
initgraph(640, 480);
if(FileDialog(szFile))
{
loadimage(&imgHead,"image\\login.png"); //任何一张路径对的图片都无效,你把loadimage放到if外面又正常
putimage(0,0,&imgHead);
}
_getch();
return 0;
}