.hlp file einbinden
-
tag
mal wieder eine frage
also ich hab mir mit dem ms help workshop und der 99Steps.hlp hilfe eine Hilfe erstellt ... ein .hlp file. Jetzt möchte ich dieses helpfile in mein programm integrieren bzw. daraus aufrufen ... und zwar habe ich in jeder dialogbox meines programms einen help button dieser soll dann die dazu passende seite in meinem .hlp file aufrufen/öffnen
soweit ich bis jetzt herausgefunden habe muss ich dazu in dem .hlp file IDs angeben/erstellen (was auch immer das sein soll ... links bzw. hotspots sind das anscheinend nicht ??? ) und diese dann anscheinend irgendwie in dem programm über meinen button aufrufen ... aber wie erstelle ich diese IDs in meinem .hlp file und wie rufe ich sie dann im programm auf ???
das .hlp file an sich arbeitet anscheinend ganz normal ... wenn man doppelt draufklickt kann man ganz normal damit arbeiten
ach ja und so ein cnt file habe ich nicht ... aber das brauch ich anscheinend auch nicht weil ich hier ein programm habe das eine .hlp datei auch ohne cnt datei aufruft ... nur verstehe ich nicht ganz wie das in diesem programm gemacht wird ;/ dazu wurde irgendwie ein programm namens "udo" verwendet um diese hilfe zu erstellen und integrieren ... ach ja und das programm udo versteha ich auch nich (trotz hilfe ;/ ) anscheinend verstehe ich nur recht wenig bis gar nichts ^^
-
Solltest du eine Lösung finden, verschweig sie nicht! Ich suche auch noch danach - auch wenn mir eine Html-Hilfe eigentlich lieber wäre.
Ich hab mal ne bestehende Hilfe mit Doc2Help weitergemacht, da standen diese Nummern im cnt File und ohne sah es so aus, wie du beschreibst.
Leider bin ich trotzdem vollkommen ratlos.
-
so wie ich es beschrieben habe ???
hmm ... was meinst du damit ??? ...und wo gibts dieses doc2help ??? hab davon irgendwo schon was gelesen ... aber war mir niht sicher ob ich das hernehmen kann/sollte ... zur not nehme ich halt nen bestehendes wo das so funktioniert und hoffe das ich den code vom anderen programm doch irgendwie bei mir reinbekomme
und hier mal der link vom udo
http://www.dirk-hagedorn.de/de/udo/index.html
http://www.udo-open-source.org/weil irgendwie hört sich das ja schon toll an was da so steht ... nur hab ich keine lust die ganze hilfe nochmal neu in so ein .u file zu schreiben ;/ um dann festzustellen das ich das programm nicht verstehe ^^
-
Doc2Help ist sauteuer aber ziemlich gut. Damit kann man das Handbuch und die Hilfe gleichzeitig schreiben. Schmeiß einfach mal Google an.
Wenn man das cnt-File nicht mitkopiert hatte (ich musste das immer kopieren), dann öffnete sich per F1 zwar der Index, aber nicht das passende Thema zu der Ansicht.
Achja, hast du schonmal in der MSDN nach WinHelp geschaut? Damit wird das nämlich aufgerufen vom Framework. Der Befehl könnte sich also auch etwas weiter bringen.
-
Also,
als erstes zu den ID's, die du übergeben mußt. Die werden aus den verschiedenen Ressourcen (Dialoge, Menüeinträge) generiert, dazu kann man das Programm MakeHm.exe nehmen. (befindet sich im MSVC-Verzeichnis Common\Tools, Hilfe zum Aufruf: makehm -?) Die Offsets sind 0x10000 für Menüeinträge und 0x20000 für Dialoge. Das hm-File bindet man dann im Help Workshop unter Maps ein.Die ID's nützen aber allein wenig, sie müssen als #-Fußnote (Sowas wie eine Sprungmarke bei html) an den Anfang vom jeweiligen Thema in das rtf-File (wenn du mit Help-Workshop arbeitest, sollte das die Datei sein in der du deine Hilfe geschrieben hast). Nun noch das Projekt im Workshop compilieren.
Um die Hilfe im Programm nutzen zu können mußt du noch einige Einträge in die Message-Map deiner CMainFrame-Klasse vornehmen.
ON_COMMAND(ID_HELP_FINDER, CFrameWnd::OnHelpFinder) ON_COMMAND(ID_HELP, CFrameWnd::OnHelp) ON_COMMAND( ID_HELP_INDEX, OnHelpIndex )
Sollte so ungefähr funktionieren.
-
ok ... thx ...
das hilft mir echt nen ganz großes stück weiter
das mit der map ... das andere war mir einigermaßen klar ... aber die ID ... das war das große problem ... aber wenn das über die map im hpj file geht
... hab die ganze zeit versucht das direkt im .hlp file einzutragen ;/
thx nochmal
edit: es funktioniert wirklich ^^ habs grad ausprobiert ... kann sogar links hernehmen die ich verwende und muss keine neuen erstellen
also nochmal thx