Autor Beitrag
Jörg Roth
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Fr 28.09.07 10:48 
Hallo zusammen,

bei einem Projekt habe ich einen FileSystemWatcher und wenn eine Datei in dem überwachten Verzeichnis erstellt wird, soll diese sofort mit Notepad geöffnet werden.

Den Prozess starten funktioniert. Und WindowStyle habe ich auch auf "maximiert" gesetzt.

Mein Problem ist nun, dass bei WindowsXP Notepad dann im Vordergrund sichtbar ist (d.h. den ganzen Bilschirm ausfüllt)
Bei Windows2000 hingegen wird auch Notepad gestartet, auch maximiert, aber im Hintergrund. D.h. man merkt es nur daran, dass in der Taskleiste ein neues Fenster hinzugekommen ist. Erst wenn man auf die Taskleiste klickt sieht man das Programm auf dem ganzen Bildschirm.

Wie kann ich direkt nach dem Starten des Notepad-Prozesses den Focus auf Notepad setzen???

Hier mein Code:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
ProcessStartInfo psi = new ProcessStartInfo(pfad_dateiname);
psi.WindowStyle = ProcessWindowStyle.Maximized;
psi.UseShellExecute = true;

try
{
   Process.Start(psi);
}
catch (Exception ex)
{
   MessageBox.Show("Fehler beim Starten der Anwendung:\n" + ex.Message + "\n\nLOG-Datei konnte mit Notepad nicht geöffnet werden!""Öffnen der LOG-Datei - Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error);
}