Artikel-ID: 275117 - Geändert am: Mittwoch, 25. Juli 2007 - Version: 3.0

Benutzerdefinierte Hilfedatei wird im Fenster Access-Hilfe angezeigt.

SystemtippDieser Artikel bezieht sich auf ein anderes Betriebssystem als das von Ihnen verwendete. Für Sie möglicherweise nicht relevante Artikelinhalte wurden deaktiviert.
Erweiterte: Erfordert Experten Codierung und Interoperabilität sowie Mehrbenutzerfähigkeiten.

Dieser Artikel bezieht sich auf Microsoft Access-Datenbanken (.mdb) sowie auf Microsoft Access-Projekte (.adp).

Eine Microsoft Office 2000 Developer-Version dieses Artikels finden Sie unter 271390  (http://support.microsoft.com/kb/271390/EN-US/ ) .

Auf dieser Seite

Alles erweitern | Alles schließen

Problembeschreibung

Wenn Sie eine benutzerdefinierte Datei komprimierte HTML-(.chm) anzeigen, wird in Microsoft Access der Hilfeinhalt im Fenster Access-Hilfe zusammen mit der standardmäßigen Access Index, Antwort-Assistenten in Access und Access-Titel angezeigt. Dieses Verhalten tritt auf, selbst wenn Sie Ihre eigenen Titel und den Index in der Hilfedatei angeben.

Lösung

Um dieses Problem zu umgehen, erstellen Sie ein Makro die komprimierten HTML-Hilfe-Datei in einem eigenen Fenster ausgeführt. Gehen Sie hierzu folgendermaßen vor:
  1. lesen Sie die Informationen in folgendem Artikel der Microsoft Knowledge Base:
    296231  (http://support.microsoft.com/kb/296231/ ) Erstellen Sie kontextbezogene HTML-Hilfedateien in Office XP Developer
    Befolgen Sie anschließend die Anweisungen im Artikel zum Erstellen der Beispiel-Hilfedatei und Datenbank.
  2. Klicken Sie in der gleichen Datenbank in der Sie das Formular erstellt haben auf Module im Datenbankfenster, und klicken Sie auf neu .
  3. Geben oder fügen Sie den folgenden Code in das neue Modul:
    Option Compare Database
    Option Explicit
    
    Declare Function HtmlHelp Lib "hhctrl.ocx" Alias "HtmlHelpA" _
            (ByVal hwndCaller As Long, ByVal pszFile As String, _
             ByVal uCommand As Long, ByVal dwData As Long) As Long
    
    Const HH_DISPLAY_TOPIC = &H0
    Const HH_SET_WIN_TYPE = &H4
    Const HH_GET_WIN_TYPE = &H5
    Const HH_GET_WIN_HANDLE = &H6
    Const HH_DISPLAY_TEXT_POPUP = &HE
    Const HH_HELP_CONTEXT = &HF
    Const HH_TP_HELP_CONTEXTMENU = &H10
    Const HH_TP_HELP_WM_HELP = &H11
    
    Public Sub Show_Help(HelpFileName As String, MycontextID As Long)
        'A specific topic identified by the variable context-ID is started in
        'response to this button click.
        Dim hwndHelp As Long
    
        'The return value is the window handle of the created Help window.
        Select Case MycontextID
            Case Is = 0
                hwndHelp = HtmlHelp(Application.hWndAccessApp, HelpFileName, _
                           HH_DISPLAY_TOPIC, MycontextID)
            Case Else
                hwndHelp = HtmlHelp(Application.hWndAccessApp, HelpFileName, _
                           HH_HELP_CONTEXT, MycontextID)
        End Select
    End Sub
    
    Public Function HelpEntry()
        'Identify the name of the Help file and a possible context-id.
        Dim FormHelpId As Long
        Dim FormHelpFile As String
        Dim curForm As Form
    
        'Set the curForm variable to the currently active form.
        Set curForm = Screen.ActiveForm
    
        'As a default, specify a generic Help file and context-id. Note that
        'the location of your file may be different.
        FormHelpFile = "C:\MyProject.chm"
        FormHelpId = 1001
    
        'Check the Help file property of the form. If a Help file exists,
        'assign the name and context-id to the respective variables.
        If curForm.HelpFile <> "" Then
            FormHelpFile = curForm.HelpFile
        End If
    
        'If the Help context-id of the control is not null and greater than
        'zero, assign the value to the variable.
        If Not IsNull(Screen.ActiveControl.Properties("HelpcontextId")) Then
            If Screen.ActiveControl.Properties("HelpcontextId") > 0 Then
                FormHelpId = Screen.ActiveControl.Properties("HelpcontextId")
            End If
        End If
    
        'Call the function to start the Help file, passing it the name of the
        'Help file and context-id.
        Show_Help FormHelpFile, FormHelpId
    End Function
    					
  4. Speichern Sie das Modul als Module1, und beenden Sie den Visual Basic-Editor.
  5. Klicken Sie im Datenbankfenster klicken Sie auf Makros , und klicken Sie auf neu .
  6. Klicken Sie im Menü Ansicht auf Makronamen .
  7. Geben Sie Folgendes in der ersten Zeile in der Spalte :
    {F1}
  8. Legen Sie das Action-Feld für {F1} auf RunCode .
  9. Geben Sie für das Argument Funktionsname Folgendes ein:
    =HelpEntry()
  10. Speichern von neuen Makros als AutoKeys und schließen Sie es.
  11. Klicken Sie im Datenbankfenster klicken Sie auf Formulare , und öffnen Sie Form1 in der Formularansicht.
  12. Klicken Sie auf das zweite Feld, und drücken Sie F1. Beachten Sie, dass die benutzerdefinierte Hilfedatei in einem eigenen Fenster angezeigt wird.

Status

Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.

Weitere Informationen

Schritte zum Reproduzieren des Problems

  1. lesen Sie die Informationen in folgendem Artikel der Microsoft Knowledge Base:
    296231  (http://support.microsoft.com/kb/296231/ ) Erstellen Sie kontextbezogene HTML-Hilfedateien in Office XP Developer
    Folgen Sie den Anweisungen im Artikel zum Erstellen der Beispieldatenbank und der benutzerdefinierten Hilfedatei.
  2. Öffnen Sie Form1 in der Formularansicht.
  3. Klicken Sie auf das zweite Feld, und drücken Sie F1. Beachten Sie, dass das Beispiel-Hilfethema für das zweite Textfeld unerwartet im Fenster Access-Hilfe mit Access Titel, Index und Antwort-Assistent angezeigt wird.

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Office XP Developer Edition
  • Microsoft Access 2002 Standard Edition
Keywords: 
kbmt kbbug kbnofix kbpdwizard KB275117 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 275117  (http://support.microsoft.com/kb/275117/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.