📄 dxetable.pas
字号:
unit DXETable;
interface
{$INCLUDE DelphiXcfg.inc}
uses
Windows, SysUtils, DirectX;
function WindowsErrorMsg(ErrorCode: HRESULT): string;
function DDrawErrorMsg(ErrorCode: HRESULT): string;
function D3DErrorMsg(ErrorCode: HRESULT): string;
function D3DRMErrorMsg(ErrorCode: HRESULT): string;
function DSoundErrorMsg(ErrorCode: HRESULT): string;
function DInputErrorMsg(ErrorCode: HRESULT): string;
function DPlayErrorMsg(ErrorCode: HRESULT): string;
implementation
uses DXConsts;
function WindowsErrorMsg(ErrorCode: HRESULT): string;
var
Buf: array [Byte] of Char;
begin
Result := '';
if ErrorCode<>0 then
begin
if FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, nil,
ErrorCode, LOCALE_USER_DEFAULT, Buf, sizeof(Buf), nil)<>0 then
begin
Result := Buf;
{ Last #13#10 is deleted. }
while Copy(Result, Length(Result)-1, 2)=#13#10 do
Result := Copy(Result, 1, Length(Result)-2);
end else
Result := Format(SUnknownError, [ErrorCode]);
end;
end;
function DDrawErrorMsg(ErrorCode: HRESULT): string;
begin
case ErrorCode of
DD_OK : Result := 'DD_OK';
DDERR_ALREADYINITIALIZED : Result := 'DDERR_ALREADYINITIALIZED';
DDERR_BLTFASTCANTCLIP : Result := 'DDERR_BLTFASTCANTCLIP';
DDERR_CANNOTATTACHSURFACE : Result := 'DDERR_CANNOTATTACHSURFACE';
DDERR_CANTCREATEDC : Result := 'DDERR_CANTCREATEDC';
DDERR_CANTDUPLICATE : Result := 'DDERR_CANTDUPLICATE';
DDERR_CLIPPERISUSINGHWND : Result := 'DDERR_CLIPPERISUSINGHWND';
DDERR_COLORKEYNOTSET : Result := 'DDERR_COLORKEYNOTSET';
DDERR_CURRENTLYNOTAVAIL : Result := 'DDERR_CURRENTLYNOTAVAIL';
DDERR_DIRECTDRAWALREADYCREATED : Result := 'DDERR_DIRECTDRAWALREADYCREATED';
DDERR_EXCEPTION : Result := 'DDERR_EXCEPTION';
DDERR_EXCLUSIVEMODEALREADYSET : Result := 'DDERR_EXCLUSIVEMODEALREADYSET';
DDERR_GENERIC : Result := 'DDERR_GENERIC';
DDERR_HEIGHTALIGN : Result := 'DDERR_HEIGHTALIGN';
DDERR_HWNDALREADYSET : Result := 'DDERR_HWNDALREADYSET';
DDERR_HWNDSUBCLASSED : Result := 'DDERR_HWNDSUBCLASSED';
DDERR_IMPLICITLYCREATED : Result := 'DDERR_IMPLICITLYCREATED';
DDERR_INCOMPATIBLEPRIMARY : Result := 'DDERR_INCOMPATIBLEPRIMARY';
DDERR_INVALIDCAPS : Result := 'DDERR_INVALIDCAPS';
DDERR_INVALIDCLIPLIST : Result := 'DDERR_INVALIDCLIPLIST';
DDERR_INVALIDDIRECTDRAWGUID : Result := 'DDERR_INVALIDDIRECTDRAWGUID';
DDERR_INVALIDMODE : Result := 'DDERR_INVALIDMODE';
DDERR_INVALIDOBJECT : Result := 'DDERR_INVALIDOBJECT';
DDERR_INVALIDPARAMS : Result := 'DDERR_INVALIDPARAMS';
DDERR_INVALIDPIXELFORMAT : Result := 'DDERR_INVALIDPIXELFORMAT';
DDERR_INVALIDPOSITION : Result := 'DDERR_INVALIDPOSITION';
DDERR_INVALIDRECT : Result := 'DDERR_INVALIDRECT';
DDERR_LOCKEDSURFACES : Result := 'DDERR_LOCKEDSURFACES';
DDERR_NO3D : Result := 'DDERR_NO3D';
DDERR_NOALPHAHW : Result := 'DDERR_NOALPHAHW';
DDERR_NOBLTHW : Result := 'DDERR_NOBLTHW';
DDERR_NOCLIPLIST : Result := 'DDERR_NOCLIPLIST';
DDERR_NOCLIPPERATTACHED : Result := 'DDERR_NOCLIPPERATTACHED';
DDERR_NOCOLORCONVHW : Result := 'DDERR_NOCOLORCONVHW';
DDERR_NOCOLORKEY : Result := 'DDERR_NOCOLORKEY';
DDERR_NOCOLORKEYHW : Result := 'DDERR_NOCOLORKEYHW';
DDERR_NOCOOPERATIVELEVELSET : Result := 'DDERR_NOCOOPERATIVELEVELSET';
DDERR_NODC : Result := 'DDERR_NODC';
DDERR_NODDROPSHW : Result := 'DDERR_NODDROPSHW';
DDERR_NODIRECTDRAWHW : Result := 'DDERR_NODIRECTDRAWHW';
DDERR_NOEMULATION : Result := 'DDERR_NOEMULATION';
DDERR_NOEXCLUSIVEMODE : Result := 'DDERR_NOEXCLUSIVEMODE';
DDERR_NOFLIPHW : Result := 'DDERR_NOFLIPHW';
DDERR_NOGDI : Result := 'DDERR_NOGDI';
DDERR_NOHWND : Result := 'DDERR_NOHWND';
DDERR_NOMIRRORHW : Result := 'DDERR_NOMIRRORHW';
DDERR_NOOVERLAYDEST : Result := 'DDERR_NOOVERLAYDEST';
DDERR_NOOVERLAYHW : Result := 'DDERR_NOOVERLAYHW';
DDERR_NOPALETTEATTACHED : Result := 'DDERR_NOPALETTEATTACHED';
DDERR_NOPALETTEHW : Result := 'DDERR_NOPALETTEHW';
DDERR_NORASTEROPHW : Result := 'DDERR_NORASTEROPHW';
DDERR_NOROTATIONHW : Result := 'DDERR_NOROTATIONHW';
DDERR_NOSTRETCHHW : Result := 'DDERR_NOSTRETCHHW';
DDERR_NOT4BITCOLOR : Result := 'DDERR_NOT4BITCOLOR';
DDERR_NOT4BITCOLORINDEX : Result := 'DDERR_NOT4BITCOLORINDEX';
DDERR_NOT8BITCOLOR : Result := 'DDERR_NOT8BITCOLOR';
DDERR_NOTAOVERLAYSURFACE : Result := 'DDERR_NOTAOVERLAYSURFACE';
DDERR_NOTEXTUREHW : Result := 'DDERR_NOTEXTUREHW';
DDERR_NOTFLIPPABLE : Result := 'DDERR_NOTFLIPPABLE';
DDERR_NOTFOUND : Result := 'DDERR_NOTFOUND';
DDERR_NOTLOCKED : Result := 'DDERR_NOTLOCKED';
DDERR_NOTPALETTIZED : Result := 'DDERR_NOTPALETTIZED';
DDERR_NOVSYNCHW : Result := 'DDERR_NOVSYNCHW';
DDERR_NOZBUFFERHW : Result := 'DDERR_NOZBUFFERHW';
DDERR_NOZOVERLAYHW : Result := 'DDERR_NOZOVERLAYHW';
DDERR_OUTOFCAPS : Result := 'DDERR_OUTOFCAPS';
DDERR_OUTOFMEMORY : Result := 'DDERR_OUTOFMEMORY';
DDERR_OUTOFVIDEOMEMORY : Result := 'DDERR_OUTOFVIDEOMEMORY';
DDERR_OVERLAYCANTCLIP : Result := 'DDERR_OVERLAYCANTCLIP';
DDERR_OVERLAYCOLORKEYONLYONEACTIVE : Result := 'DDERR_OVERLAYCOLORKEYONLYONEACTIVE';
DDERR_OVERLAYNOTVISIBLE : Result := 'DDERR_OVERLAYNOTVISIBLE';
DDERR_PALETTEBUSY : Result := 'DDERR_PALETTEBUSY';
DDERR_PRIMARYSURFACEALREADYEXISTS : Result := 'DDERR_PRIMARYSURFACEALREADYEXISTS';
DDERR_REGIONTOOSMALL : Result := 'DDERR_REGIONTOOSMALL';
DDERR_SURFACEALREADYATTACHED : Result := 'DDERR_SURFACEALREADYATTACHED';
DDERR_SURFACEALREADYDEPENDENT : Result := 'DDERR_SURFACEALREADYDEPENDENT';
DDERR_SURFACEBUSY : Result := 'DDERR_SURFACEBUSY';
DDERR_SURFACEISOBSCURED : Result := 'DDERR_SURFACEISOBSCURED';
DDERR_SURFACELOST : Result := 'DDERR_SURFACELOST';
DDERR_SURFACENOTATTACHED : Result := 'DDERR_SURFACENOTATTACHED';
DDERR_TOOBIGHEIGHT : Result := 'DDERR_TOOBIGHEIGHT';
DDERR_TOOBIGSIZE : Result := 'DDERR_TOOBIGSIZE';
DDERR_TOOBIGWIDTH : Result := 'DDERR_TOOBIGWIDTH';
DDERR_UNSUPPORTED : Result := 'DDERR_UNSUPPORTED';
DDERR_UNSUPPORTEDFORMAT : Result := 'DDERR_UNSUPPORTEDFORMAT';
DDERR_UNSUPPORTEDMASK : Result := 'DDERR_UNSUPPORTEDMASK';
DDERR_VERTICALBLANKINPROGRESS : Result := 'DDERR_VERTICALBLANKINPROGRESS';
DDERR_WASSTILLDRAWING : Result := 'DDERR_WASSTILLDRAWING';
DDERR_WRONGMODE : Result := 'DDERR_WRONGMODE';
DDERR_XALIGN : Result := 'DDERR_XALIGN';
else
Result := WindowsErrorMsg(ErrorCode);
end;
end;
function D3DErrorMsg(ErrorCode: HRESULT): string;
begin
case ErrorCode of
D3D_OK : Result := 'D3D_OK';
D3DERR_BADMAJORVERSION : Result := 'D3DERR_BADMAJORVERSION';
D3DERR_BADMINORVERSION : Result := 'D3DERR_BADMINORVERSION';
D3DERR_INVALID_DEVICE : Result := 'D3DERR_INVALID_DEVICE';
D3DERR_INITFAILED : Result := 'D3DERR_INITFAILED';
D3DERR_DEVICEAGGREGATED : Result := 'D3DERR_DEVICEAGGREGATED';
D3DERR_EXECUTE_CREATE_FAILED : Result := 'D3DERR_EXECUTE_CREATE_FAILED';
D3DERR_EXECUTE_DESTROY_FAILED : Result := 'D3DERR_EXECUTE_DESTROY_FAILED';
D3DERR_EXECUTE_LOCK_FAILED : Result := 'D3DERR_EXECUTE_LOCK_FAILED';
D3DERR_EXECUTE_UNLOCK_FAILED : Result := 'D3DERR_EXECUTE_UNLOCK_FAILED';
D3DERR_EXECUTE_LOCKED : Result := 'D3DERR_EXECUTE_LOCKED';
D3DERR_EXECUTE_NOT_LOCKED : Result := 'D3DERR_EXECUTE_NOT_LOCKED';
D3DERR_EXECUTE_FAILED : Result := 'D3DERR_EXECUTE_FAILED';
D3DERR_EXECUTE_CLIPPED_FAILED : Result := 'D3DERR_EXECUTE_CLIPPED_FAILED';
D3DERR_TEXTURE_NO_SUPPORT : Result := 'D3DERR_TEXTURE_NO_SUPPORT';
D3DERR_TEXTURE_CREATE_FAILED : Result := 'D3DERR_TEXTURE_CREATE_FAILED';
D3DERR_TEXTURE_DESTROY_FAILED : Result := 'D3DERR_TEXTURE_DESTROY_FAILED';
D3DERR_TEXTURE_LOCK_FAILED : Result := 'D3DERR_TEXTURE_LOCK_FAILED';
D3DERR_TEXTURE_UNLOCK_FAILED : Result := 'D3DERR_TEXTURE_UNLOCK_FAILED';
D3DERR_TEXTURE_LOAD_FAILED : Result := 'D3DERR_TEXTURE_LOAD_FAILED';
D3DERR_TEXTURE_SWAP_FAILED : Result := 'D3DERR_TEXTURE_SWAP_FAILED';
D3DERR_TEXTURE_LOCKED : Result := 'D3DERR_TEXTURE_LOCKED';
D3DERR_TEXTURE_NOT_LOCKED : Result := 'D3DERR_TEXTURE_NOT_LOCKED';
D3DERR_TEXTURE_GETSURF_FAILED : Result := 'D3DERR_TEXTURE_GETSURF_FAILED';
D3DERR_MATRIX_CREATE_FAILED : Result := 'D3DERR_MATRIX_CREATE_FAILED';
D3DERR_MATRIX_DESTROY_FAILED : Result := 'D3DERR_MATRIX_DESTROY_FAILED';
D3DERR_MATRIX_SETDATA_FAILED : Result := 'D3DERR_MATRIX_SETDATA_FAILED';
D3DERR_MATRIX_GETDATA_FAILED : Result := 'D3DERR_MATRIX_GETDATA_FAILED';
D3DERR_SETVIEWPORTDATA_FAILED : Result := 'D3DERR_SETVIEWPORTDATA_FAILED';
D3DERR_INVALIDCURRENTVIEWPORT : Result := 'D3DERR_INVALIDCURRENTVIEWPORT';
D3DERR_INVALIDPRIMITIVETYPE : Result := 'D3DERR_INVALIDPRIMITIVETYPE';
D3DERR_INVALIDVERTEXTYPE : Result := 'D3DERR_INVALIDVERTEXTYPE';
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -