Microsoft KB Archive/174393: Difference between revisions

From BetaArchive Wiki
m (Text replacement - ">" to ">")
m (Text replacement - "&" to "&")
 
Line 62: Line 62:
   IServiceProviderPtr pSP = pCS;
   IServiceProviderPtr pSP = pCS;
   pSP->QueryService(SID_SHlinkFrame, IID_IHlinkFrame,
   pSP->QueryService(SID_SHlinkFrame, IID_IHlinkFrame,
       (void**)&pHLFrame);
       (void**)&pHLFrame);
                 </pre>
                 </pre>
In an MFC Active Document server, the IOleClientSite interface can be retrieved from within the document class using the m_lpClientSite protected member of COleServerDoc.
In an MFC Active Document server, the IOleClientSite interface can be retrieved from within the document class using the m_lpClientSite protected member of COleServerDoc.

Latest revision as of 12:30, 21 July 2020

Knowledge Base


How To Getting IHlinkFrame from Within a Hyperlink Target

Article ID: 174393

Article Last Modified on 7/1/2004



APPLIES TO

  • Microsoft Internet Explorer 3.0
  • Microsoft Internet Explorer 3.01
  • Microsoft Internet Explorer 3.02
  • Microsoft Internet Explorer 4.0 128-Bit Edition
  • Microsoft Internet Explorer 4.01 Service Pack 2



This article was previously published under Q174393

SUMMARY

In an example in the Hyperlinking section of the documentation, the Internet Client SDK indicates that an Active Document application can retrieve the IHlinkFrame interface from its container by calling QueryInterface on the container's IOleInPlaceFrame object and asking for IID_IHlinkFrame.

For Internet Explorer (IE), this will fail. The correct way to retrieve IHlinkFrame is through the IServiceProvider interface.

MORE INFORMATION

Here is sample code that demonstrates the correct method for retrieving Internet Explorer's IHlinkFrame interface:

   IHlinkFramePtr pHLFrame;
   IOleClientSitePtr pCS = m_lpClientSite;
   IServiceProviderPtr pSP = pCS;
   pSP->QueryService(SID_SHlinkFrame, IID_IHlinkFrame,
      (void**)&pHLFrame);
                

In an MFC Active Document server, the IOleClientSite interface can be retrieved from within the document class using the m_lpClientSite protected member of COleServerDoc.

REFERENCES

This sample uses Visual C++ 5.0 COM-support syntax. Please refer to the Visual C++ 5.0 documentation for discussion on these smart pointers:

Visual C++ Books Online: Visual C++; Visual C++ Programmer's Guide; Adding Program Functionality; Overviews; Compiler COM Support: Overview


Keywords: kbhowto KB174393