Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
DotNet
acad.assignment.mngr
academic
adonet
aspnet
aspnet.announcements
aspnet.build.controls
aspnet.caching
aspnet.datagridcontrol
aspnet.mobile
aspnet.security
aspnet.webcontrols
aspnet.webservices
clr
compactframework
component_services
datatools
distributed_apps
drawing
faqs
framework
framework.wmi
general
internationalization
interop
languages.csharp
languages.jscript
languages.vb
languages.vb.controls
languages.vb.data
languages.vb.upgrade
languages.vc
languages.vc.libraries
myservices
odbcnet
performance
remoting
scripting
sdk
security
setup
vjsharp
vsa
webservi.enhancements
webservices
windowsforms
windowsforms.controls
winforms.databinding
winforms.designtime
xml
  
 
date: Sat, 5 Jul 2008 10:19:00 -0700,    group: microsoft.public.dotnet.framework.interop        back       


Problem is accessing frames within HTML document using IOleContain   
Hi,

I am trying to access the images rendered within frame or iframe in HTML web 
page using C#.Net.

I got one reference in this artical
http://support.microsoft.com/kb/196340 and tried the way that has been 
suggested 

----------------------------------------------------------------------------------------------
Guid guidIOleContainer = typeof(IOleContainer).GUID;

// Here oDoc is the mshtml.HTMLDocument object
IntPtr punk = Marshal.GetIUnknownForObject(oDoc); 

object iOleContainer = new object();

IntPtr ppvContainerIntPtr = Marshal.GetIUnknownForObject(iOleContainer);

//But this always fails
int hr = Marshal.QueryInterface(punk, ref guidIOleContainer, out 
ppvContainerIntPtr);

if (ppvContainerIntPtr != IntPtr.Zero)
{
     IOleContainer pOleContainer = 
(IOleContainer)Marshal.PtrToStructure(ppvContainerIntPtr, 	typeIOleContainer);

     Marshal.Release(punk);
                
      object[] objs = new object[10];

      pOleContainer.EnumObjects((int)tagOLECONTF.EMBEDDINGS, objs);

      IEnumUnknown pOleEnumObject = objs[0] as IEnumUnknown;

      MessageBox.Show(pOleEnumObject.ToString());
}
----------------------------------------------------------------------------------------------

But The problems are :
Marshal.QueryInterface for IoleContainer always fails.

How can I access the IOleContainer interface using doucment object in .net.

I have tried frames collection of HTMLDocumentClass but it is also not 
working.

Is there any other way to access document object of frames or Iframes.

Thanks,
Hetal
date: Sat, 5 Jul 2008 10:19:00 -0700   author:   Hetal

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us