| 

.NET C# Java Javascript Exception

4
Standardmäßig lege ich ja unter Visual Basic .NET bereits über die Projektoptionen fest, ob eine Anwendung eine Einzelinstanzanwendung (Option: Einzelinstanzanwendung erstellen) ist oder nicht. Der Nachteil: Die Änderung erfordert immer eine neue Übersetzung. Ist es möglich, diese Funktion wahlweise über das generierte Assembly zu (de)aktivieren, beispielsweise durch eine Änderung der Programmdatei im binären Dateimodus (aber wie?)? Oder gibt es einen anderen Weg, um diese Funktion - vielleicht per Kommandozeilenschalter - wahlweise zu aktivieren?
News:
17.06.2013
Klaus L. 353 2 6
1 Antwort
1
Hallo,
du kannst das am besten über einen Mutex selbst steuern. Ich würde den Part schon beim Starten der Anwendung in den ApplicationEvents einbauen. Die Steuerung, ob Einzel- oder Mehrfachanwendung könnte ja durch die app.config erfolgen.
Der Programmcode sollte dann etwa so aussehen:
Dim ok As Boolean
Dim m As System.Threading.Mutex = new System.Threading.Mutex(True, Application.ProductName, ok)
If Not ok Then
MsgBox Application.ProductName + " läuft bereits!"
End If

(siehe auch hier)

Liebe Grüße, Tom
17.06.2013
Metal-Frog 946 1 7
Alternativ könnte er die an das Programm übergebenen Parameter überprüfen und anhand derer solche Sachen steuern... aber ich würde ebenfalls den Weg über den Mutex gehen.

Wenn er natürlich mit einem "einfachen Schalter" dieses Verhalten steuern will muss der Wert irgendwo gespeichert werden... und da sind der Phantasie zum Glück keine Grenzen gesetzt
~~~~
Karill Endusa 18.06.2013
Ihr habt mir damit sehr geholfen. Danke dafür!
Klaus L. 18.06.2013
@Klaus: Dann markiere doch bitte die Antwort entsprechend :)
Metal-Frog 18.06.2013

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH