dxfile9.pas.svn-base

来自「这是一段游戏修改工具的源代码.ring3功能由dephi开发,驱动是C开发.希望」· SVN-BASE 代码 · 共 486 行 · 第 1/3 页

SVN-BASE
486
字号
(*) [------------------------------------------------------------------------------ [  DXFile Delphi Adaptation (c) by Tim Baumgarten [------------------------------------------------------------------------------ [  Files    : dxfile.h [  Modified : 09-Jan-2003 [  E-Mail   : Ampaze at gmx dot net [  Download : http://www.crazyentertainment.net [------------------------------------------------------------------------------(*)(*) [------------------------------------------------------------------------------ [ History : [---------- [ 09-Jan-2003 (Tim Baumgarten) : Redone. [ 05-Nov-2001 (Tim Baumgarten) : Added DirectX File Template GUIDs [                                (TID_DXFILEXXX) and Descriptions [                                (DXFILE_XTEMPLATES). [ 05-Nov-2001 (Tim Baumgarten) : Added DXFileErrorString. [------------------------------------------------------------------------------(*){$MINENUMSIZE 4}{$ALIGN ON}unit DXFile9;{$IFDEF VER150}  {$WARN UNSAFE_CODE OFF}  {$WARN UNSAFE_TYPE OFF}  {$WARN UNSAFE_CAST OFF}{$ENDIF}interfaceuses Windows;(*) ******************************************************************************* * *  Copyright (C) 1998-1999 Microsoft Corporation.  All Rights Reserved. * *  File:       dxfile.h * *  Content:    DirectX File public header file * *******************************************************************************(*)const  DXFileDLL = 'D3DXOF.DLL';function DXFileErrorString(DXErrorCode : HResult) : String;type  TDXFileFormat = LongWord;const  DXFILEFORMAT_BINARY     = 0;  DXFILEFORMAT_TEXT       = 1;  DXFILEFORMAT_COMPRESSED = 2;type  TDXFileLoadOptions = LongWord;const  DXFILELOAD_FROMFILE           = $00;  DXFILELOAD_FROMRESOURCE       = $01;  DXFILELOAD_FROMMEMORY         = $02;  DXFILELOAD_FROMSTREAM         = $04;  DXFILELOAD_FROMURL            = $08;type  PDXFileLoadResource = ^TDXFileLoadResource;  TDXFileLoadResource = packed record    Module : HModule;    Name   : PChar;    _Type  : PChar;  end;  PDXFileLoadMemory = ^TDXFileLoadMemory;  TDXFileLoadMemory = packed record    Memory : Pointer;    Size   : LongWord;  end;(*) ******************************************************************************* * DirectX File object types. ******************************************************************************* (*)type  IDirectXFile = interface;  IDirectXFileEnumObject = interface;  IDirectXFileSaveObject = interface;  IDirectXFileObject = interface;  IDirectXFileData = interface;  IDirectXFileDataReference = interface;  IDirectXFileBinary = interface;(*) ******************************************************************************* * DirectX File interfaces. *******************************************************************************(*)  IDirectXFile = interface(IUnknown)    ['{3D82AB40-62DA-11CF-AB39-0020AF71E433}']    function CreateEnumObject(const Source : Pointer; const LoadOptions : TDXFileLoadOptions; out EnumObj : IDirectXFileEnumObject) : HResult; stdcall;    function CreateSaveObject(const FileName : PChar; const FileFormat : TDXFileFormat; out SaveObj : IDirectXFileSaveObject) : HResult; stdcall;    function RegisterTemplates(const Data : Pointer; const Size : LongWord) : HResult; stdcall;  end;  IDirectXFileEnumObject = interface (IUnknown)    ['{3D82AB41-62DA-11CF-AB39-0020AF71E433}']    function GetNextDataObject(out DataObj : IDirectXFileData) : HResult; stdcall;    function GetDataObjectById(const RGUID : TGUID; out DataObj : IDirectXFileData) : HResult; stdcall;    function GetDataObjectByName(const Name : PChar; out DataObj : IDirectXFileData) : HResult; stdcall;  end;  IDirectXFileSaveObject = interface (IUnknown)    ['{3D82AB42-62DA-11CF-AB39-0020AF71E433}']    function SaveTemplates(const Templates : LongWord; var GUIDTemplates : PGUID) : HResult; stdcall;    function CreateDataObject(const RGUIDTemplate : TGUID; const szName : PChar; const GUID : PGUID; const Size : Cardinal; Data: Pointer; out DataObj : IDirectXFileData) : HResult; stdcall;    function SaveData(DataObj : IDirectXFileData) : HResult; stdcall;  end;  IDirectXFileObject = interface (IUnknown)    ['{3D82AB43-62DA-11CF-AB39-0020AF71E433}']    function GetName(const NameBuf : PChar; BufLen : PLongWord) : HResult; stdcall;    function GetId (out GUID : TGUID) : HResult; stdcall;  end;  IDirectXFileData = interface (IDirectXFileObject)    ['{3D82AB44-62DA-11CF-AB39-0020AF71E433}']    function GetData(const Member : PChar; out Size : LongWord; out Data : Pointer) : HResult; stdcall;    function GetType(out GUID : PGUID) : HResult; stdcall;    function GetNextObject(out ChildObj : IDirectXFileObject) : HResult; stdcall;    function AddDataObject(DataObj : IDirectXFileData) : HResult; stdcall;    function AddDataReference(Ref : PChar; GUIDRef : PGUID) : HResult; stdcall;    function AddBinaryObject(Name : PChar; GUID : PGUID; MimeType : PChar; Data : Pointer; const Size : LongWord) : HResult; stdcall;  end;  IDirectXFileDataReference = interface (IDirectXFileObject)    ['{3D82AB45-62DA-11CF-AB39-0020AF71E433}']    function Resolve(out DataObj : IDirectXFileData) : HResult; stdcall;  end;  IDirectXFileBinary = interface (IDirectXFileObject)    ['{3D82AB46-62DA-11CF-AB39-0020AF71E433}']    function GetSize(out Size : LongWord) : HResult; stdcall;    function GetMimeType(out MimeType : PChar) : HResult; stdcall;    function Read(Data : Pointer; const Size : LongWord; out Read : LongWord) : HResult; stdcall;  end;(*) ******************************************************************************* * API for creating IDirectXFile interface. *******************************************************************************(*)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?