I am currently designing my own web browser based on Microsofts Web Browser control
I am using Visual Basic.net 2003 with the .Net Framework 1.1
My problem is i can't get it to work, and i am getting errors in code for reasons i just cna't figure out as my code seems logical, maybe i just need someone else to look at it, maybe someone else can see an error i can't see. Neways here is what my code for it looks like:
Public Class Form1
Inherits System.Windows.Forms.Form
Implements WebBrowserAPI.IServiceProvider
Implements WebBrowserAPI.IInternetSecurityManager
I also get errors trying to implement these statements as well
Public Sub New()
MyBase.New()
'
InitializeComponent()
' InitializeComponent()
' Microsoft Web Browser
' ActiveX
Dim ocx As Object = Me.AxWebBrowser1.GetOcx()
' Microsoft Web Browser IServiceProvider
Dim ocxServiceProvider As WebBrowserAPI.IServiceProvider = _
DirectCast(ocx, WebBrowserAPI.IServiceProvider)
' IServiceProvider.QueryService() IProfferService
Dim profferServicePtr As IntPtr = New IntPtr
ocxServiceProvider.QueryService( _
WebBrowserAPI.SID_SProfferService, _
WebBrowserAPI.IID_IProfferService, profferServicePtr)
Dim profferService As WebBrowserAPI.IProfferService = _
DirectCast(Marshal.GetObjectForIUnknown(profferServicePtr), _
WebBrowserAPI.IProfferService)
' IProfferService.ProfferService()
' IInternetSecurityManager
Dim cookie As Integer = 0
profferService.ProfferService( _
WebBrowserAPI.IID_IInternetSecurityManager, Me, cookie)
End Sub
Public Function QueryService(ByRef guidService As System.Guid, _
ByRef riid As System.Guid, ByRef ppvObject As System.IntPtr) _
As Integer Implements WebBrowserAPI.IServiceProvider.QueryService
ppvObject = IntPtr.Zero
If guidService.CompareTo( _
WebBrowserAPI.IID_IInternetSecurityManager) = 0 Then
' IID_IInternetSecurityManager
' QueryInterface
Dim punk As IntPtr = Marshal.GetIUnknownForObject(Me)
Return Marshal.QueryInterface(punk, riid, ppvObject)
End If
Return HRESULT.E_NOINTERFACE
End Function
Public Function GetSecurityId(ByVal pwszUrl As String, _
ByVal pbSecurityId() As Byte, _
ByRef pcbSecurityId As System.UInt32, _
ByVal dwReserved As System.UInt32) As Integer Implements _
WebBrowserAPI.IInternetSecurityManager.GetSecurityId
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function GetSecuritySite(ByRef pSite As _
WebBrowserAPI.IInternetSecurityMgrSite) As Integer _
Implements WebBrowserAPI.IInternetSecurityManager.GetSecuritySite
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function GetZoneMappings(ByVal dwZone As Integer, _
ByRef ppenumString As _
System.Runtime.InteropServices.UCOMIEnumString, _
ByVal dwFlags As Integer) As Integer _
Implements WebBrowserAPI.IInternetSecurityManager.GetZoneMappings
ppenumString = Nothing
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function MapUrlToZone(ByVal pwszUrl As String, _
ByRef pdwZone As Integer, ByVal dwFlags As Integer) As Integer _
Implements WebBrowserAPI.IInternetSecurityManager.MapUrlToZone
pdwZone = 0
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function ProcessUrlAction(ByVal pwszUrl As String, _
ByVal dwAction As Integer, ByRef pPolicy As Byte, _
ByVal cbPolicy As Integer, ByVal pContext As Byte, _
ByVal cbContext As Integer, ByVal dwFlags As Integer, _
ByVal dwReserved As Integer) As Integer _
Implements WebBrowserAPI.IInternetSecurityManager.ProcessUrlAction
If WebBrowserAPI.URLACTION_SCRIPT_MIN <= dwAction And _
dwAction <= WebBrowserAPI.URLACTION_SCRIPT_MAX Then
If Me.CheckBox1.Checked Then
pPolicy = WebBrowserAPI.URLPOLICY_ALLOW
Else
pPolicy = WebBrowserAPI.URLPOLICY_DISALLOW
End If
Return HRESULT.S_OK
ElseIf WebBrowserAPI.URLACTION_ACTIVEX_MIN <= dwAction And _
dwAction <= WebBrowserAPI.URLACTION_ACTIVEX_MAX Then
If Me.CheckBox2.Checked Then
pPolicy = WebBrowserAPI.URLPOLICY_ALLOW
Else
pPolicy = WebBrowserAPI.URLPOLICY_DISALLOW
End If
Return HRESULT.S_OK
End If
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function QueryCustomPolicy(ByVal pwszUrl As String, _
ByRef guidKey As System.Guid, ByVal ppPolicy As Byte, _
ByVal pcbPolicy As Integer, ByVal pContext As Byte, _
ByVal cbContext As Integer, ByVal dwReserved As Integer) _
As Integer Implements _
WebBrowserAPI.IInternetSecurityManager.QueryCustomPolicy
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function SetSecuritySite(ByVal pSite As _
WebBrowserAPI.IInternetSecurityMgrSite) As Integer _
Implements WebBrowserAPI.IInternetSecurityManager.SetSecuritySite
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Public Function SetZoneMapping(ByVal dwZone As Integer, _
ByVal lpszPattern As String, ByVal dwFlags As Integer) As Integer _
Implements WebBrowserAPI.IInternetSecurityManager.SetZoneMapping
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
Private internetSecurityManagerHelper As InternetSecurityManagerHelper
Public Sub New()
MyBase.New()
InitializeComponent()
' InitializeComponent()
Me.internetSecurityManagerHelper = _
New InternetSecurityManagerHelper
Me.internetSecurityManagerHelper.Attach(Me.AxWebBrowser1)
Me.internetSecurityManagerHelper.ProcessUrlAction = _
New ProcessUrlActionEventHandler( _
AddressOf internetSecurityManagerHelper_ProcessUrlAction)
End Sub
Private Function internetSecurityManagerHelper_ProcessUrlAction( _
ByVal pwszUrl As String, ByVal dwAction As Integer, _
ByRef pPolicy As Byte, ByVal cbPolicy As Integer, _
ByVal pContext As Byte, ByVal cbContext As Integer, _
ByVal dwFlags As Integer, ByVal dwReserved As Integer) As Integer
If WebBrowserAPI.URLACTION_SCRIPT_MIN <= dwAction And _
dwAction <= WebBrowserAPI.URLACTION_SCRIPT_MAX Then
If Me.CheckBox1.Checked Then
pPolicy = WebBrowserAPI.URLPOLICY_ALLOW
Else
pPolicy = WebBrowserAPI.URLPOLICY_DISALLOW
End If
Return HRESULT.S_OK
ElseIf WebBrowserAPI.URLACTION_ACTIVEX_MIN <= dwAction And _
dwAction <= WebBrowserAPI.URLACTION_ACTIVEX_MAX Then
If Me.CheckBox2.Checked Then
pPolicy = WebBrowserAPI.URLPOLICY_ALLOW
Else
pPolicy = WebBrowserAPI.URLPOLICY_DISALLOW
End If
Return HRESULT.S_OK
End If
Return WebBrowserAPI.INET_E_DEFAULT_ACTION
End Function
I get errors saying WebBrowserapi.IServiceProvidor is not defined among other things. Is there something i need to reference in my project or a namespace i need to import
Any help on how to properly Implement this interface would be greatly appreciated thank you very much for any help you could possibly offer

Help with Implementing IInternetSecurityManager in Web Browser control
Orest Bolohan