Problem mit Einzelinstanzanwendung/Assemblyinformationen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Problem mit Einzelinstanzanwendung/Assemblyinformationen

    Hallo,

    bislang habe ich meine Tools immer als Einzelinstanzanwendung
    erstellt und mich um die Assemblyinformationen nicht weiter gekümmert (Projekteinstellungen
    / Anwendung / Einzelinstanzanwendung erstellen -> checked). Nun hatte ich
    den Fall, dass ich zwei unterschiedliche Tools auf dem selben PC laufen lassen
    wollte und siehe da – beide Tools parallel laufen zu lassen ging nicht.

    Nun bin ich in meiner Naivität davon ausgegangen, dass die besagte
    Option automatisch dafür Sorge trägt, immer nur eine „tool-„ bzw. projektbezogene
    Instanz laufen zu lassen. Das sich meine Tools deshalb gegenseitig in die Haare
    kriegen – ein Schocker!

    In den Assemblyinformationen habe ich schließlich
    festgestellt, dass sich die GUID bei beiden Tools dieselbe ist und die
    Vermutung lag nahe, dass hier das Problem zu finden sei. Nach manuellem Ändern
    der GUID klappte es dann auch beide Tools parallel laufen zu lassen. Meine
    Befürchtung ist jedoch, dass es keine gute Idee ist, die GUID manuell zu
    ändern. Ist dem so und wenn ja, wie wird die GUID festgelegt bzw. wie geht ihr mit
    dieser Problematik um?

    Ich habe natürlich Codebeispiele gefunden, mit denen ich ohne
    die besagte Funktion erreichen kann was ich will. Aber grundsätzlich wäre diese
    ja schon komfortabel, wenn sie denn nach meinen Vorstellungen arbeiten würde. Ist
    es überhaupt ratsam, diese Option zu nutzen oder hardcoded man besser?

    Außerdem würde mich interessieren, wie ihr die Punkte Assembly-
    und Dateiversion anpackt bzw. dort wann eine Änderung tätigt?

    MfG
    Refra
    @Refratechnik Wenn Du die Einzelinstanzanwendung "zu Fuß" per Mutex machst, musst Du diesem einen Namen geben.
    Ist dieser Name für mehrere Programme gleich, kann nur das erste davon laufen.
    Willst Du also zwei Programme haben, gib ihnen verschiedene Namen.
    Feddich.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!