// NightSec Worker.idl : IDL source for NightSec Worker.dll // // This file will be processed by the MIDL tool to // produce the type library (NightSec Worker.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; [ uuid(34F11690-F275-11d2-A589-0020182B97FC), helpstring("Info Types"), ] typedef [v1_enum] enum NightSecInfo { [ helpstring("Component Name (String)") ] nsName, [ helpstring("Command Line Parameter (String)") ] nsCmdLine, [ helpstring("Help Text (String)") ] nsHelpText, [ helpstring("Component Needs to be Setup ie: Defaults not enough (Bool)") ] nsForceShow, [ helpstring("If Disabled Only show in advanced setup (Bool)") ] nsHideNormal, [ helpstring("Can make a second copy of component (Bool)") ] nsCopyAble, [ helpstring("Component HelpFile (String)") ] nsHelpFile, [ helpstring("Component Help Topic Number (Int)") ] nsHelpTopic } NightSecInfo; /*[ uuid(34F11689-F275-11d2-A589-0020182B97FC), helpstring("Options for Shutdown"), ] typedef [v1_enum] enum NightSecOptions { [ helpstring("Don't display Prompts") ] nsNoPrompt = 0x00000002, [ helpstring("Don't display any UI") ] nsQuiet = 0x00000004 } NightSecOptions; */ [ helpstring("Don't display Prompts") ] const long nsNoPrompt = 0x00000002; [ helpstring("Don't display any UI") ] const long nsQuiet = 0x00000004; [ object, uuid(34F11691-F275-11d2-A589-0020182B97FC), dual, helpstring("Interface for performing Secure Shutdown Functions Before Exiting to DOS"), pointer_default(unique) ] interface ISecureShutdownWin : IDispatch { [id(1), helpstring("Runs this component's shutdown")] HRESULT DoShutdown([in] long hParent, [in] long Mode); [id(2), helpstring("Gives the component an IPropertyBag to store it's properties in")] HRESULT SetData([in] IUnknown* pUnk); [propget, id(3), helpstring("Get's a comonents properties and options")] HRESULT Info([in] NightSecInfo nsItem, [out, retval] VARIANT* pvVal); }; [ object, uuid(34F11692-F275-11d2-A589-0020182B97FC), dual, helpstring("Interface for retrieving Batch File Text to be run in a Secure Shutdown going into MS-DOS Mode"), pointer_default(unique) ] interface ISecureShutdownDOS : IDispatch { [id(1), helpstring("Gets the components batch file text")] HRESULT GetBatchText([out, retval] BSTR* psText); [id(2), helpstring("Gives the component an IPropertyBag to store it's properties in")] HRESULT SetData([in] IUnknown* pUnk); [propget, id(3), helpstring("Get's a comonents properties and options")] HRESULT Info([in] NightSecInfo nsItem, [out, retval] VARIANT* pvVal); }; [ object, uuid(409C4B09-9310-11d3-BFC1-0020182B97FC), dual, helpstring("Interface for retrieving misc information from a Night Security Container"), pointer_default(unique) ] interface INightSecError : IUnknown { [propget, id(1)] HRESULT Err([out, retval] HRESULT* pbsRet); [propget, id(2)] HRESULT Description([out, retval] BSTR* pbsRet); [propget, id(3)] HRESULT HelpFile([out, retval] BSTR* pbsRet); [propget, id(4)] HRESULT HelpContext([out, retval] long* plRet); }; [ object, uuid(409C4B04-9310-11d3-BFC1-0020182B97FC), dual, helpstring("Interface for retrieving misc information from a Night Security Container"), pointer_default(unique) ] interface INightSecErrorFix : IUnknown { [propget, id(1)] HRESULT Fixable([out, retval] BOOL* pbRet); [id(2)] HRESULT Fix(); [propget, id(3)] HRESULT Retryable([out, retval] BOOL* pbRet); [id(4)] HRESULT Retry(); };