Unit stdole2; // Imported on 24/12/2011 13:43:11 from C:\WINDOWS\system32\stdole2.tlb // Modified by Ludo Brands to remove redeclarations // Warning: renamed method 'Reset' in IEnumVARIANT to 'Reset_' // Warning: renamed property 'Type' in IPicture to 'Type_' // Warning: 'pointer' not automatable in Picturedisp.Render // Warning: renamed property 'Type' in Picture to 'Type_' {$mode delphi}{$H+} interface uses Windows, ActiveX, Classes, OleServer, Variants; Const stdoleMajorVersion = 2; stdoleMinorVersion = 0; LIBID_stdole : TGUID = '{00020430-0000-0000-C000-000000000046}'; IID_IUnknown : TGUID = '{00000000-0000-0000-C000-000000000046}'; IID_IDispatch : TGUID = '{00020400-0000-0000-C000-000000000046}'; IID_IEnumVARIANT : TGUID = '{00020404-0000-0000-C000-000000000046}'; IID_IFont : TGUID = '{BEF6E002-A874-101A-8BBA-00AA00300CAB}'; IID_Font : TGUID = '{BEF6E003-A874-101A-8BBA-00AA00300CAB}'; CLASS_StdFont : TGUID = '{0BE35203-8F91-11CE-9DE3-00AA004BB851}'; IID_IPicture : TGUID = '{7BF80980-BF32-101A-8BBB-00AA00300CAB}'; IID_Picture : TGUID = '{7BF80981-BF32-101A-8BBB-00AA00300CAB}'; CLASS_StdPicture : TGUID = '{0BE35204-8F91-11CE-9DE3-00AA004BB851}'; IID_FontEvents : TGUID = '{4EF6100A-AF88-11D0-9846-00C04FC29993}'; //Enums Type OLE_TRISTATE =TOleEnum; Const Unchecked = $0000000000000000; Checked = $0000000000000001; Gray = $0000000000000002; Type LoadPictureConstants =TOleEnum; Const Default = $0000000000000000; Monochrome = $0000000000000001; VgaColor = $0000000000000002; Color = $0000000000000004; //Forward declarations Type // for activex aliases see mantis 25907 IEnumVARIANT = ActiveX.IEnumVariant; IFont = ActiveX.IFont; Font = dispinterface; IPicture = ActiveX.IPicture; Picture = dispinterface; FontEvents = dispinterface; //records, unions, aliases EXCEPINFO = packed record wCode : Word; wReserved : Word; bstrSource : WideString; bstrDescription : WideString; bstrHelpFile : WideString; dwHelpContext : LongWord; pvReserved : Ppointer; pfnDeferredFillIn : Ppointer; scode : SCODE; end; OLE_COLOR = LongWord; OLE_XPOS_PIXELS = Integer; OLE_YPOS_PIXELS = Integer; OLE_XSIZE_PIXELS = Integer; OLE_YSIZE_PIXELS = Integer; OLE_XPOS_HIMETRIC = Integer; OLE_YPOS_HIMETRIC = Integer; OLE_XSIZE_HIMETRIC = Integer; OLE_YSIZE_HIMETRIC = Integer; OLE_XPOS_CONTAINER = Single; OLE_YPOS_CONTAINER = Single; OLE_XSIZE_CONTAINER = Single; OLE_YSIZE_CONTAINER = Single; OLE_HANDLE = SYSINT; OLE_OPTEXCLUSIVE = WordBool; OLE_CANCELBOOL = WordBool; OLE_ENABLEDEFAULTBOOL = WordBool; FONTNAME = WideString; FONTSIZE = Currency; FONTBOLD = WordBool; FONTITALIC = WordBool; FONTUNDERSCORE = WordBool; FONTSTRIKETHROUGH = WordBool; IFontDisp = Font; IPictureDisp = Picture; IFontEventsDisp = FontEvents; //interface declarations // Font : Font = dispinterface ['{BEF6E003-A874-101A-8BBA-00AA00300CAB}'] // Name : property Name:WideString dispid 0; // Size : property Size:Currency dispid 2; // Bold : property Bold:WordBool dispid 3; // Italic : property Italic:WordBool dispid 4; // Underline : property Underline:WordBool dispid 5; // Strikethrough : property Strikethrough:WordBool dispid 6; // Weight : property Weight:Smallint dispid 7; // Charset : property Charset:Smallint dispid 8; end; // Picture : Picture = dispinterface ['{7BF80981-BF32-101A-8BBB-00AA00300CAB}'] // Render : procedure Render(hdc:SYSINT;x:Integer;y:Integer;cx:Integer;cy:Integer;xSrc:OLE_XPOS_HIMETRIC;ySrc:OLE_YPOS_HIMETRIC;cxSrc:OLE_XSIZE_HIMETRIC;cySrc:OLE_YSIZE_HIMETRIC;prcWBounds:{!! pointer !!} OleVariant);dispid 6; // Handle : property Handle:OLE_HANDLE dispid 0; // hPal : property hPal:OLE_HANDLE dispid 2; // Type : property Type_:Smallint dispid 3; // Width : property Width:OLE_XSIZE_HIMETRIC dispid 4; // Height : property Height:OLE_YSIZE_HIMETRIC dispid 5; end; // FontEvents : Event interface for the Font object FontEvents = dispinterface ['{4EF6100A-AF88-11D0-9846-00C04FC29993}'] // FontChanged : procedure FontChanged(PropertyName:WideString);dispid 9; end; //CoClasses CoStdFont =class class function Create: Font; class function CreateRemote(const MachineName: string): Font; end; CoStdPicture =class class function Create: Picture; class function CreateRemote(const MachineName: string): Picture; end; implementation uses comobj; class function CoStdFont.Create: Font; begin Result := CreateComObject(CLASS_StdFont) as Font; end; class function CoStdFont.CreateRemote(const MachineName: string): Font; begin Result := CreateRemoteComObject(MachineName,CLASS_StdFont) as Font; end; class function CoStdPicture.Create: Picture; begin Result := CreateComObject(CLASS_StdPicture) as Picture; end; class function CoStdPicture.CreateRemote(const MachineName: string): Picture; begin Result := CreateRemoteComObject(MachineName,CLASS_StdPicture) as Picture; end; end.