107 lines
3.4 KiB
Plaintext
107 lines
3.4 KiB
Plaintext
//+---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1997-1998.
|
|
//
|
|
// File: safeocx.idl
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
cpp_quote("//+-------------------------------------------------------------------------")
|
|
cpp_quote("//")
|
|
cpp_quote("// Microsoft Windows")
|
|
cpp_quote("// Copyright (C) Microsoft Corporation, 1997-1998.")
|
|
cpp_quote("//")
|
|
cpp_quote("//--------------------------------------------------------------------------")
|
|
|
|
#ifndef DO_NO_IMPORTS
|
|
import "unknwn.idl";
|
|
import "wtypes.idl";
|
|
import "urlmon.idl";
|
|
#endif
|
|
|
|
cpp_quote("")
|
|
cpp_quote("#pragma comment(lib,\"uuid.lib\")")
|
|
cpp_quote("")
|
|
cpp_quote("DEFINE_GUID(CLSID_IActiveXSafetyProvider, 0xaaf8c6ce, 0xf972, 0x11d0, 0x97, 0xeb, 0x00, 0xaa, 0x00, 0x61, 0x53, 0x33);")
|
|
cpp_quote("DEFINE_GUID(IID_IActiveXSafetyProvider, 0x69ff5101, 0xfc63, 0x11d0, 0x97, 0xeb, 0x00, 0xaa, 0x00, 0x61, 0x53, 0x33);")
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(69ff5101-fc63-11d0-97eb-00aa00615333),
|
|
pointer_default(unique),
|
|
local
|
|
]
|
|
interface IActiveXSafetyProvider : IUnknown
|
|
{
|
|
typedef [unique] IActiveXSafetyProvider *LPACTIVEXSAFETYPROVIDER;
|
|
|
|
// Controls whether the call to SafeGetClassObject/SafeCreateInstance will
|
|
// just call OLE32.DLL or whether the control will be loaded into a VM
|
|
HRESULT TreatControlAsUntrusted(
|
|
[in] BOOL fTreatAsTUntrusted
|
|
);
|
|
|
|
// Gets the current setting of TreatControlAsUntrusted
|
|
HRESULT IsControlUntrusted(
|
|
[out] BOOL *pfIsUntrusted
|
|
);
|
|
|
|
// Informs the ActiveX safety provider talk to zones
|
|
HRESULT SetSecurityManager(
|
|
[in] IInternetSecurityManager *pSecurityManager
|
|
);
|
|
|
|
// Informs the ActiveX safety provider where the document was loaded from
|
|
HRESULT SetDocumentURLA(
|
|
[in] LPCSTR szDocumentURL
|
|
);
|
|
HRESULT SetDocumentURLW(
|
|
[in] LPCWSTR szDocumentURL
|
|
);
|
|
|
|
// Resets the all of the above settings to their defaults
|
|
HRESULT ResetToDefaults(
|
|
void
|
|
);
|
|
|
|
// Calls DllRegisterServer on the specified control, using the current
|
|
// safety settings.
|
|
HRESULT SafeDllRegisterServerA(
|
|
[in] LPCSTR szServerName
|
|
);
|
|
HRESULT SafeDllRegisterServerW(
|
|
[in] LPCWSTR szServerName
|
|
);
|
|
|
|
// Calls DllUnregisterServer on the specified control, using the current
|
|
// safety settings.
|
|
HRESULT SafeDllUnregisterServerA(
|
|
[in] LPCSTR szServerName
|
|
);
|
|
HRESULT SafeDllUnregisterServerW(
|
|
[in] LPCWSTR szServerName
|
|
);
|
|
|
|
// Calls CoGetClassObject for the specified control, using the current
|
|
// safety settings.
|
|
HRESULT SafeGetClassObject(
|
|
[in] REFCLSID rclsid,
|
|
[in] DWORD dwClsContext,
|
|
[in] LPVOID reserved,
|
|
[in] REFIID riid,
|
|
[out, iid_is(riid)] IUnknown **ppObj
|
|
);
|
|
|
|
// Calls CoCreateInstance for the specified control, using the current
|
|
// safety settings.
|
|
HRESULT SafeCreateInstance(
|
|
[in] REFCLSID rclsid,
|
|
[in] LPUNKNOWN pUnkOuter,
|
|
[in] DWORD dwClsContext,
|
|
[in] REFIID riid,
|
|
[out, iid_is(riid)] IUnknown **pObj
|
|
);
|
|
}
|