想打包一个项目,里面图片音乐都为绝对路径,该如何打包使得他人电脑上可以运行?
我想法是更改为相对路径,但没成功,应该是我不会使用相对路径,在这里顺便讨教相对路径的用法。附代码。
#include <stdio.h>
#include <graphics.h>
#include <string>
#include <cmath>
#include <conio.h>
#pragma comment(lib,"Winmm.lib")
#pragma comment( lib, "MSIMG32.LIB")
#define WIDTH 550
#define HEIGHT 700
void transparentimage(IMAGE* dstimg, int x, int y, IMAGE* srcimg) // 半透明贴图函数
{
// dstimg: 目标 IMAGE 对象指针。NULL 表示默认窗体
// x, y: 目标贴图位置
// srcimg: 源 IMAGE 对象指针。NULL 表示默认窗体
HDC dstDC = GetImageHDC(dstimg);
HDC srcDC = GetImageHDC(srcimg);
int w = srcimg->getwidth();
int h = srcimg->getheight();
// 结构体的第三个成员表示额外的透明度,0 表示全透明,255 表示不透明。
BLENDFUNCTION bf = { AC_SRC_OVER, 0, 255, AC_SRC_ALPHA };
// 使用 Windows GDI 函数实现半透明位图
AlphaBlend(dstDC, x, y, w / 2, h / 2, srcDC, 0, 0, w, h, bf);
}
IMAGE img_bk, img_plane, img_blowup, img_bullet,img_ufo; //定义图片
int main()
{
while (1)
{
mciSendString(L"open ./background.mp3 alias bkmusic", NULL, 0, NULL); //背景音乐
mciSendString(L"play bkmusic repeat", NULL, 0, NULL);
initgraph(WIDTH, HEIGHT); //画布
loadimage(&img_bk, _T("D:\\123\\Pictures\\坚持一百秒素材\\background1.png")); // 导入背景图片
loadimage(&img_plane, _T("D:\\123\\Pictures\\坚持一百秒素材\\plane.png")); // 导入飞机图片
loadimage(&img_ufo, _T("./enermy.png")); // 导入飞碟图片
transparentimage(NULL,0,0, &img_bk);
transparentimage(NULL, 10,10,&img_plane);
transparentimage(NULL,300,10, &img_ufo);
char c;
c = _getch();
}
return 0;
}