Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Erkennen ob Hilfedatei geöffnetist (https://www.delphipraxis.net/194831-erkennen-ob-hilfedatei-geoeffnetist.html)

Walter Landwehr 11. Jan 2018 15:16

Erkennen ob Hilfedatei geöffnetist
 
Hallo,

gibt es eine Möglichkeit zu erkennen ob eine Hilfedatei (Hilfe.chm) geöffnet ist.

Für einen Tipp Danke im voraus.

Bernhard Geyer 11. Jan 2018 15:47

AW: Erkennen ob Hilfedatei geöffnetist
 
Ob *irgendeine* oder die der Anwendung zugeordnete?

Walter Landwehr 11. Jan 2018 15:48

AW: Erkennen ob Hilfedatei geöffnetist
 
Die der Anwendung zugeordnet.

hoika 11. Jan 2018 16:06

AW: Erkennen ob Hilfedatei geöffnetist
 
Hallo,
ein Ansatz sind die Dateien Forms.pas (TApplication) HelpIntfs.pas (IHelpSystem).
Dort ehe ich ein GetHandle, was wohl 0 ist, wenn die Datei nicht geladen ist.

Bernhard Geyer 11. Jan 2018 16:22

AW: Erkennen ob Hilfedatei geöffnetist
 
Und wieso?
Kann dir doch egal sein

Walter Landwehr 11. Jan 2018 16:43

AW: Erkennen ob Hilfedatei geöffnetist
 
Wieso warum fragst Du nach meinen Grund. Den habe ich schon und muss ich doch wohl nicht erklären. Da ich einen Grund habe ist es mir auch nicht egal.

Ich frage doch nur nach einer eventuellen Lösung.

Walter Landwehr 11. Jan 2018 16:46

AW: Erkennen ob Hilfedatei geöffnetist
 
Also folgende Funktion funktioniert nicht:
Delphi-Quellcode:
function IsFileInUse(const fName: TFileName): Boolean;
var
   HFileRes: HFILE;
begin
   Result := False;
   HFileRes := CreateFile(PChar(fName),
                          GENERIC_READ or GENERIC_WRITE,
                          0,
                          nil,
                          OPEN_EXISTING,
                          FILE_ATTRIBUTE_NORMAL,
                          0);
   Result := (HFileRes = INVALID_HANDLE_VALUE);
   if not Result then
     CloseHandle(HFileRes);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
   if OpenDialog1.Execute then
     if IsFileInUse(Opendialog1.FileName) then
       ShowMessage('File is in use!');
end;

Bernhard Geyer 11. Jan 2018 16:47

AW: Erkennen ob Hilfedatei geöffnetist
 
Zitat:

Zitat von Walter Landwehr (Beitrag 1390817)
Wieso warum fragst Du nach meinen Grund. Den habe ich schon und muss ich doch wohl nicht erklären. Da ich einen Grund habe ist es mir auch nicht egal.

Na gut, ich bin draußen.

Hätte sein können das dein Grund es nur scheinbar nötig macht das du wissen musst ob die Hilfedatei geöffnet ist.
Evtl. bist du ja mit deiner Lösungssuche mit "ist die Hilfedatei geöffnet" auf dem "Holzweg".

Walter Landwehr 11. Jan 2018 16:53

AW: Erkennen ob Hilfedatei geöffnetist
 
Nein bin ich nicht. Ich verwende in meinem Programm einen Thread. Der Thread verhindert in der Hilfe Datei das suchen. Deshalb muss ich bevor ich die Hilfe aufrufe den Thread beenden und wenn die Hilfedatei geschlossen ist den Thread wieder starten.

Dies ist der Hintergrund.

EWeiss 11. Jan 2018 17:16

AW: Erkennen ob Hilfedatei geöffnetist
 
Vielleicht solltest du es umgekehrt versuchen?
Wenn möglich.

Start die Hilfe Datei aus deiner Anwendung dann weist du ob sie offen ist.
https://www.experts-exchange.com/que...plication.html

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:11 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz