विंडोज एपीआई विनहेल्प का उपयोग करके पॉप-अप संदर्भ-संवेदनशील सहायता कैसे बनाएं ()


उन्नत: विशेषज्ञ कोडिंग, इंटरऑपरेबिलिटी और मल्टीयूजर कौशल की आवश्यकता होती है।
इस लेख के माइक्रोसॉफ्ट एक्सेस 97 संस्करण के लिए, 141621 देखें।

सारांश


एक अलग विंडो में अपने आवेदन की ऑनलाइन सहायता प्रणाली प्रदर्शित करने का एक विकल्प इसे अपने आवेदन में एक छोटी, छायांकित पॉप-अप विंडो में प्रदर्शित करना है। ऐसा करने के लिए, आप अपने HELP_CONTEXTPOPUP तर्क के साथ विंडोज एपीआई विनहेल्प () फ़ंक्शन का उपयोग कर सकते हैं। यह लेख आपको दिखाता है कि इस तरह की सहायता प्रणाली को कैसे लागू किया जाए। इस लेख में माना गया है कि आप विंडोज हेल्प फाइल्स बनाने के लिए माइक्रोसॉफ्ट विंडोज हेल्प वर्कशॉप का उपयोग करने से परिचित हैं।

अधिक जानकारी


विंडोज एपीआई विनहेल्प () फ़ंक्शन बड़ी संख्या में विकल्पों का समर्थन करता है। HELP_CONTEXTPOPUP विकल्प एक छायांकित पॉप-अप विंडो खोलता है जिसमें आप मदद प्रदर्शित कर सकते हैं। यह विंडो उस विंडो के समान है जो तब खुलती है जब आप माइक्रोसॉफ्ट एक्सेस हेल्प सिस्टम में शब्दावली प्रविष्टि (हरे, रेखांकित पाठ) पर क्लिक करते हैं। इस सुविधा को लागू करने के लिए, इन चरणों का पालन करें:
  • अपने फॉर्म के लिए हेल्पकेन्वेडिड आईडी और हेल्पफाइल प्रॉपर्टीज को वैध विंडोज हेल्प फाइल पर सेट करके वर्किंग हेल्प सिस्टम बनाएं।
  • उपयोगकर्ता-परिभाषित फ़ंक्शन को कॉल करने के लिए F1 कुंजी को रीडायरेक्ट करें जो HELP_CONTEXTPOPUP विकल्प का उपयोग करके सहायता फ़ाइल खोलता है।
ध्यान दें कि पॉप-अप हेल्प विंडो से अन्य सहायता विषयों में कूदना या शाखाओं में बंटी होना इस लेख में चर्चा किए गए तरीकों द्वारा समर्थित नहीं है। निम्नलिखित चरणों में बताया गया है कि पॉप-अप सहायता विंडो खोलने के लिए उपयोगकर्ता-परिभाषित फ़ंक्शन कैसे बनाया जाए और F1 कुंजी को कैसे रीडायरेक्ट किया जाए: सावधानी:यदि आप इस उदाहरण में चरणों का पालन करते हैं, तो आप नमूना डेटाबेस Northwind.mdb को संशोधित करते हैं। आप Northwind.mdb फ़ाइल का बैकअप लेना चाहते हैं और डेटाबेस की एक प्रति पर इन चरणों का पालन कर सकते हैं।

एक्सेस 2000, एक्सेस 2002, और एक्सेस 2003

  1. माइक्रोसॉफ्ट एक्सेस शुरू करें
  2. नमूना डेटाबेस Northwind.mdb या नमूना परियोजना NorthwindCS.adpखोलें ।
  3. डेटाबेस विंडो में, ऑब्जेक्ट्ससेक्शन के तहत, मॉड्यूल पर क्लिक करें।
  4. नएक्लिक करें ।
  5. विजुअल बेसिक एडिटर में, घोषणा अनुभाग में निम्नलिखित कोड टाइप या पेस्ट करें:
    Declare Function WinHelp Lib "user32" Alias "WinHelpA" _                 (ByVal hwnd As Long, _                  ByVal lpHelpFile As String, _                  ByVal wCommand As Long, _                  ByVal dwData As Long) As LongPublic Const HELP_CONTEXTPOPUP = &H8&
    नोट:आपके पास मौजूदा माइक्रोसॉफ्ट एक्सेस लाइब्रेरी में परिभाषित कुछ Microsoft Windows एपीआई कार्य हो सकते हैं; इसलिए, आपकी घोषणाएं डुप्लिकेट हो सकती हैं। अगर आपको डुप्लीकेट प्रक्रिया नाम त्रुटि संदेश मिलता है, तो अपने कोड में घोषणाओं के विवरण को हटा दें या टिप्पणी करें.
  6. विजुअल बेसिक एडिटर में निम्नलिखित कोड को परिशिष्ट करें:
    Function Help32() As Boolean   On Local Error GoTo Help32_Err   Dim Cid As Long, Result As Long   On Error Resume Next   ' Get the HelpContextID of the active control.   ' The error is 2474 if no control is active.   Cid = Screen.ActiveControl.HelpContextId   If Cid = 0 Then      ' There is no control context ID, so check the form and get      ' the HelpContextID of the active form.      ' The error is 2475 if no form is active.      Cid = Screen.ActiveForm.HelpContextId   End If   ' If there is a context ID, open the Help file with context.   ' Specify your custom Help file for the second argument.   ' This example used the default help file NWIND9.HLP located   ' in the Office Samples folder.    ' If the NWIND9.HLP is not available, then replace the    ' specified path with a valid Winhelp file, and modify the code and     ' the HelpContextID of the Forms and Controls accordingly.   If Cid > 0 And Cid < 32767 Then      Result = WinHelp(Application.hWndAccessApp, _      "C:\Program Files\Microsoft Office\Office\Samples\nwind9.hlp", _      HELP_CONTEXTPOPUP, Cid)      Help32 = True   End IfHelp32_End:   Exit FunctionHelp32_Err:   MsgBox Err.Description   Resume Help32_EndEnd Function
  7. हेल्पमॉड्यूलके रूप में मॉड्यूल को सहेजें।
  8. विजुअल बेसिक एडिटर को बंद करें।
  9. डेटाबेस विंडो में, ऑब्जेक्ट्ससेक्शन के तहत, मैक्रोपर क्लिक करें।
  10. नएक्लिक करें ।
  11. F1 कुंजी को रीडायरेक्ट करने के लिए निम्नलिखित नए मैक्रो बनाएं:
       Macro Name     Action       Action Arguments   --------------------------------------------------------      {F1}        RunCode      Function Name: Help32() 
  12. ऑटोकीजके रूप में मैक्रो को बचाएं, और फिर मैक्रो को बंद करें।
  13. डेटाबेस विंडो में, ऑब्जेक्ट्ससेक्शन के तहत, फॉर्मपर क्लिक करें।
  14. सही फलक में, डबल क्लिक आपूर्तिकर्ताओं
  15. F1 कुंजी दबाएं।
