?? dxerr.c
字號:
strcpy(errmsg,"The IDirectDrawSurface2::GetOverlayPosition method is called on an overlay that the IDirectDrawSurface2::UpdateOverlay method has not been called on to establish a destination.");
break;
case DDERR_NOOVERLAYHW:
strcpy(errmsg,"The operation cannot be carried out because no overlay hardware is present or available.");
break;
case DDERR_NOPALETTEATTACHED:
strcpy(errmsg,"No palette object is attached to this surface.");
break;
case DDERR_NOPALETTEHW:
strcpy(errmsg,"There is no hardware support for 16- or 256-color palettes.");
break;
case DDERR_NORASTEROPHW:
strcpy(errmsg,"The operation cannot be carried out because no appropriate raster operation hardware is present or available.");
break;
case DDERR_NOROTATIONHW:
strcpy(errmsg,"The operation cannot be carried out because no rotation hardware is present or available.");
break;
case DDERR_NOSTRETCHHW:
strcpy(errmsg,"The operation cannot be carried out because there is no hardware support for stretching.");
break;
case DDERR_NOT4BITCOLOR:
strcpy(errmsg,"The DirectDrawSurface object is not using a 4-bit color palette and the requested operation requires a 4-bit color palette.");
break;
case DDERR_NOT4BITCOLORINDEX:
strcpy(errmsg,"The DirectDrawSurface object is not using a 4-bit color index palette and the requested operation requires a 4-bit color index palette.");
break;
case DDERR_NOT8BITCOLOR:
strcpy(errmsg,"The DirectDrawSurface object is not using an 8-bit color palette and the requested operation requires an 8-bit color palette.");
break;
case DDERR_NOTAOVERLAYSURFACE:
strcpy(errmsg,"An overlay component is called for a non-overlay surface.");
break;
case DDERR_NOTEXTUREHW:
strcpy(errmsg,"The operation cannot be carried out because no texture-mapping hardware is present or available.");
break;
case DDERR_NOTFLIPPABLE:
strcpy(errmsg,"An attempt has been made to flip a surface that cannot be flipped.");
break;
case DDERR_NOTFOUND:
strcpy(errmsg,"The requested item was not found.");
break;
case DDERR_NOTINITIALIZED:
strcpy(errmsg,"An attempt was made to call an interface method of a DirectDraw object created by CoCreateInstance before the object was initialized.");
break;
case DDERR_NOTLOCKED:
strcpy(errmsg,"An attempt is made to unlock a surface that was not locked.");
break;
case DDERR_NOTPAGELOCKED:
strcpy(errmsg,"An attempt is made to page unlock a surface with no outstanding page locks.");
break;
case DDERR_NOTPALETTIZED:
strcpy(errmsg,"The surface being used is not a palette-based surface.");
break;
case DDERR_NOVSYNCHW:
strcpy(errmsg,"The operation cannot be carried out because there is no hardware support for vertical blank synchronized operations.");
break;
case DDERR_NOZBUFFERHW:
strcpy(errmsg,"The operation to create a z-buffer in display memory or to perform a blit using a z-buffer cannot be carried out because there is no hardware support for z-buffers.");
break;
case DDERR_NOZOVERLAYHW:
strcpy(errmsg,"The overlay surfaces cannot be z-layered based on the z-order because the hardware does not support z-ordering of overlays.");
break;
case DDERR_OUTOFCAPS:
strcpy(errmsg,"The hardware needed for the requested operation has already been allocated.");
break;
case DDERR_OUTOFMEMORY:
strcpy(errmsg,"DirectDraw does not have enough memory to perform the operation.");
break;
case DDERR_OUTOFVIDEOMEMORY:
strcpy(errmsg,"DirectDraw does not have enough display memory to perform the operation.");
break;
case DDERR_OVERLAYCANTCLIP:
strcpy(errmsg,"The hardware does not support clipped overlays.");
break;
case DDERR_OVERLAYCOLORKEYONLYONEACTIVE:
strcpy(errmsg,"An attempt was made to have more than one color key active on an overlay.");
break;
case DDERR_OVERLAYNOTVISIBLE:
strcpy(errmsg,"The IDirectDrawSurface2::GetOverlayPosition method is called on a hidden overlay.");
break;
case DDERR_PALETTEBUSY:
strcpy(errmsg,"Access to this palette is refused because the palette is locked by another thread.");
break;
case DDERR_PRIMARYSURFACEALREADYEXISTS:
strcpy(errmsg,"This process has already created a primary surface.");
break;
case DDERR_REGIONTOOSMALL:
strcpy(errmsg,"The region passed to the IDirectDrawClipper::GetClipList method is too small.");
break;
case DDERR_SURFACEALREADYATTACHED:
strcpy(errmsg,"An attempt was made to attach a surface to another surface to which it is already attached.");
break;
case DDERR_SURFACEALREADYDEPENDENT:
strcpy(errmsg,"An attempt was made to make a surface a dependency of another surface to which it is already dependent.");
break;
case DDERR_SURFACEBUSY:
strcpy(errmsg,"Access to the surface is refused because the surface is locked by another thread.");
break;
case DDERR_SURFACEISOBSCURED:
strcpy(errmsg,"Access to the surface is refused because the surface is obscured.");
break;
case DDERR_SURFACELOST:
strcpy(errmsg,"Access to the surface is refused because the surface memory is gone. The DirectDrawSurface object representing this surface should have the IDirectDrawSurface2::Restore method called on it.");
break;
case DDERR_SURFACENOTATTACHED:
strcpy(errmsg,"The requested surface is not attached.");
break;
case DDERR_TOOBIGHEIGHT:
strcpy(errmsg,"The height requested by DirectDraw is too large.");
break;
case DDERR_TOOBIGSIZE:
strcpy(errmsg,"The size requested by DirectDraw is too large. However, the individual height and width are OK.");
break;
case DDERR_TOOBIGWIDTH:
strcpy(errmsg,"The width requested by DirectDraw is too large.");
break;
case DDERR_UNSUPPORTED:
strcpy(errmsg,"The operation is not supported.");
break;
case DDERR_UNSUPPORTEDFORMAT:
strcpy(errmsg,"The FourCC format requested is not supported by DirectDraw.");
break;
case DDERR_UNSUPPORTEDMASK:
strcpy(errmsg,"The bitmask in the pixel format requested is not supported by DirectDraw.");
break;
case DDERR_UNSUPPORTEDMODE:
strcpy(errmsg,"The display is currently in an unsupported mode.");
break;
case DDERR_VERTICALBLANKINPROGRESS:
strcpy(errmsg,"A vertical blank is in progress.");
break;
case DDERR_WASSTILLDRAWING:
strcpy(errmsg,"The previous blit operation that is transferring information to or from this surface is incomplete.");
break;
case DDERR_WRONGMODE:
strcpy(errmsg,"This surface cannot be restored because it was created in a different mode.");
break;
case DDERR_XALIGN:
strcpy(errmsg,"The provided rectangle was not horizontally aligned on a required boundary.");
break;
default:
sprintf(errmsg, "Unknown Error Code : %04X", hresult);
break;
}
sprintf(msgtext, "DDERR: %s\n", errmsg);
WriteDebug( msgtext );
sprintf(msgtext, "%s FAILED\n", msg);
WriteDebug( msgtext );
}
void DI_Error( HRESULT hresult, char *msg)
{
char msgtext[512];
char errmsg[512];
switch(hresult)
{
case DI_BUFFEROVERFLOW:
strcpy(errmsg, "The device buffer overflowed and some input was lost. This value is equal to the S_FALSE standard COM return value.");
break;
case DI_DOWNLOADSKIPPED:
strcpy(errmsg, "The parameters of the effect were successfully updated, but the effect could not be downloaded because the associated device was not acquired in exclusive mode.");
break;
case DI_EFFECTRESTARTED:
strcpy(errmsg, "The effect was stopped, the parameters were updated, and the effect was restarted.");
break;
case DI_OK:
strcpy(errmsg, "The operation completed successfully. This value is equal to the S_OK standard COM return value.");
break;
case DI_POLLEDDEVICE:
strcpy(errmsg, "The device is a polled device. As a result, device buffering will not collect any data and event notifications will not be signaled until the IDirectInputDevice2::Poll method is called.");
break;
case DI_TRUNCATED:
strcpy(errmsg, "The parameters of the effect were successfully updated, but some of them were beyond the capabilities of the device and were truncated to the nearest supported value.");
break;
case DI_TRUNCATEDANDRESTARTED:
strcpy(errmsg, "Equal to DI_EFFECTRESTARTED | DI_TRUNCATED");
break;
case DIERR_ACQUIRED:
strcpy(errmsg, "The operation cannot be performed while the device is acquired.");
break;
case DIERR_ALREADYINITIALIZED:
strcpy(errmsg, "This object is already initialized");
break;
case DIERR_BADDRIVERVER:
strcpy(errmsg, "The object could not be created due to an incompatible driver version or mismatched or incomplete driver components.");
break;
case DIERR_BETADIRECTINPUTVERSION:
strcpy(errmsg, "The application was written for an unsupported prerelease version of DirectInput.");
break;
case DIERR_DEVICEFULL:
strcpy(errmsg, "The device is full.");
break;
case DIERR_DEVICENOTREG:
strcpy(errmsg, "The device or device instance is not registered with DirectInput. This value is equal to the REGDB_E_CLASSNOTREG standard COM return value.");
break;
case DIERR_EFFECTPLAYING:
strcpy(errmsg, "The parameters were updated in memory but were not downloaded to the device because the device does not support updating an effect while it is still playing.");
break;
case DIERR_HASEFFECTS:
strcpy(errmsg, "The device cannot be reinitialized because there are still effects attached to it");
break;
case DIERR_GENERIC:
strcpy(errmsg, "An undetermined error occurred inside the DirectInput subsystem. This value is equal to the E_FAIL standard COM return value.");
break;
case DIERR_HANDLEEXISTS:
strcpy(errmsg, "The device already has an event notification associated with it. This value is equal to the E_ACCESSDENIED standard COM return value.");
break;
case DIERR_INCOMPLETEEFFECT:
strcpy(errmsg, "The effect could not be downloaded because essential information is missing. For example, no axes have been associated with the effect, or no type-specific information has been supplied.");
break;
case DIERR_INPUTLOST:
strcpy(errmsg, "Access to the input device has been lost. It must be reacquired.");
break;
case DIERR_INVALIDPARAM:
strcpy(errmsg, "An invalid parameter was passed to the returning function, or the object was not in a state that permitted the function to be called. This value is equal to the E_INVALIDARG standard COM return value.");
break;
case DIERR_MOREDATA:
strcpy(errmsg, "Not all the requested information fitted into the buffer.");
break;
case DIERR_NOAGGREGATION:
strcpy(errmsg, "This object does not support aggregation.");
break;
case DIERR_NOINTERFACE:
strcpy(errmsg, "The specified interface is not supported by the object. This value is equal to the E_NOINTERFACE standard COM return value.");
break;
case DIERR_NOTACQUIRED:
strcpy(errmsg, "The operation cannot be performed unless the device is acquired.");
break;
case DIERR_NOTBUFFERED:
strcpy(errmsg, "The device is not buffered. Set the DIPROP_BUFFERSIZE property to enable buffering.");
break;
case DIERR_NOTDOWNLOADED:
strcpy(errmsg, "The effect is not downloaded.");
break;
case DIERR_NOTEXCLUSIVEACQUIRED:
strcpy(errmsg, "The operation cannot be performed unless the device is acquired in DISCL_EXCLUSIVE mode.");
break;
case DIERR_NOTFOUND:
strcpy(errmsg, "The requested object does not exist.");
break;
case DIERR_NOTINITIALIZED:
strcpy(errmsg, "This object has not been initialized.");
break;
case DIERR_OLDDIRECTINPUTVERSION:
strcpy(errmsg, "The application requires a newer version of DirectInput.");
break;
case DIERR_OUTOFMEMORY:
strcpy(errmsg, "The DirectInput subsystem couldn't allocate sufficient memory to complete the call. This value is equal to the E_OUTOFMEMORY standard COM return value.");
break;
case DIERR_UNSUPPORTED:
strcpy(errmsg, "The function called is not supported at this time. This value is equal to the E_NOTIMPL standard COM return value.");
break;
case E_PENDING:
strcpy(errmsg, "Data is not yet available.");
break;
default:
sprintf(errmsg, "Unknown Error Code : %04X", hresult);
break;
}
sprintf(msgtext, "DIERR: %s\n", errmsg);
WriteDebug( msgtext );
sprintf(msgtext, "%s FAILED\n", msg);
WriteDebug( msgtext );
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -