Einzelnen Beitrag anzeigen

musicman56
(Gast)

n/a Beiträge
 
#20

AW: Problem beim Programmneustart mit Instanzkontrolle

  Alt 9. Nov 2013, 16:10
Hallo,

hMutex := CreateMutex(nil, True, PChar(UpperCase(ExtractFileName(ParamStr(0))))); wie ist das eigentlich, wenn ParamStr(0) Sonderzeichen wie "(" ")" "&", Leerzeichen usw. enthält. Funktioniert der Mutex dann noch richtig?

Was mir außerdem nicht ganz optimal erscheint ist die Tatsache, dass mit ParamStr(0) zwar verhindert wird, dass dieselbe Exe zeimal gestartet wird, aber nicht eine weitere Instanz desselben Programmes in einem anderen Ordner. Das zu verhindern kommt bei mir zumindest sehr häufig vor.

Es ist der Grund dafür, dass ich in meiner Unit zwei Möglichkeiten habe, den Mutex zu erzeugen: Einmal mit ParamStr(0) wenn mich dieser Sachverhalt nicht stört, und zusätzlich eine Funktion mit vorgegebenem Mutexnamen, den ich meistens von der Applikation ableite, zum Beispiel dem Application.Title.
  Mit Zitat antworten Zitat