देखें कि माइक्रोसॉफ्ट एक्सेस पॉप-अप बॉक्स में नियंत्रण या फॉर्म की हेल्पकेसिडिसिड के अनुरूप मदद संदेश प्रदर्शित करता है।

प्रवेश 2007

  1. माइक्रोसॉफ्ट एक्सेस शुरू करें
  2. नमूना डेटाबेस Northwind2007.accdb खोलें।
  3. टैब बनाएं,मैक्रोके नीचे नीचे तीर पर क्लिक करें, और फिर मॉड्यूलपर क्लिक करें।
  4. विजुअल बेसिक एडिटर में, घोषणा अनुभाग में निम्नलिखित कोड उदाहरण चिपकाएं।
    Declare Function WinHelp Lib "user32" Alias "WinHelpA" _                 (ByVal hwnd As Long, _                  ByVal lpHelpFile As String, _                  ByVal wCommand As Long, _                  ByVal dwData As Long) As LongPublic Const HELP_CONTEXTPOPUP = &H8&
    नोट आपके पास मौजूदा माइक्रोसॉफ्ट एक्सेस लाइब्रेरी में परिभाषित कुछ Microsoft Windows एपीआई कार्य हो सकते हैं; इसलिए, आपकी घोषणाएं डुप्लिकेट हो सकती हैं। अगर आपको डुप्लीकेट प्रक्रिया नाम त्रुटि संदेश मिलता है, तो अपने कोड में घोषणाओं के विवरण को हटा दें या टिप्पणी करें.
  5. विजुअल बेसिक एडिटर में निम्नलिखित कोड उदाहरण को परिशिष्ट करें।
    Function Help32() As Boolean   On Local Error GoTo Help32_Err   Dim Cid As Long, Result As Long   On Error Resume Next   ' Get the HelpContextID of the active control.   ' The error is 2474 if no control is active.   Cid = Screen.ActiveControl.HelpContextId   If Cid = 0 Then      ' There is no control context ID, so check the form and get      ' the HelpContextID of the active form.      ' The error is 2475 if no form is active.      Cid = Screen.ActiveForm.HelpContextId   End If   ' If there is a context ID, open the Help file with context.   ' Specify your custom Help file for the second argument.   ' This example used the default help file NWIND9.HLP located   ' in the Office Samples folder.    ' If the NWIND9.HLP is not available, then replace the    ' specified path with a valid Winhelp file, and modify the code and     ' the HelpContextID of the Forms and Controls accordingly.   If Cid > 0 And Cid < 32767 Then      Result = WinHelp(Application.hWndAccessApp, _      "C:\Program Files\Microsoft Office\Office\Samples\nwind9.hlp", _      HELP_CONTEXTPOPUP, Cid)      Help32 = True   End IfHelp32_End:   Exit FunctionHelp32_Err:   MsgBox Err.Description   Resume Help32_EndEnd Function
  6. मॉड्यूल को हेल्पमॉड्यूल के रूप में सहेजें।
  7. विजुअल बेसिक एडिटर को बंद करें।
  8. बनाए टैब पर, मैक्रोपर क्लिक करें।
  9. F1 कुंजी को रीडायरेक्ट करने के लिए निम्नलिखित नए मैक्रो बनाएं:
       Macro Name     Action       Action Arguments   --------------------------------------------------------      {F1}        RunCode      Function Name: Help32() 
  10. ऑटोकीज के रूप में मैक्रो को बचाएं, और फिर मैक्रो को बंद करें।
  11. बाएं फलक में आपूर्तिकर्ताओं पर क्लिक करें।
  12. बाएं फलक में, डबल क्लिक आपूर्तिकर्ता सूची
  13. F1 कुंजी दबाएं।
देखें कि माइक्रोसॉफ्ट एक्सेस पॉप-अप बॉक्स में नियंत्रण या फॉर्म की हेल्पकेसिडिसिड के अनुरूप मदद संदेश प्रदर्शित करता है।

संदर्भ


अधिक जानकारी के लिए, माइक्रोसॉफ्ट नॉलेज बेस में लेख देखने के लिए निम्नलिखित लेख संख्याओं पर क्लिक करें:
828419 HTMLHelp एपीआई या HTML का उपयोग करके एचटीएमएल सहायता प्रणाली कैसे बनाएं या एक्सेस में एचटीएमएल हेल्प
242433 कैसे बनाएं संदर्भ संवेदनशील एचटीएमएल हेल्प फाइलें