window.external progress?
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
#include "IEBrowser.h"
|
#include "IEBrowser.h"
|
||||||
#include "Globals.h"
|
#include "Globals.h"
|
||||||
#include "ax.h"
|
#include "ax.h"
|
||||||
|
|
||||||
//#include "IEDispatcher.h"
|
//#include "IEDispatcher.h"
|
||||||
|
|
||||||
void IEBrowser::Boop(char* test)
|
void IEBrowser::Boop(char* test)
|
||||||
@@ -41,6 +42,17 @@ IEBrowser::~IEBrowser(void) {
|
|||||||
// Something goes here
|
// Something goes here
|
||||||
int IEBrowser::setExternal(IDispatch** ext)
|
int IEBrowser::setExternal(IDispatch** ext)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
std::cout << &m_IEDispatcher;
|
||||||
|
IInternetHostSecurityManager* spSecMan;
|
||||||
|
spDocument2->QueryInterface(IID_IInternetHostSecurityManager,
|
||||||
|
(void **) &spSecMan);
|
||||||
|
|
||||||
|
// TODO: hr needs to say: 'S_OK'
|
||||||
|
HRESULT hr = spSecMan->ProcessUrlAction(URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY,
|
||||||
|
NULL, 0, NULL, 0, 0, PUAF_DEFAULT);
|
||||||
|
|
||||||
|
(*ext) = &m_IEDispatcher;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,9 +95,9 @@ bool IEBrowser::navigateSyncURL(wchar_t* url)
|
|||||||
if (SUCCEEDED(spDocument->QueryInterface(IID_ICustomDoc,(void**)&spCustomDoc)))
|
if (SUCCEEDED(spDocument->QueryInterface(IID_ICustomDoc,(void**)&spCustomDoc)))
|
||||||
{
|
{
|
||||||
spCustomDoc->SetUIHandler(m_spHandler);
|
spCustomDoc->SetUIHandler(m_spHandler);
|
||||||
|
|
||||||
m_spHandler->GetExternal(&m_spExternal);
|
m_spHandler->GetExternal(&m_spExternal);
|
||||||
|
spDocument->QueryInterface(IID_IHTMLDocument2, (void **) &spDocument2);
|
||||||
|
setExternal(&m_spExternal);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
#include <mshtml.h>
|
#include <mshtml.h>
|
||||||
#include <exdisp.h>
|
#include <exdisp.h>
|
||||||
#include <Mshtmhst.h>
|
#include <Mshtmhst.h>
|
||||||
|
#include "IEDispatcher.h"
|
||||||
|
|
||||||
class IEBrowser {
|
class IEBrowser {
|
||||||
public:
|
public:
|
||||||
@@ -18,6 +19,7 @@ class IEBrowser {
|
|||||||
IDocHostUIHandler* m_spHandler;
|
IDocHostUIHandler* m_spHandler;
|
||||||
IDispatch* m_spExternal;
|
IDispatch* m_spExternal;
|
||||||
IDispatch* m_newExternal;
|
IDispatch* m_newExternal;
|
||||||
|
IEDispatcher m_IEDispatcher;
|
||||||
IOleClientSite* m_spDefaultDocHostUIHandler;
|
IOleClientSite* m_spDefaultDocHostUIHandler;
|
||||||
int setExternal(IDispatch** ext);
|
int setExternal(IDispatch** ext);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,11 +2,9 @@
|
|||||||
#include "oaidl.h"
|
#include "oaidl.h"
|
||||||
//DEFINE_GUID(CLSID_G3d, 0xB323F8E0L, 0x2E68, 0x11D0, 0x90, 0xEA, 0x00, 0xAA, 0x00, 0x60, 0xF8, 0x6F);
|
//DEFINE_GUID(CLSID_G3d, 0xB323F8E0L, 0x2E68, 0x11D0, 0x90, 0xEA, 0x00, 0xAA, 0x00, 0x60, 0xF8, 0x6F);
|
||||||
|
|
||||||
/*
|
|
||||||
class IEDispatcher : public IDispatch
|
class IEDispatcher : public IDispatch
|
||||||
{
|
{
|
||||||
*/
|
/*
|
||||||
|
|
||||||
EXTERN_C const IID IID_IDispatch;
|
EXTERN_C const IID IID_IDispatch;
|
||||||
|
|
||||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||||
@@ -14,6 +12,7 @@ EXTERN_C const IID IID_IDispatch;
|
|||||||
MIDL_INTERFACE("B323F8E0-2E68-11D0-90EA-00AA0060F86F")
|
MIDL_INTERFACE("B323F8E0-2E68-11D0-90EA-00AA0060F86F")
|
||||||
IEDispatcher : public IDispatch
|
IEDispatcher : public IDispatch
|
||||||
{
|
{
|
||||||
|
*/
|
||||||
public:
|
public:
|
||||||
IEDispatcher(void);
|
IEDispatcher(void);
|
||||||
~IEDispatcher(void);
|
~IEDispatcher(void);
|
||||||
@@ -27,4 +26,4 @@ public:
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
//#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user