chm File in Windows Form einbinden



  • Hallo!

    Ich habe mit HTML Help Workshop 4.74 eine chm Datei für ein Windows Form Programm erstellt. Nun möchte ich diese in das Windows Form einbinden. Wenn man im Menü des Windows Form.net auf Hilfe klickt, soll sich diese Datei öffnen.
    Ich verwende Visual Studio 2003 .net und habe bisher nur eine Einbindung für Visual Studio 6.0 gefunden. http://support.microsoft.com/default.aspx?scid=kb;en-us;186907

    Dieses UP funktioniert so nicht:

    HtmlHelp(GetDesktopWindow(), "Hilfe\Funct2006.chm::/Einleitung.html>Funct2006 Hilfe",      HH_DISPLAY_TOPIC, NULL);
    

    Es ist aber #include "htmlhelp.h" eingebunden.
    Wie binde ich dieses File nun so ein, dass die chm Datei Funct2006 mit der Startseite Einleitung.html geöffnet wird.

    clemens



  • Du hast Dein eigentliches Problem noch nicht beschrieben (oder ich habe es zumindest noch nicht verstanden)...
    Was geht denn jetzt genau nicht? Der Aufruf sieht doch richtig aus, oder?



  • Da Problem liegt daran, dass der Kompiler das nicht kompiliert!
    Kompilerausgabe:

    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(170) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'hdr'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(170) : error C2501: 'tagHHN_NOTIFY::NMHDR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(170) : error C2501: 'tagHHN_NOTIFY::hdr': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(171) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszUrl'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(171) : error C2501: 'tagHHN_NOTIFY::PCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(171) : error C2501: 'tagHHN_NOTIFY::pszUrl': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(177) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'hinst'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(177) : error C2501: 'tagHH_POPUP::HINSTANCE': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(177) : error C2501: 'tagHH_POPUP::hinst': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(178) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'idString'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(178) : error C2501: 'tagHH_POPUP::UINT': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(178) : error C2501: 'tagHH_POPUP::idString': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(179) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszText'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(179) : error C2501: 'tagHH_POPUP::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(179) : error C2501: 'tagHH_POPUP::pszText': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(180) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pt'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(180) : error C2501: 'tagHH_POPUP::POINT': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(180) : error C2501: 'tagHH_POPUP::pt': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(181) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'clrForeground'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(181) : error C2501: 'tagHH_POPUP::COLORREF': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(181) : error C2501: 'tagHH_POPUP::clrForeground': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(182) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'clrBackground'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(182) : error C2501: 'tagHH_POPUP::COLORREF': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(182) : error C2501: 'tagHH_POPUP::clrBackground': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(183) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'rcMargins'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(183) : error C2501: 'tagHH_POPUP::RECT': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(183) : error C2501: 'tagHH_POPUP::rcMargins': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(184) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszFont'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(184) : error C2501: 'tagHH_POPUP::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(184) : error C2501: 'tagHH_POPUP::pszFont': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(190) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fReserved'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(190) : error C2501: 'tagHH_AKLINK::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(190) : error C2501: 'tagHH_AKLINK::fReserved': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(191) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszKeywords'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(191) : error C2501: 'tagHH_AKLINK::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(191) : error C2501: 'tagHH_AKLINK::pszKeywords': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(192) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszUrl'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(192) : error C2501: 'tagHH_AKLINK::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(192) : error C2501: 'tagHH_AKLINK::pszUrl': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(193) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszMsgText'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(193) : error C2501: 'tagHH_AKLINK::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(193) : error C2501: 'tagHH_AKLINK::pszMsgText': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(194) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszMsgTitle'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(194) : error C2501: 'tagHH_AKLINK::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(194) : error C2501: 'tagHH_AKLINK::pszMsgTitle': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(195) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszWindow'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(195) : error C2501: 'tagHH_AKLINK::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(195) : error C2501: 'tagHH_AKLINK::pszWindow': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(196) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fIndexOnFail'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(196) : error C2501: 'tagHH_AKLINK::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(196) : error C2501: 'tagHH_AKLINK::fIndexOnFail': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(219) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszCatName'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(219) : error C2501: 'tagHH_ENUM_IT::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(219) : error C2501: 'tagHH_ENUM_IT::pszCatName': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(220) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszITName'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(220) : error C2501: 'tagHH_ENUM_IT::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(220) : error C2501: 'tagHH_ENUM_IT::pszITName': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(221) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszITDescription'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(221) : error C2501: 'tagHH_ENUM_IT::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(221) : error C2501: 'tagHH_ENUM_IT::pszITDescription': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(227) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszCatName'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(227) : error C2501: 'tagHH_ENUM_CAT::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(227) : error C2501: 'tagHH_ENUM_CAT::pszCatName': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(228) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszCatDescription'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(228) : error C2501: 'tagHH_ENUM_CAT::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(228) : error C2501: 'tagHH_ENUM_CAT::pszCatDescription': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(234) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszCatName'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(234) : error C2501: 'tagHH_SET_INFOTYPE::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(234) : error C2501: 'tagHH_SET_INFOTYPE::pszCatName': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(235) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszInfoTypeName'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(235) : error C2501: 'tagHH_SET_INFOTYPE::LPCSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(235) : error C2501: 'tagHH_SET_INFOTYPE::pszInfoTypeName': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(238) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'HH_INFOTYPE'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(238) : error C2501: 'HH_INFOTYPE': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(239) : error C2143: Syntaxfehler: Es fehlt ';' vor '*'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(239) : error C2378: 'HH_INFOTYPE': Neudefinition; Symbol kann nicht mit typedef überladen werden
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(238): Siehe Deklaration von 'HH_INFOTYPE'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(239) : error C2501: 'PHH_INFOTYPE': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(270) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fUniCodeStrings'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(270) : error C2501: 'tagHH_FTS_QUERY::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(270) : error C2501: 'tagHH_FTS_QUERY::fUniCodeStrings': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(271) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszSearchQuery'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(271) : error C2501: 'tagHH_FTS_QUERY::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(271) : error C2501: 'tagHH_FTS_QUERY::pszSearchQuery': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(272) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'iProximity'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(272) : error C2501: 'tagHH_FTS_QUERY::LONG': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(272) : error C2501: 'tagHH_FTS_QUERY::iProximity': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(273) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fStemmedSearch'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(273) : error C2501: 'tagHH_FTS_QUERY::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(273) : error C2501: 'tagHH_FTS_QUERY::fStemmedSearch': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(274) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fTitleOnly'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(274) : error C2501: 'tagHH_FTS_QUERY::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(274) : error C2501: 'tagHH_FTS_QUERY::fTitleOnly': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(275) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fExecute'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(275) : error C2501: 'tagHH_FTS_QUERY::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(275) : error C2501: 'tagHH_FTS_QUERY::fExecute': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(276) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'pszWindow'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(276) : error C2501: 'tagHH_FTS_QUERY::LPCTSTR': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(276) : error C2501: 'tagHH_FTS_QUERY::pszWindow': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(283) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fUniCodeStrings'
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(283) : error C2501: 'tagHH_WINTYPE::BOOL': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(283) : error C2501: 'tagHH_WINTYPE::fUniCodeStrings': Fehlende Speicherklasse oder Typspezifizierer
    c:\Diplomarbeit\Software\Funktions_Generator\htmlhelp.h(283) : fatal error C1003: Mehr als 100 Fehler gefunden; Kompilierung wird abgebrochen.

    Der Fehler liegt anscheinend an der htmlhelp.h Datei!



  • Du solltest vielleicht zuerst <windows.h> einbinden...



  • Nein daran liegt es nicht!
    Ich habe das File zwar jetzt später inkludiert und da kommen diese Fehlermeldungen nicht.
    Allerdings gibt es ein Linker Problem:

    Verknüpfen...
    Form1.obj : error LNK2001: Nichtaufgelöstes externes Symbol "struct HWND__ * __stdcall HtmlHelpA(struct HWND__ *,char const *,unsigned int,unsigned long)" (?HtmlHelpA@@$$J216YGPAUHWND__@@PAU1@PBDIK@Z)
    C:\Diplomarbeit\Software\Funktions_Generator\Debug\Funktions_Generator.exe : fatal error LNK1120: 1 unaufgelöste externe Verweise

    Wo kann man da *.lib datein einfügen?



  • #pragma comment(lib, "htmlhelp.lib")
    


  • Kompilierfehler beseitigt, allerdings wird die chm Datei nicht geöffnet, wenn man im Menü auf ?->Hilfe klickt.

    private: System::Void menuItem22_Click(System::Object *  sender, System::EventArgs *  e)
    			 {
    				HtmlHelp(GetDesktopWindow(), "Hilfe\Funct2006.chm::/Einleitung.html>Funct2006 Hilfe",      HH_DISPLAY_TOPIC, NULL);
    			 }
    

    Die Datei Funct2006.chm liegt im Unterordner Hilfe und als Startseite soll die Datie Einleitung.html aufgerufen werden.



  • So funktioniert es ohne Fehler:

    HtmlHelp(GetDesktopWindow(), "c:\\Programme\\Funct2006\\Funct2006.chm::/Einleitung.html",  HH_DISPLAY_TOPIC, NULL) ;
    

Anmelden zum Antworten