/*=================================================================== Microsoft Denali Microsoft Confidential. Copyright 1996 Microsoft Corporation. All Rights Reserved. Component: ODL File: DENA0000.ODL Neutral/English Denali Type Library "Neutral" language is considered to be English. We register this under LCID of 0 so the lcid before "library" has to match. ===================================================================*/ //LIBID_Denali [ uuid(D97A6DA0-A85C-11cf-83AE-00A0C90C2BD8) , helpstring("Microsoft Active Server Pages 1.0 Object Library") , lcid(0x0000) , version(1.0) ] library ASPTypeLibrary { #ifdef WIN32 importlib("STDOLE2.TLB"); #else importlib("STDOLE.TLB"); #endif /* * IID_IStringList * intermediate object returned by the Request object */ [ uuid(D97A6DA0-A85D-11cf-83AE-00A0C90C2BD8) , helpstring("A string containing comma separated values") , odl , oleautomation , dual , hidden ] interface IStringList : IDispatch { // Item (default property) (r/o) [propget, id(0)] HRESULT Item([optional, in] VARIANT i, [out, retval] VARIANT *pVariantReturn); // Count (r/o) [propget, helpstring("Number of items in the list of strings")] HRESULT Count([out, retval] int *cStrRet); // Enumerator (r/o) [propget, id(-4), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppEnumReturn); }; /* * IID_IRequestDictionary * * QueryString, ServerVariables, Form, and Request.Cookies are all of this type. * Request.Item is not because it does not support an optional key or enumeration. */ [ uuid(D97A6DA0-A85F-11df-83AE-00A0C90C2BD8) , helpstring("Dictionary for Request collections") , odl , oleautomation , dual , hidden ] interface IRequestDictionary : IDispatch { // Item (r/o) [propget, id(0)] HRESULT Item([optional, in] VARIANT Var, [out, retval] VARIANT *pVariantReturn); // Enumerator (r/o) [propget, id(-4), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppEnumReturn); }; /* * IID_IRequest * * The main (combined) collection */ [ uuid(D97A6DA0-A861-11cf-93AE-00A0C90C2BD8) , odl , oleautomation , dual , hidden ] interface IRequest : IDispatch { // Item (r/o) [propget, id(0)] HRESULT Item([in] BSTR bstrVar, [out, retval] IDispatch **ppObjReturn); // QueryString (r/o) [propget, helpstring("Collection of query string values")] HRESULT QueryString([out, retval] IRequestDictionary **ppDictReturn); // Form (r/o) [propget, helpstring("Collection of form elements")] HRESULT Form([out, retval] IRequestDictionary **ppDictReturn); // Body (compatibility hack for MSN) (r/o) [propget, hidden] HRESULT Body([out, retval] IRequestDictionary **ppDictReturn); // ServerVariables (r/o) [propget, helpstring("Collection of predetermined environment variables")] HRESULT ServerVariables([out, retval] IRequestDictionary **ppDictReturn); // ClientCertificate (r/o) [propget, helpstring("Collection of client certificate fields (specified in the X.509 standard)")] HRESULT ClientCertificate([out, retval] IRequestDictionary **ppDictReturn); // Cookies (r/o) [propget, helpstring("Collection of cookies sent as part of the Request (read only)")] HRESULT Cookies([out, retval] IRequestDictionary **ppDictReturn); // BytesTotal (r/o) [propget, helpstring("Total number of bytes the client will return in the request body")] HRESULT TotalBytes([out, retval] long *pcbTotal); // //Methods // // BinaryRead [helpstring("Reads data returned by the client in a POST request")] HRESULT BinaryRead([in, out] VARIANT *pvarCountToRead, [out, retval] VARIANT *pvarReturn); }; /* * CLSID_Request * * The Request class */ [ uuid(920c25d0-25d9-11d0-a55f-00a0c90c2091), , helpstring("Information from an HTTP client request") , noncreatable ] coclass Request { interface IRequest; } /* * IID_IReadCookie * * intermediate object returned by Request.Cookies */ [ uuid(71EAF260-0CE0-11D0-A53E-00A0C90C2091), , helpstring("Intermediate object for Request.Cookies") , odl , oleautomation , dual , hidden ] interface IReadCookie : IDispatch { // Item (r/o) [propget, id(0)] HRESULT Item([optional, in] VARIANT Var, [out, retval] VARIANT *pVariantReturn); // HasKeys (r/o) [propget, helpstring("Indicates whether the cookie has keys (is a cookie dictionary)")] HRESULT HasKeys([out, retval] boolean *pfHasKeys); // Enumerator (r/o) [propget, id(-4), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppEnumReturn); }; /* * IID_IWriteCookie * intermediate object returned by Response.Cookies */ [ uuid(D97A6DA0-A862-11cf-84AE-00A0C90C2BD8) , helpstring("Intermediate object for Response.Cookies") , odl , oleautomation , dual , hidden ] interface IWriteCookie : IDispatch { // Item (w/o) [propput, id(0)] HRESULT Item([optional, in] VARIANT key, [in] BSTR bstrValue); // Expires (w/o) [propput, helpstring("Expires the cookie at the specified date and time")] HRESULT Expires([in] DATE dtExpires); // Domain (w/o) [propput, helpstring("Limits the cookie to the specified Domain")] HRESULT Domain([in] BSTR bstrDomain); // Path (w/o) [propput, helpstring("Limits the cookie to the specified Path (defaults to Application path)")] HRESULT Path([in] BSTR bstrPath); // Secure (w/o) [propput, helpstring("Indicates whether the cookie is Secure")] HRESULT Secure([in] boolean fSecure); // HasKeys (r/o) [propget, helpstring("Indicates whether the cookie has keys (is a cookie dictionary)")] HRESULT HasKeys([out, retval] boolean *pfHasKeys); // Enumerator (r/o) [propget, id(-4), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppEnumReturn); } /* * IID_IResponse * 'interface' entries must have 'odl' attribute */ [ uuid(D97A6DA0-A864-11cf-83BE-00A0C90C2BD8) , odl , oleautomation , dual , hidden ] interface IResponse : IDispatch { // // //Properties // // // Buffer (r/w) [propget, helpstring("Indicates whether page output is buffered")] HRESULT Buffer([out, retval] boolean* fIsBuffering); [propput] HRESULT Buffer([in] boolean fIsBuffering); // ContentType (r/w) [propget, helpstring("The HTTP content type")] HRESULT ContentType([out, retval] BSTR *pbstrContentTypeRet); [propput] HRESULT ContentType([in] BSTR bstrContentType); // Expires (r/w) [propget, helpstring("The length of time in minutes until the Response expires")] HRESULT Expires([out, retval] VARIANT *pvarExpiresMinutesRet); [propput] HRESULT Expires([in] long lExpiresMinutes); // ExpiresAbsolute (r/w) [propget, helpstring("The absolute date and time that the Response expires")] HRESULT ExpiresAbsolute([out, retval] VARIANT *pvarExpiresRet); [propput] HRESULT ExpiresAbsolute([in] DATE dtExpires); [helpstring("Collection of cookies sent as part of the Response (write only)"), propget] HRESULT Cookies([out, retval] IRequestDictionary **ppCookies); // Status (r/w) [propget, helpstring("The HTTP server status line")] HRESULT Status([out, retval] BSTR *pbstrStatusRet); [propput] HRESULT Status([in] BSTR bstrStatus); // //Methods // // Add [hidden] HRESULT Add([in] BSTR bstrHeaderValue, [in] BSTR bstrHeaderName); // AddHeader [helpstring("Adds an HTTP header")] HRESULT AddHeader([in] BSTR bstrHeaderName, [in] BSTR bstrHeaderValue); // AppendToLog [helpstring("Adds a string to the end of the Web server log entry for this Request")] HRESULT AppendToLog([in] BSTR bstrLogEntry); // BinaryWrite [helpstring("Writes content without any character (Unicode to ANSI) conversion")] HRESULT BinaryWrite([in] VARIANT varInput); // Clear [helpstring("Erases any buffered content")] HRESULT Clear(void); // End [helpstring("Causes Active Server Pages to stop processing and return any buffered output")] HRESULT End(void); // Flush [helpstring("Sends buffered output immediately")] HRESULT Flush(void); // Redirect [helpstring("Sends a '302 Redirect' status line")] HRESULT Redirect([in] BSTR bstrURL); // Write [helpstring("Writes content with character (Unicode to ANSI) conversion")] HRESULT Write([in] VARIANT varText); // WriteBlock [hidden] HRESULT WriteBlock([in] short iBlockNumber); // IsClientConnected [helpstring("Is the client connection still valid")] HRESULT IsClientConnected([out, retval] boolean *pfIsClientConnected); // CharSet (r/w) [propget, helpstring("The HTTP Character set header")] HRESULT CharSet([out, retval] BSTR *pbstrCharSetRet); [propput] HRESULT CharSet([in] BSTR bstrCharSet); // Pics - Adds a pics Header [helpstring("Adds an HTTP pics header")] HRESULT Pics( [in] BSTR bstrHeaderValue ); // CacheControl (r/w) [propget, helpstring("The HTTP Cache-control header")] HRESULT CacheControl([out, retval] BSTR *pbstrCacheControl); [propput] HRESULT CacheControl([in] BSTR bstrCacheControl); } /* * CLSID_Response * * The Response class */ [ uuid(46E19BA0-25DD-11D0-A55F-00A0C90C2091), , helpstring("Manipulates information for the HTTP client response") , noncreatable ] coclass Response { interface IResponse; } /* * IID_IVariantDictionary */ [ uuid(4a7deb90-b069-11d0-b373-00a0c90c2bd8) , helpstring("Dictionary for Variant collections") , odl , oleautomation , dual , hidden ] interface IVariantDictionary : IDispatch { // Item (r/o) [propget, id(0)] HRESULT Item([in] VARIANT Var, [out, retval] VARIANT *pvar); // Name (r/o) [propget] HRESULT Name([in] VARIANT Var, [out, retval] BSTR *pbstrRet); // Count (r/o) [propget, helpstring("Number of items in the list of strings")] HRESULT Count([out, retval] int *cStrRet); // Enumerator (r/o) [propget, id(-4), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppEnumReturn); }; // -------------------------------------------------------------------------- // // IID_ISessionObject // 'interface' entries must have 'odl' attribute // // -------------------------------------------------------------------------- [ uuid(D97A6DA0-A865-11cf-83AF-00A0C90C2BD8) , odl , dual , oleautomation , hidden ] interface ISessionObject : IDispatch { // //Properties // // SessionID (r/o) [propget, helpstring("Returns a Session ID for this user")] HRESULT SessionID([out,retval] BSTR *pbstrRet); // Value (r/w) [id(0), propget] HRESULT Value([in] BSTR bstrValue, [out, retval] VARIANT *pvar); [id(0), propput] HRESULT Value([in] BSTR bstrValue, [in] VARIANT var); [id(0), propputref] HRESULT Value([in] BSTR bstrValue, [in] VARIANT var); // Timeout (r/w) [propget, helpstring("The length of time in minutes before session state is destroyed after non-use by an individual user")] HRESULT Timeout([out, retval] long *plvar ); [propput] HRESULT Timeout( [in] long lvar ); // //Methods // [helpstring("Destroys a Session object and releases its resources")] HRESULT Abandon(); // Code page (r/w) [propget, helpstring("The code page used when writing text to, or reading text from, the browser.")] HRESULT CodePage([out, retval] long *plvar ); [propput] HRESULT CodePage( [in] long lvar ); // LCID (r/w) [propget, helpstring("The LCID used when writing text to, or reading text from, the browser.")] HRESULT LCID([out, retval] long *plvar ); [propput] HRESULT LCID( [in] long lvar ); // Tagged Objects (r/o) [propget, helpstring("Collection of tagged objects associated with session")] HRESULT Objects([out, retval] IVariantDictionary **ppTaggedObjects); // Properties (r/o) [propget, helpstring("Collection of variants associated with Session")] HRESULT Properties([out, retval] IVariantDictionary **ppProperties); } /* * CLSID_Session * * The Session class */ [ uuid(509F8F20-25DE-11D0-A55F-00A0C90C2091) , helpstring("Persistent collection for one user of an application") , noncreatable ] coclass Session { interface ISessionObject; } // -------------------------------------------------------------------------- // // IID_IApplicationObject // 'interface' entries must have 'odl' attribute // // -------------------------------------------------------------------------- [ uuid(D97A6DA0-A866-11cf-83AE-10A0C90C2BD8) , odl , oleautomation , dual , hidden ] interface IApplicationObject : IDispatch { // //Properties // // Value (r/w) [id(0), propget] HRESULT Value([in] BSTR bstrValue, [out, retval] VARIANT *pvar); [id(0), propput] HRESULT Value([in] BSTR bstrValue, [in] VARIANT var); [id(0), propputref] HRESULT Value([in] BSTR bstrValue, [in] VARIANT var); // //Methods // // Lock [helpstring("Prevents other Active Server Pages from modifying the Application object")] HRESULT Lock(); // Unlock [helpstring("Enables other Active Server Pages to modify the Application object")] HRESULT UnLock(); // Properties (r/o) [propget, helpstring("Collection of variants associated with application")] HRESULT Properties([out, retval] IVariantDictionary **ppProperties); // Properties (r/o) [propget, helpstring("Collection of tagged objects associated with application")] HRESULT Objects([out, retval] IVariantDictionary **ppProperties); } /* * CLSID_Application * * The Application class */ [ uuid(7C3BAF00-25DE-11D0-A55F-00A0C90C2091) , helpstring("Persistent collection for all users of an application") , noncreatable ] coclass Application { interface IApplicationObject; } /* * IID_IServer * 'interface' entries must have 'odl' attribute */ [ uuid(D97A6DA0-A867-11cf-83AE-01A0C90C2BD8) , odl , oleautomation , dual , hidden ] interface IServer : IDispatch { // // //Properties // // // ScriptTimeout (r/w) [propget, helpstring("The maximum length of time in seconds before a script is terminated")] HRESULT ScriptTimeout([out, retval] long *plTimeoutSeconds ); [propput] HRESULT ScriptTimeout([in] long lTimeoutSeconds ); // //Methods // // CreateObject [helpstring("Creates an instance of a server component")] HRESULT CreateObject([in] BSTR bstrProgID, [out, retval] IDispatch **ppDispObject); // HTMLEncode [helpstring("Applies HTML encoding to a specified string")] HRESULT HTMLEncode([in] BSTR bstrIn, [out, retval] BSTR *pbstrEncoded); // MapPath [helpstring("Maps the specified relative or virtual path to the corresponding physical directory on the server")] HRESULT MapPath([in] BSTR bstrLogicalPath, [out,retval] BSTR *pbstrPhysicalPath); // URLEncode [helpstring("Applies URL encoding rules, including escape characters, to a specified string")] HRESULT URLEncode([in] BSTR bstrIn, [out, retval] BSTR *pbstrEncoded); } /* * CLSID_Server * * The Server class */ [ uuid(A506D160-25E0-11D0-A55F-00A0C90C2091) , helpstring("Server-side processing functions") , noncreatable ] coclass Server { interface IServer; } // // IID_IScriptingContext // 'interface' entries must have 'odl' attribute // [ uuid(D97A6DA0-A868-11cf-83AE-00B0C90C2BD8) , helpstring("Active Server Page Scripting Context") , odl , oleautomation , dual , hidden ] interface IScriptingContext : IDispatch { // //Properties // // Request [propget, helpstring("Returns the Request object")] HRESULT Request([out, retval] IRequest **ppRequest); // Response [propget, helpstring("Returns the Response object")] HRESULT Response([out, retval] IResponse **ppResponse); // Server [propget, helpstring("Returns the Server object")] HRESULT Server([out, retval] IServer **ppServer); // Session [propget, helpstring("Returns the Session object")] HRESULT Session([out, retval] ISessionObject **ppSession); // Application [propget, helpstring("Returns the Application object")] HRESULT Application([out, retval] IApplicationObject **ppApplication); } // // CLSID_ScriptingContext // [ uuid(D97A6DA0-A868-11cf-83AE-11B0C90C2BD8) , helpstring("Active Server Page Scripting Context") , noncreatable ] coclass ScriptingContext { interface IScriptingContext; } }