Jap... .wav Dateien sind auch willkommen. Ich habe das jetzt mittlerweile geregelt aber es kommen so viele andere Fragen und Gedanken hoch.... drum werd ich die hier weiterführen.
Hie die Lösung für das "Audio Problem":
Also zuerst hab ich eine Art Nebenprozess gemacht. Also kurz: ein zweites Programm mit dem Auftrag die wav-Datei abzuspielen. Im Hauptprogramm sieht das so aus:
C++:
STARTUPINFO si = { sizeof(STARTUPINFO) };
PROCESS_INFORMATION pi;
if (!CreateProcessA(NULL, (char*)string("cmd /c boot.exe").c_str(), NULL, NULL, false, CREATE_UNICODE_ENVIRONMENT,NULL, NULL, &si, &pi)) {
cout << GetLastError();
}
Also das einzige was hier dadruch passiert ist dass das Hauptprogramm ein zweites startet.... Und so sieht dann die "boot.exe" aus:
C++:
#include <iostream>
#include <tchar.h>
#include <Windows.h>
#include <unistd.h>
#include <stdlib.h>
#include <fstream>
#include <winbase.h>
#include <process.h>
#include <mmsystem.h>
using namespace std;
int main()
{
FreeConsole();
cout << "BYE" << endl;
PlaySound(TEXT("boot_snd.wav"), NULL, SND_SYNC);
STARTUPINFO si = { sizeof(STARTUPINFO) };
PROCESS_INFORMATION pi;
if (!CreateProcessA(NULL, (char*)string("start \\start-message.vbs").c_str(), NULL, NULL, false, CREATE_UNICODE_ENVIRONMENT,NULL, NULL, &si, &pi)) {
cout << GetLastError();
}
return 0;
}
Was hier passiert erkennt man hoffentlich ^^.... Also das 'FreeConsole();' sorgt dafür das sich die Konsole dannach verzieht, bei mir wird die nichtmal mehr angezeigt beim start.... nichtmal kurz. Dannach startet es die Audio-Datei, in meinem Fall die "boot_snd.wav" Datei. Dannach (kommt oft vor^^) soll die 'boot.exe' eine Willkommensnachricht starten. Die Aufgabe mit der Willkommensnachricht hatte bisher das Hauptprogramm gemacht. Da ich jetzt diesen kleinen "Nebenprozess" geschrieben habe hab ich mir gedacht diese eine Aufgabe auch noch 'boot.exe' zu übergeben ^^....
Diese Frage wäre erledigt. Ich habe aber auch schon eineige neue Fragen^^... Und zwar:
Kann man in C++ eine float-in Animation machen für Texte? Ich habe das so erstmals gemacht:
C++:
cout << endl;
cout << " F";
Sleep(200);
cout << "o";
Sleep(200);
cout << "r";
Sleep(200);
cout << " ";
Sleep(200);
cout << "t";
Sleep(200);
cout << "h";
Sleep(200);
cout << "o";
Sleep(200);
cout << "s";
Sleep(200);
cout << "e";
Sleep(200);
cout << " ";
Sleep(200);
cout << "w";
Sleep(200);
cout << "h";
Sleep(200);
cout << "o";
Sleep(200);
cout << " ";
Sleep(200);
cout << "c";
Sleep(200);
cout << "a";
Sleep(200);
cout << "r";
Sleep(200);
cout << "e" << endl;
Ich würde gerne mein Logo so wie beim Text einzeln auflisten/einblenden lassen, aber beim Logo wäre es etwas viel Arbeit, also bestimmt umständlich auf die weise wie ich es machen würde :/ . Ich hätte es so gemacht wie hier bei meinem Beispiel mit dem X:
C++:
cout << " \033[31m\033[1mX";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " XX" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
Sleep(25);
cout << " X";
Sleep(25);
cout << " X" << endl;
So würde das Logo aussehen in der Konsole, von dem ich die Buchstaben einfliegen lassen will (also eine Art "Eintipp" Animation:
C++:
Sleep(200);
cout << " #####################################################################################################################" << endl;
Sleep(200);
cout << " #####################################################################################################################" << endl;
Sleep(200);
cout << " ########## ##" << endl;
Sleep(200);
cout << " ######### ##" << endl;
Sleep(200);
cout << " ######## ##" << endl;
Sleep(200);
cout << " ####### ##" << endl;
Sleep(200);
cout << " ###### A DDD SSSSS OOOOO L EEEEE W W A RRRR EEEEE ##" << endl;
Sleep(200);
cout << " ##### A A D DD S O O L E W W A A R R E ##" << endl;
Sleep(200);
cout << " #### A A D D SSSSS O O L EEE W W W A A RRRR EEE ##" << endl;
Sleep(200);
cout << " ### AAAAAAA D D SSSSS O O L EEE W W W W AAAAAAA R R EEE ##" << endl;
Sleep(200);
cout << " ## A A D DD S O O L E W W W W A A R R E ##" << endl;
Sleep(200);
cout << " ## A A DDD SSSSS OOOOO LLLLLL EEEEE W W A A R R EEEEE ##" << endl;
Sleep(200);
cout << " ## ##" << endl;
Sleep(200);
cout << " ## ##" << endl;
Sleep(200);
cout << " ## ##" << endl;
Sleep(200);
cout << " #####################################################################################################################" << endl;
Sleep(200);
cout << " #####################################################################################################################" << endl;