Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

106 lines
3.5 KiB

//+---------------------------------------------------------------------------
//
// 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
);
}