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.
 
 
 
 
 
 

65 lines
2.4 KiB

#ifndef SCRPTLET_H
#define SCRPTLET_H
// If an error is reported successfully using IScriptletSite, then this
// error code is propagated up the call stack.
#define E_REPORTED 0x80004100L
DEFINE_GUID(CLSID_ScriptletConstructor, 0x21617250, 0xa071, 0x11d1, 0x89, 0xb6, 0x0, 0x60, 0x8, 0xc3, 0xfb, 0xfc);
DEFINE_GUID(SID_ScriptletSite, 0x22a98050, 0xa65d, 0x11d1, 0x89, 0xbe, 0x0, 0x60, 0x8, 0xc3, 0xfb, 0xfc);
/***************************************************************************
IScriptletConstructor
We need to move these definitions into an idl so we can generate the
appropriate proxy/stub code.
***************************************************************************/
DEFINE_GUID(IID_IScriptletConstructor, 0xc265fb00, 0x9fa4, 0x11d1, 0x89, 0xb6, 0x0, 0x60, 0x8, 0xc3, 0xfb, 0xfc);
interface IScriptletConstructor : public IUnknown
{
STDMETHOD(Load)(LPCOLESTR pstrSource) PURE;
STDMETHOD(Create)(LPCOLESTR pstrId, IUnknown *punkContext,
IUnknown *punkOuter, REFIID riid, void **ppv) PURE;
STDMETHOD(Register)(LPCOLESTR pstrSourceFileName) PURE;
STDMETHOD(Unregister)(void) PURE;
STDMETHOD(AddCoclassTypeInfo)(ICreateTypeLib *ptclib) PURE;
STDMETHOD(IsDefined)(LPCOLESTR pstrId) PURE;
};
/***************************************************************************
IScriptletError
***************************************************************************/
DEFINE_GUID(IID_IScriptletError, 0xdf9f3d20, 0xa670, 0x11d1, 0x89, 0xbe, 0x0, 0x60, 0x8, 0xc3, 0xfb, 0xfc);
interface IScriptletError : public IUnknown
{
STDMETHOD(GetExceptionInfo)(EXCEPINFO *pexcepinfo) PURE;
STDMETHOD(GetSourcePosition)(ULONG *pline, ULONG *pcolumn) PURE;
STDMETHOD(GetSourceLineText)(BSTR *pbstrSourceLine) PURE;
};
/***************************************************************************
IScriptletSite
In addition to the dispids defined below, the site may also choose to
handle the follwing dispids.
DISPID_ERROREVENT
DISPID_AMBIENT_LOCALEID
***************************************************************************/
#define DISPID_SCRIPTLET_ALLOWDEBUG 1
DEFINE_GUID(IID_IScriptletSite, 0xc5f21c30, 0xa7df, 0x11d1, 0x89, 0xbe, 0x0, 0x60, 0x8, 0xc3, 0xfb, 0xfc);
interface IScriptletSite : public IUnknown
{
STDMETHOD(OnEvent)(DISPID dispid, int cArg, VARIANT *prgvarArg,
VARIANT *pvarRes) PURE;
STDMETHOD(GetProperty)(DISPID dispid, VARIANT *pvarRes) PURE;
};
#endif // SCRPTLET_H