ACC: How to Call the Windows Help Search Dialog Box

Last reviewed: June 8, 1997
Article ID: Q109826
The information in this article applies to:
  • Microsoft Access versions 1.0, 1.1, 2.0

SUMMARY

Advanced: Requires expert coding, interoperability, and multiuser skills.

This article describes how to call the Windows Help Search dialog box from within your Microsoft Access application using the WinHelp() and FindWindow() Windows API function calls.

This article assumes that you are familiar with Access Basic and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information on Access Basic, please refer to the "Introduction to Programming" manual in Microsoft Access version 1.x, or the "Building Applications" manual, Chapter 3, "Introducing Access Basic," in version 2.0.

MORE INFORMATION

The following example demonstrates how to activate the Search dialog box with a sample Access Basic function called OpenHelpSearch(). This example uses the Microsoft Access Help file:

NOTE: In the following sample code, an underscore (_) is used as a line- continuation character. Remove the underscore from the end of the line when re-creating this code in Access Basic.

  1. Enter the following lines in a new module's Declarations section:

          Option Explicit
          Global Const HELP_PARTIALKEY = &H105
          Declare Function WinHelp Lib "User" (ByVal hWnd As _
    
             Integer, ByVal lpHelpFile As String, ByVal _
             wCommand As Integer, ByVal dwData As Any) As Integer
          Declare Function HC_FindWindow% Lib "user" Alias "FindWindow" _
             (ByVal lpClassName As Any, ByVal lpCaption As Any)
    
    

  2. Create two procedures by entering the following code in the module:

          Function OpenHelpSearch ()
    
             Dim DummyVal$, Temp%
             DummyVal$ = ""
             Temp% = WinHelp(GetAccessHandle(),_
                "c:\Access\msaccess.hlp", HELP_PARTIALKEY, DummyVal$)
             'For version 2.0, replace Temp% = etc with the following:
             'Temp% = WinHelp(GetAccessHandle(),_
             '   "c:\Acc2\msacc20.hlp", HELP_PARTIALKEY, DummyVal$)
          End Function
    
          Function GetAccessHandle ()
             GetAccessHandle = HC_FindWindow("Omain", 0&)
          End Function
    
    

  3. Save the module as Search Help.

  4. From the Run menu, choose Compile All.

  5. Type the following in the module's Immediate window, and then press ENTER:

          ? OpenHelpSearch()
    

When you call the OpenHelpSearch() function, the Windows API WinHelp() function is called. The OpenHelpSearch() function passes the current Microsoft Access handle, the name of the Help file, the command HELP_PARTIALKEY and a null string to the WinHelp() function. You are then prompted for a topic to search for. Note that you can call the OpenHelpSearch() function from any command button.

REFERENCES

"Programming Windows: The Microsoft Guide to Writing Applications for Windows 3," Charles Petzold, Microsoft Press, 1990

"Programmer's Reference Library: Microsoft Windows 3.1 Guide to Programming Reference," Volumes 1-6, Microsoft Press, 1992


Keywords : kbprg PgmApi
Version : 1.0 1.1 2.0
Platform : WINDOWS
Hardware : X86
Issue type : kbhowto


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: June 8, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.