Zwei Windows Anwendungen ".exe"

Irdi

Mitglied
Hallo alle zusammen,

wieder stehe von einem Problem, die ich nicht alleine lösen kann.
Es gibt zwei Projekte, diese Projekte sind zwei Windows Anwendungen.
Die erste Anwendung ist eine Hauptanwendung, die soll die zweite Anwendung aufrufen.
Die zweite Anwendung soll aber feststellen, welche Dateinamen ein ListView aus der Hauptanwendung beinhaltet, welche markiert sind und in welchem Ordner die Dateien abgespeichert sind.

Ob das zu lösen ist? Bestimmt!
Aber wie?

Gruß Irina
 
Das ist ein umfangreicheres API Projekt :

- zweite Anwendung starten : ShellExecute
- zweite Anwendung ermittelt welche Einträge im ListView markiert sind :
- mit 'EnumWindows' alle HWnd sammeln
- mit 'GetWindowText' ermittelnt, welches Fenster das Fenster der ersten Anwendung ist
- mit 'EnumChildWindows' herausfinden, welches HWnd das ListView hat
- mit 'GetSelText' Listeinträge ermitteln
- wie Du ermittelst, welche Dateipfade hinterlegt sind ist mir nicht so ganz klar, sind die markierten Einträge die Dateinamen ? Dann eignet sich 'SearchTreeForFile'

Eine einfachere Methode wäre von Anwendung 1 aus mit 'SendWindowMessage' zu arbeiten und dabei die Informationen zu übermitteln.
 
Es gäbe noch eine einfache Möglichkeit, die ist nur nicht unbedingt "schöner".

Du könntest die Daten dem zweiten Programm als Parameter übergeben oder du erzeugst aus dem ersten Programm eine Datei mit den Einträgen und übergibst als Parameter den Pfad zu Datei, welches das zweite Programm dann einliest.
 
Hallo Filone!

hab ausprobiert, aber die Befehle, was du aufgeschrieben hast, finde ich nicht in der Hilfe. Wieso? Sind das die Befehle aus VB 6.0. Oder suche ich falsch? Ich bin nicht weiter gekommen. Hilf mir bitte weiter!

Gruß Irdi.
 
Hallo,

du brauchst eigentlich keine Api, wir arbeiten ja mit .NET.

Das Starten der 2. exe kannst du so machen

Code:
Private deineexe As New System.Diagnostics.Process

deineexe.StartInfo.FileName = Application.StartupPath & "\" & Name deiner exe

deineexe.Start()

mit deineexe.Kill kannst du den Prozess beenden

Die Kommunikation deiner beiden Programme kannst du auch über .NET
machen.
Dazu musst du mal ein wenig nach .NET Remoting googlen. Das ist zwar am
Anfang ein wenig kompliziert aber sicher die beste Lösung in NET.

Gruß
Jens
 
Hallo,
ich habe mir dieses Thema durchgelesen, aber wie zwei Anwendungen dadurch kommunizieren können weis ich immer noch nicht.
Kann mir jemand helfen?


Gruß Irina.
 

Neue Beiträge

Zurück