2017-12-08 7 views
0

追加のwaveファイルなしでexe(C++)ファイルに音楽を追加する方法はありますか?exeにwavを追加

たとえば、「PlaySound」を使ってwavファイルを再生すると、そのwaveファイルはexeファイルと同じフォルダの下に配置する必要があります。しかし、私は...私はコードとしてそれをしたい

...誰かがexeファイルを受信したとき、彼らはwavファイルを受信せずに音楽を聴くことができるようにwavファイルなしでそれを実行したい

そして、ここです私の現在のコード。

#include <iostream> 
#include <stdio.h> 
#include <windows.h> 
using namespace std; 


/* ========================================================================== */ 
enum { 
    BLACK, 
    DARK_BLUE, 
    DARK_GREEN, 
    DARK_SKY_BLUE, 
    DARK_RED, 
    DARK_VOILET, 
    DARK_YELLOW, 
    GRAY, 
    DARK_GRAY, 
    BLUE, 
    GREEN, 
    SKY_BLUE, 
    RED, 
    VIOLET, 
    YELLOW, 
    WHITE, 
}; 

enum { HIDDEN, SHOW }; 

void CursorView(char show) 
{ 
    HANDLE hConsole; 
    CONSOLE_CURSOR_INFO ConsoleCursor; 

    hConsole = GetStdHandle(STD_OUTPUT_HANDLE); 

    ConsoleCursor.bVisible = show; 
    ConsoleCursor.dwSize = 1; 

    SetConsoleCursorInfo(hConsole, &ConsoleCursor); 
} 

void gotoxy(int x, int y) 
{ 
    COORD XY = { x, y }; 
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), XY); 
} 
void SetColor(int color) 
{ 
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), color); 
} 

void gamedraw(void) 
{ 
     PlaySound(TEXT("10.wav"), NULL, SND_FILENAME | SND_LOOP | SND_ASYNC); 

     printf("You are listening to my song."); 

    getchar(); 
} 
void MainInit(void) 
{ 
    system("mode con: cols=100 lines=45"); 
    system("cls"); 
} 

/* ========================================================================== */ 

int main(void) 
{ 
    CursorView(HIDDEN); 
    MainInit(); 

    gamedraw(); 

    for (;;) { 

     if (GetAsyncKeyState(VK_ESCAPE) < 0) break; 
    } 

    CursorView(SHOW); 

    return 0; 
} 
+0

参考:[PlaySound](https://msdn.microsoft.com/en-us/library/windows/desktop/dd743680(v = vs.85).aspx) –

+0

私は "PlaySound"の使い方を知っています....しかし、私が尋ねたいのは... exeファイルとwavファイルを1つのexeファイルに結合する方法...コンソールとwavファイルを実行できるようにするwindowmediaplayerのような追加のウィンドウなしで同じ時間。ちょうどコンソール。 – cozyddd

+0

参考になるのはあなたを助けようとしている可能性のある人です。よく使われる関数でも標準的な関数でもありません。 –

答えて

-2

あなたはリソースとして.WAVを追加しますが、それは非常に多くの困難になる演奏することができます(どちらかは、ディスク上のいくつかのパスにリソースを抽出したり提出するオーディオAPIのいずれかを使用する必要がありますwavデータ)。

+2

'PlaySound()'はWAVリソースを再生することができ、最初に一時ファイルに展開する必要はなく、手動でデータをポンピングする必要もありません。 MSDNの[WAVEリソースを再生する](https://msdn.microsoft.com/en-us/library/dd743679.aspx)を参照してください。 –

関連する問題