Process.Start

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Process.Start

    Hi zusammen,

    ich hab ein kleine VB Programm geschrieben, mit dem wir Dokumente (doc, xls, pdf) öffnen.
    Die Eingaben werden nur nach zulässigen Werten analysiert.
    Erste Zeichen darf ein A, B, S, Z, O sein, dann müssen 6 Ziffern folgen.
    Der String wird analysiert und je nach Wert wird dann das Dokument (auch der Speicherort ist aus dem Namen auslesbar) mit Process.Start("dokument") geöffnet.
    Funktioniert alles prima.
    Bei Word und Acrobat:
    Wird die Anwendung zum ersten mal aufgerufen, wird eine Instanz erzeug. Beim zweiten Aufruf wird keine neue Instanz erzeugt, sondern die erste Instanz verwendet und das neue Doukment darin geöffnet.

    Ander bei Excel. Bei ersten Aufruf wird eine neue Instanz von Excel erstellt und das Doku geladen. Soweit so gut.
    Aber bei jedem weitern Aufruf wird nicht wie oben bei Word/Acrobat die erste Excel-Instanz verwendet, sonder eine neue Instanz erzeugt.
    Das macht mir Probleme, weil ich die Datei in Excel weiter bearbeite (mit anderen Daten, die dann mehrfach geöffnet werden).

    Wie mache ich es, daß ich beim Aufruf von Process.Start("Datei.xls") ein vorhandene Instanz von Excel verwende (sofern schon eine läuft)?

    Schon mal danke für die Hilfe
    Es läuft nur eine Excel-Instanz :!:
    Allerdings ist in der TaskBar pro Dokument ein Icon.
    Starte 2 Excel-Dateien und dann klick mal vom lokalen Dokument (nicht von Excel selbst) auf den "Fenster wiederherstellen"-Button.
    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!