Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi HTML Hilfe in D2006 (https://www.delphipraxis.net/70740-html-hilfe-d2006.html)

hanspeter 3. Jun 2006 21:11


HTML Hilfe in D2006
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich habe wieder mal ein Problem mit der HTML Hilfe in D2006.

Ich habe mit Helpmaker eine Hilfedatei (erst mal was kleines mit 2 Topics) erstellt.
Hier habe ich sowohl eine Topic ID, als auch ein Schlüsselwort vergeben.

HTMLHelpViewer ist in Uses eingebunden.

Die Helpdatei weise ich mit

Delphi-Quellcode:
Application.HelpFile := IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'Sprecher.chm';
zu.

Der Aufruf erfolgt dann über Helpcontext mit

Delphi-Quellcode:
Application.HelpContext(20);
oder alternativ

Delphi-Quellcode:
 Application.HelpKeyword('Topic1')
Das funktioniert wunderbar. Es kommt die gewünschte Hilfe.

Nur vor dem Anzeigen der Hilfe bringt Delphi einen Stack - overflow Fehler.
Bestätige ich den Fehler mit OK, dann ist die Hilfe da.

Hat wer eine Idee, woran das liegen kann.
Ich habe die chm Datei mal in der Anlage bereitgestellt.

hanspeter 5. Jun 2006 09:20

Re: HTML Hilfe in D2006
 
Es ist zum Mäuse melken.
Seit zwei Tagen hänge ich an dem Problem.
Lege ich ein neues Projekt an und füge einen Schalter ein:

Application.HelpFile := 'C:\programme\autuvo\Sprecher.chm';
Application.HelpContext(40);

( HTMLHelpViewer in Uses)
dann funktioniert alles.

Binde ich diese Anweisung in ein bestehende Projekt ein, dann kommt im Debugmode ein
Stack overflow, danach wird die Hilfe angezeigt.
Außerhalb der IDE stürzt das Programm ab.

Hat wer eine Idee, warum das nicht geht und an welcher Schraube ich noch drehen kann?

Gruß Peter

hanspeter 5. Jun 2006 18:06

Re: HTML Hilfe in D2006
 
DAS KANN DOCH WOHL NICHT WAHR SEIN?

Ich habe alle Quellen des fehlerhaften Projektes in ein TestProjekt eingebunden und die Hilfe funktionierte dort.
Dann habe ich im bestehenden Projekt alle von Delphi erzeugten Dateien gelöscht und das Projekt neu kompiliert.
Der gleiche Effekt. Beim Start im Debugger kommt ein Stack Überlauf.
Beim Start außerhalb des Debuggers stürzt das Programm beim Aufruf der Hilfe ab.
Ich habe dan das "HHTML Help Kit for Delphi" von Helpware eingebunden. Hier der gleiche Effekt beim API Aufruf kommt sofort ein Stacküberlauf und das Programm stürzt ab.

Und jezt kommt die Lösung.
Ich habe alle .pas und .dfm Dateien in ein neues Verzeichnis kopiert und das Projekt neu angelegt.
Danach war der Fehler weg.
Innerhalb kürzester Zeit ist das jetzt das zweite Mal, das mir Delphi ein produktives Projekt ireversibel zerschießt.

Langsam fange ich an, Delphi zu hassen.

Gruß Peter

Bernhard Geyer 5. Jun 2006 20:26

Re: HTML Hilfe in D2006
 
Wenn Du das Projekt neu angelegt hast wäre es mal interessant die Unterschiede in den diversen Projektdateien zu untersuchen.

O.T.: Und wenn Du schon CHM-Dateien verwendest. Schon mal probiert eine CHM-Hilfedatei von einem Netzwerklaufwerk zu starten. Da hat M$ auch ein schönes Ei gelegt.

hanspeter 5. Jun 2006 22:08

Re: HTML Hilfe in D2006
 
Zitat:

Zitat von Bernhard Geyer
Wenn Du das Projekt neu angelegt hast wäre es mal interessant die Unterschiede in den diversen Projektdateien zu untersuchen.

Habe ich mal gemacht und die betreffende Stelle gefunden.
Hier handelt es sich offensichtlich um einen Fehler beim automatischen Import eines Delphi 7 Projektes.

Im XML Token <Linker> wurde übernommen:
<Linker Name="MaxStackSize">65536</Linker>
Das ist wohl zu wenig.
Im neuen Projekt wurde an dieser Stelle automatisch generiert:

<Linker Name="MaxStackSize">1048576</Linker>

Mit dieser Größe geht es.
Man das ist ja ein ganz schöner Resourcenhunger.

Zitat:

O.T.: Und wenn Du schon CHM-Dateien verwendest. Schon mal probiert eine CHM-Hilfedatei von einem Netzwerklaufwerk zu starten. Da hat M$ auch ein schönes Ei gelegt.
Ja da gibt es aber inzwischen von MS ein Tool, was eine REgistrierung der CHM Datei zulässt. Und treffen tuts nur die,
welche das letzte IE Update installiert haben.

Ich verwende die Hilfedateien aber nur lokal. Da sollte es keine Probleme geben.


Gruß Peter

Bernhard Geyer 6. Jun 2006 05:57

Re: HTML Hilfe in D2006
 
Zitat:

Zitat von hanspeter
Ja da gibt es aber inzwischen von MS ein Tool, was eine REgistrierung der CHM Datei zulässt.

Hat Du einen Link? Würde mich brennend interessieren.

Zitat:

Zitat von hanspeter
Und treffen tuts nur die, welche das letzte IE Update installiert haben.

Da ich nicht 100% abschätzen kann welche Sicherheitslücken offen bleiben wenn ich dieses Update nicht installiere werde ich wohl keinen Kunden raten können es nicht zu installieren.

hanspeter 6. Jun 2006 08:49

Re: HTML Hilfe in D2006
 
Zitat:

Zitat von Bernhard Geyer
Hat Du einen Link? Würde mich brennend interessieren.

Das betrifft die Sicherheitsrichtlinien für locale ActiveX.

die Fehlerbeschreibung

Deutsch MS

Ein Registrierungtool


Gruß Peter

Bernhard Geyer 6. Jun 2006 10:11

Re: HTML Hilfe in D2006
 
Komisch das mal wieder der Knowledgebase-Link nur die halbe Wahrheit sagt:

Es ist der ItssRestrictions-Untereintrag auf jedenfall auch nötig. Was der Eintrag HHRestrictions zusätzlich freischaltet ist auf dem ersten Blick nicht ersichtlich.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:25 Uhr.

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