/******************************************************************************* Copyright (c) 2003, Robert Cowham and Vaccaperna Systems Ltd. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL VACCAPERNA SYSTEMS LTD. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *******************************************************************************/ /******************************************************************************* * Name: p4com.idl * * Author: Robert Cowham * * Description: * IDL source for p4com.dll * ******************************************************************************/ // This file will be processed by the MIDL tool to // produce the type library (p4com.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; // Defines for SafeArray definitions #define IDLArrayByte SAFEARRAY(Byte) * #define IDLArrayInteger SAFEARRAY(short) * #define IDLArrayLong SAFEARRAY(long) * #define IDLArraySingle SAFEARRAY(float) * #define IDLArrayDouble SAFEARRAY(double) * #define IDLArrayCurrency SAFEARRAY(Currency) * #define IDLArrayDate SAFEARRAY(Date) * //@B IDLArrayString #define IDLArrayString SAFEARRAY(BSTR) * //@E IDLArrayString #define IDLArrayBoolean SAFEARRAY(Boolean) * #define IDLArrayObject SAFEARRAY(IDispatch*) * #define IDLArrayVariant SAFEARRAY(Variant) * [ object, uuid(E7D963D4-7AC8-4B89-B768-16F900DB2A93), dual, helpstring("Ip4 Interface"), pointer_default(unique) ] interface Ip4 : IDispatch { [propget, id(1), helpstring("property Charset")] HRESULT Charset([out, retval] BSTR *pVal); [propput, id(1), helpstring("property Charset")] HRESULT Charset([in] BSTR newVal); [propget, id(2), helpstring("property Client")] HRESULT Client([out, retval] BSTR *pVal); [propput, id(2), helpstring("property Client")] HRESULT Client([in] BSTR newVal); [propget, id(3), helpstring("property Cwd")] HRESULT Cwd([out, retval] BSTR *pVal); [propput, id(3), helpstring("property Cwd")] HRESULT Cwd([in] BSTR newVal); [propget, id(4), helpstring("property Host")] HRESULT Host([out, retval] BSTR *pVal); [propput, id(4), helpstring("property Host")] HRESULT Host([in] BSTR newVal); [propget, id(5), helpstring("property Language")] HRESULT Language([out, retval] BSTR *pVal); [propput, id(5), helpstring("property Language")] HRESULT Language([in] BSTR newVal); [propget, id(6), helpstring("property Password")] HRESULT Password([out, retval] BSTR *pVal); [propput, id(6), helpstring("property Password")] HRESULT Password([in] BSTR newVal); [propget, id(7), helpstring("property Port")] HRESULT Port([out, retval] BSTR *pVal); [propput, id(7), helpstring("property Port")] HRESULT Port([in] BSTR newVal); [propget, id(8), helpstring("property User")] HRESULT User([out, retval] BSTR *pVal); [propput, id(8), helpstring("property User")] HRESULT User([in] BSTR newVal); [propget, id(10), helpstring("property Errors")] HRESULT Errors([out, retval] IDLArrayString valArray); [propget, id(11), helpstring("property Warnings")] HRESULT Warnings([out, retval] IDLArrayString valArray); [propget, id(12), helpstring("method run")] HRESULT run(BSTR cmd, [out, retval] IDLArrayString valArray); [id(13), helpstring("method Connect")] HRESULT Connect(); [id(14), helpstring("method Disconnect")] HRESULT Disconnect(); [propget, id(15), helpstring("property ExceptionLevel")] HRESULT ExceptionLevel([out, retval] long *pVal); [propput, id(15), helpstring("property ExceptionLevel")] HRESULT ExceptionLevel([in] long newVal); [id(16), helpstring("method Tagged")] HRESULT Tagged(); [id(17), helpstring("method ParseForms")] HRESULT ParseForms(); [propget, id(18), helpstring("property TempFilename")] HRESULT TempFilename([out, retval] BSTR *pVal); [propget, id(19), helpstring("property Var")] HRESULT Var(BSTR varName, [out, retval] BSTR *pVal); [propput, id(19), helpstring("property Var")] HRESULT Var(BSTR varName, [in] BSTR newVal); [propget, id(20), helpstring("property VarExists")] HRESULT VarExists(BSTR varName, [out, retval] BOOL *pVal); [propget, id(21), helpstring("property VarArray")] HRESULT ArrayVar(BSTR varName, [out, retval] IDLArrayString pVal); [propput, id(21), helpstring("property VarArray")] HRESULT ArrayVar(BSTR varName, [in] IDLArrayString newVal); }; [ uuid(BC5DA98A-3A2F-4458-8666-22EDB27C6258), version(1.0), helpstring("p4com 1.0 Type Library") ] library P4COMLib { importlib("stdole32.tlb"); importlib("stdole2.tlb"); [ uuid(0709D2DF-09E0-4DBF-AECB-9B997006C0B4), helpstring("p4 Class") ] coclass p4 { [default] interface Ip4; }; };