![]() |
Notepad aufrufen
Hallo allerseits,
wie kann ich notepad.exe mit einer Textdatei aus meiner Delphi-Application heraus so aufrufen, dass o dies mit jeder Windows-Version funktioniert o mein Hauptprogramm erst nach Beendigung von notepad weiterläuft o ich ev. eine Information von notepad bekomme, ob die damit aufgerufene Textdatei geändert wurde mfg Herbert |
Re: Notepad aufrufen
Delphi-Quellcode:
filename ist der Name der aufzurufenden Datei. Bevor du das machst, kannst du den Inhalt der Datei in einer Variable abspeichern. Nach dem das Notepad geschlossen ist, kannst du den Inhalt nochmal überprüfen und dann nachschauen, ob der neue Inhalt sich vom gespeicherten unterscheidet. Das heißt, es wurde geändert.
ShellExecute(Application.Handle, 'open', PChar('notepad '+filename), Nil, Nil, SW_NORMAL);
Das mit dem Hauptprogramm, das erst nach Beendigung des Notepads weitergeht müsste man irgendwie mit Handles hinkriegen, aber da kenne ich mich nicht so aus. |
Re: Notepad aufrufen
Du musst noch in die Uses liste "ShellApi" eintragen! Sonst funzt das nicht!
Robin |
Re: Notepad aufrufen
Und die Parameter (hier der Dateiname) werden vom Programm getrennt:
Delphi-Quellcode:
ShellExecute(Application.Handle, 'open', PChar('notepad.exe'), PChar(filename), Nil, SW_NORMAL);
|
Re: Notepad aufrufen
Zum Warten gibt es
![]() Zitat:
Zitat:
PS: Für Aufzählungen gibt es die List-Tags :wink: . |
Re: Notepad aufrufen
Danke für eure Hilfe,
habe jetzt ShellExecuteAndWait genommen - funktioniert einwandfrei. mfg Herbert |
Re: Notepad aufrufen
Zitat:
Problem hierbei: Das Programm ist auch lahmgelegt, wenn man ganz normal notepad startet (aber da fällt dir bestimmt noch was ein)! |
AW: Notepad aufrufen
Sind die Dateien mit Erweiterung *.txt mit dem NotePad.exe
verknüpft, dann genügt auch folgender Aufruf, um NotePad mit der Datei zu öffnen. ShellExecute(Application.Handle, PChar(''), PChar('C:\Users\Documents\Beispiel.txt'), nil, nil, SW_SHOWNORMAL); Schöne Grüße aus Nürnberg, Manfred |
AW: Notepad aufrufen
Oder halt ein anderes mit der Endung verknüpftes Programm. Soll es Notepad sein, ist diese Lösung dann nicht geeignet
|
AW: Notepad aufrufen
Besser
Delphi-Quellcode:
statt
nil
Delphi-Quellcode:
, denn das ist nicht das Selbe und nur nil ist als "nicht verwendet" deklariert, bei dieser Funktion.
PChar('')
Oder
Delphi-Quellcode:
, bzw.
'open'
Delphi-Quellcode:
, denn das ist ja die gewünschte Aktion, aber (meistns) reicht auch nil, denn "open" ist standardmäßig die Standardaktion.
PChar('open')
|
AW: Notepad aufrufen
Euch ist aber schon aufgefallen, dass der Thread über 6 Jahre alt ist?
|
AW: Notepad aufrufen
Der Beitrag von mz23, auf den ich mich bezogen habe ist von heute.
|
AW: Notepad aufrufen
@Deddy: Jupp, aber falls das in 20 Jahren nochmal wer wiederfindet, dann doch wenigstens richtig. :angle2:
|
AW: Notepad aufrufen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz