Abfrage, ob schon gelaufen...
-
Hallo, ich bin neu hier und mit C++ bin ich auch noch net ganz so im Detail vertraut.
Ich schreibe gerade ein kleines Quizprogramm, bei dem am Anfang die Abfrage erfolgen soll, ob das Programm schon mal gestartet wurde.
Jetzt meine Frage, wie kann man bewerkstelligen? Ich brauche also zum einen irgend ein Merkmal das ich auf erneutes Ausführen abfragen kann (Datei auf Festplatte, usw.) und zum anderen die Abfrage selbst.
Wie gesagt, da ich mit C++ noch net allzu lange zu tun habe bräuchte ich dazu dringend eure Hilfe, da ich keinen blassen Schimmer habe.
Viele Dank im Voraus.
Merlot
-
Einfach eine .txt Datei auf der Platte erstellen und ne 1 reinschreiben...
oder kannst auch gar nix reicnschreiben und nachher abfragen ob die datei existiert...dann weißt du ob das programm schon mal gelaufen ist...
-
Entweder erstellst du dir einen Eintrag im HKCU\Software-Zweig der Registry, oder du speicherst eine Datei in den Anwendungsdaten. Für beides sollte sich Beispielcode finden lassen (Stichworte: RegOpenKeyEx, SHGetSpecialFolderPath/SHGetFolderPath).
Einfach ins Anwendungsverzeichnis schreiben ist ab Vista übrigens tabu

-
audacia schrieb:
Einfach ins Anwendungsverzeichnis schreiben ist ab Vista übrigens tabu

Hab Vista noch nicht ausprobiert, was ist tabu ? nur das Anwendungsverzeichnis oder auch die Registry ?
-
Alles, was Administratorenrechte benötigt, also Schreibzugriff auf %PROGRAMFILES%, %WINDIR% und HKEY_LOCAL_MACHINE. Benötigt man diese Rechte, muß man die entsprechende Anwendung mit administrativen Rechten starten (alternativ kann die Anwendung auch selektiv Rechte mittels UAC anfordern).
Wenn du unter XP Programme mit eingeschränkten Rechten hast, ist das kaum anders. Der wesentliche Unterschied ist, daß unter XP fast alle mit Administratorenrechten unterwegs sind, unter Vista nur sehr wenige.
-
ok, danke

-
Danke für die Antworten. Wie gesagt, ich bin ja noch Anfänger, will aber schnell dazu lernen.
Wie mach ich so nen Registry-Eintrag und wie kann ich das wieder auslesen?
-
Hallo
Siehe TRegistry in der Builder-Hilfe und hier in der Forums-SuFu.
bis bald
akari