Prozess Überprüfungsschleife
-
Ja, das kann ich auch ohne WinAPI glaub ich nich anders machen. Wenn ich nebenbei noch mit JDownloader was runterlade, beenden sich das Programm nicht

Ich werds mal mit WinAPI probieren. Mal sehn ob ich da zu was komme. Hab das noch nie gemacht.
EDIT: So, da jetzt (14.06) Wochenende ist fang ich mal an zu programmieren

Ich hab mir das jetzt so überlegt, dass ich den Launcher nicht mehr explizit für Minecraft mache, sondern generell für alle ausführbaren Programme. Deshalb wollte ich bei Programmstart das so machen, dass der Programmpfad abgefragt wird und dazu dann in %appdata% in einem Unterordner eine Datei angelegt wird, in welcher der Pfad gespeichert ist. Diese Datei soll dann automatisch bei jedem Programmstart geladen werden und dann Programm gestartet werden.
Aber dass man das Konsolenfenster minimiert oder dass es nur in der Taskleiste angezeigt wird geht nich mit C++, oder?
EDIT2: Ok, geht, grad mal gegoogled
-
So, hab jetzt schonmal so ein bischen den Anfang, leider läuft das Programm nicht so wie ich es mir vorgestellt hab.
Hier der Code:
// Program Launcher.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung. // #include <stdafx.h> #include <conio.h> #include <iostream> #include <windows.h> #include <string> char korrekt = 'n'; using namespace std; int main() { SetConsoleTitle(_T("Program Launcher")); string path; while (korrekt == 'N' || korrekt == 'n') { cout<<"Bitte geben Sie den Pfad zu Ihrem Programm ein:"<<endl; cout<<"Programmpfad: "; getline(cin, path); cout<<endl<<endl<<"Ist dieser Pfad korrekt?: "<<path<<endl; cout<<"Korrekt? (Antwort mit j oder n): "; cin>>korrekt; if (korrekt != 'N' || korrekt != 'n' || korrekt != 'J' || korrekt != 'j') { cout<<"Bitte antworten Sie nur mit j oder n!"<<endl; korrekt = 'n'; } } _getch(); return 0; }Nur leider erhalte ich folgendes Ergebnis:
https://dl.dropboxusercontent.com/u/11268312/Program%20Launcher%20Probleme....PNG
Das mit dem Bild einfügen hat irgendwie nicht funktioniertWie ihr seht zeigt es den Text in der if Klammer trotz nich eingetretener Bedingung an. Das versteh ich halt nicht dadran. Habt ihr dazu einen Tipp oder wisst wo der Fehler ist?
und Tschuldigung an die Mods / Admins für den Doppelpost, aber sonst hätte ja keiner gesehn, dass ich den alten Beitrag bearbeitet hätte...
-
Du willst und statt oder.
Es müssen ja alle vier Bedingungen erfüllt sein, nicht nur eine.
-
Ah ok! Danke!!
Ok, das funktioniert jetzt schonmal. Aber wenn ich jetzt da n für Nein eingebe, dann überspringt der die erneute Abfrage nach dem Programmpfad einfach.
Ich denke, es liegt daran, dass er schon einen Wert für den String hat. Kann man einen String irgendwie clearen?
Ich habe schon probiert einen neuen String zu definieren und habe dann direkt an den Anfang der Schleife
path = pathclear; //pathclear ist der neue stringzu schreiben aber das bringt auch nichts, habt ihr da eine Lösung?
-
Probier mal:
std::cin.sync(); std::cin.clear();am Schleifenende.
-
jkljkljkl schrieb:
Probier mal:
C++:
std::cin.sync();
std::cin.clear();am Schleifenende.
Danke!!! Funktioniert 1A

Habs schonmal mit cin.clear(); alleine probiert, das hat aber nicht funktioniert.
cin.sync kannte ich noch nicht. Danke
-
Weiß jemand, wie ich einen Ordner in %appdata% erstelle?
Ich habs mit
_mkdir("%appdata%\\Program Launcher");probiert, aber das funktioniert nicht.
Habe dann mal gegooglet und bin auf ner Microsoft Seite und einer Seite des Forums gelandet, werde daraus aber auch nicht schlauer....
http://www.c-plusplus.net/forum/102386-full
http://social.msdn.microsoft.com/Forums/en-US/visualcsharpde/thread/9e517047-6c34-4be5-a6cc-9fbe913497f3
-
Mit SHGetSpecialFolderPath() holste dir den Pfad und mit CreateDirectory() erstellst du den Ordner.
-
brauch man für createdirectory noch ne extra header datei?
und was muss ich bei shgetspecialfolderpath in die klammer schreiben?
-
Google ist dein Freund.
In diesem Fall die MSDN.