mirror of
https://github.com/DxWnd/DxWnd.reloaded
synced 2024-12-30 09:25:35 +01:00
v2_02_12_src
Former-commit-id: 32d62dd2b268ffa71f32be2aca3d12f26bde49db
This commit is contained in:
parent
64c33d2cd4
commit
3fc3334d07
BIN
Doc/dxwnd_manual.odt
Normal file
BIN
Doc/dxwnd_manual.odt
Normal file
Binary file not shown.
87
Include/DShow.h
Normal file
87
Include/DShow.h
Normal file
@ -0,0 +1,87 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// File: DShow.h
|
||||
//
|
||||
// Desc: DirectShow top-level include file
|
||||
//
|
||||
// Copyright (c) 2000-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
#ifndef __DSHOW_INCLUDED__
|
||||
#define __DSHOW_INCLUDED__
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Set up constants & pragmas for the compiler
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#ifdef _MSC_VER
|
||||
// disable some level-4 warnings, use #pragma warning(default:###) to re-enable
|
||||
#pragma warning(disable:4100) // warning C4100: unreferenced formal parameter
|
||||
#pragma warning(disable:4201) // warning C4201: nonstandard extension used : nameless struct/union
|
||||
#pragma warning(disable:4511) // warning C4511: copy constructor could not be generated
|
||||
#pragma warning(disable:4512) // warning C4512: assignment operator could not be generated
|
||||
#pragma warning(disable:4514) // warning C4514: "unreferenced inline function has been removed"
|
||||
|
||||
#if _MSC_VER>=1100
|
||||
#define AM_NOVTABLE __declspec(novtable)
|
||||
#else
|
||||
#define AM_NOVTABLE
|
||||
#endif
|
||||
#endif // MSC_VER
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Include standard Windows files
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#include <windows.h>
|
||||
#include <windowsx.h>
|
||||
#include <olectl.h>
|
||||
#include <ddraw.h>
|
||||
#include <mmsystem.h>
|
||||
|
||||
#ifndef NO_DSHOW_STRSAFE
|
||||
#define NO_SHLWAPI_STRFCNS
|
||||
#include <strsafe.h>
|
||||
#endif
|
||||
|
||||
#ifndef NUMELMS
|
||||
#define NUMELMS(aa) (sizeof(aa)/sizeof((aa)[0]))
|
||||
#endif
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Include DirectShow include files
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#include <strmif.h> // Generated IDL header file for streams interfaces
|
||||
#include <amvideo.h> // ActiveMovie video interfaces and definitions
|
||||
|
||||
#ifdef DSHOW_USE_AMAUDIO
|
||||
#include <amaudio.h> // ActiveMovie audio interfaces and definitions
|
||||
#endif
|
||||
|
||||
#include <control.h> // generated from control.odl
|
||||
#include <evcode.h> // event code definitions
|
||||
#include <uuids.h> // declaration of type GUIDs and well-known clsids
|
||||
#include <errors.h> // HRESULT status and error definitions
|
||||
#include <edevdefs.h> // External device control interface defines
|
||||
#include <audevcod.h> // audio filter device error event codes
|
||||
#include <dvdevcod.h> // DVD error event codes
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Define OLE Automation constants
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#ifndef OATRUE
|
||||
#define OATRUE (-1)
|
||||
#endif // OATRUE
|
||||
#ifndef OAFALSE
|
||||
#define OAFALSE (0)
|
||||
#endif // OAFALSE
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Define Win64 interfaces if not already defined
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// InterlockedExchangePointer
|
||||
#ifndef InterlockedExchangePointer
|
||||
#define InterlockedExchangePointer(Target, Value) \
|
||||
(PVOID)InterlockedExchange((PLONG)(Target), (LONG)(Value))
|
||||
#endif
|
||||
|
||||
|
||||
#endif // __DSHOW_INCLUDED__
|
@ -69,6 +69,10 @@
|
||||
#define FAKEVERSION 0x00400000 // pretends the platvorm is a given window version / subversion
|
||||
#define FULLRECTBLT 0x00800000 // blit to primary surface using NULL source & dest rect
|
||||
#define NOPALETTEUPDATE 0x01000000 // Do not refresh primary surface on palette updates
|
||||
#define SUPPRESSIME 0x02000000 // suppress IME
|
||||
#define NOBANNER 0x04000000 // suppress fancy logo & banneer effects
|
||||
#define WINDOWIZE 0x08000000 // Run in a Window (default TRUE)
|
||||
#define LIMITRESOURCES 0x10000000 // Limit resources to fit an old program's expectations
|
||||
|
||||
// logging Tflags DWORD:
|
||||
#define OUTTRACE 0x00000001 // enables tracing to dxwnd.log in general
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:dbf061c43c802f58ed4d3d3d76595047fe9d3ce6b6fce822bdfb492e5d945845
|
||||
size 277504
|
||||
oid sha256:e57051bb941d5540bc3ff00785953fc614543989bd451522af2759f240fb2298
|
||||
size 297984
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:752c9f62bae2b46682c477c8a72062dda4c38f33732bcd62be8b4b9324bebdb8
|
||||
size 488960
|
||||
oid sha256:deb192e6aa9d77b5a60a663c39fe0d39a6ca3c100179a9e0c71e6f11d85d18b4
|
||||
size 498688
|
||||
|
@ -89,7 +89,7 @@ path5=d:\Games\ALIFE\ALIFE.EXE
|
||||
module5=
|
||||
ver5=1
|
||||
flag5=134217762
|
||||
flagg5=160
|
||||
flagg5=32
|
||||
tflag5=2
|
||||
initx5=0
|
||||
inity5=0
|
||||
@ -105,9 +105,9 @@ title6=Age of Empires
|
||||
path6=D:\Games\Age of Empires\EMPIRES.EXE
|
||||
module6=
|
||||
ver6=0
|
||||
flag6=402653219
|
||||
flagg6=4112
|
||||
tflag6=258
|
||||
flag6=402653347
|
||||
flagg6=2166800
|
||||
tflag6=259
|
||||
initx6=0
|
||||
inity6=0
|
||||
minx6=0
|
||||
@ -154,11 +154,11 @@ sizx8=800
|
||||
sizy8=600
|
||||
title9=Age of Wonders
|
||||
path9=D:\Games\Age of Wonders\AoW.exe
|
||||
module9=
|
||||
module9=VideoP.dpl vcl30.dpl
|
||||
ver9=0
|
||||
flag9=545390594
|
||||
flagg9=17
|
||||
tflag9=259
|
||||
tflag9=130
|
||||
initx9=0
|
||||
inity9=0
|
||||
minx9=0
|
||||
@ -989,7 +989,7 @@ title58=Dream Aquarium
|
||||
path58=D:\Program Files\Dream Aquarium\Dream_Aquarium.scr
|
||||
module58=
|
||||
ver58=9
|
||||
flag58=671088641
|
||||
flag58=679477249
|
||||
flagg58=303104
|
||||
tflag58=256
|
||||
initx58=0
|
||||
@ -1059,7 +1059,7 @@ module62=
|
||||
ver62=0
|
||||
flag62=134545443
|
||||
flagg62=18
|
||||
tflag62=259
|
||||
tflag62=2
|
||||
initx62=0
|
||||
inity62=0
|
||||
minx62=0
|
||||
@ -2264,7 +2264,7 @@ title133=Resident Evil
|
||||
path133=D:\Games\Resident Evil\residentevil.patched.exe
|
||||
module133=
|
||||
ver133=1
|
||||
flag133=134226019
|
||||
flag133=134217827
|
||||
flagg133=128
|
||||
tflag133=2
|
||||
initx133=0
|
||||
@ -2944,9 +2944,9 @@ title173=Tomb Raider 2 the Golden Mask
|
||||
path173=D:\Games\TR2 Golden Mask\T2GOLD.EXE
|
||||
module173=
|
||||
ver173=0
|
||||
flag173=704643106
|
||||
flagg173=17842176
|
||||
tflag173=259
|
||||
flag173=570687522
|
||||
flagg173=3227648
|
||||
tflag173=291
|
||||
initx173=0
|
||||
inity173=0
|
||||
minx173=0
|
||||
@ -3065,7 +3065,7 @@ module180=
|
||||
ver180=0
|
||||
flag180=671236130
|
||||
flagg180=256
|
||||
tflag180=259
|
||||
tflag180=258
|
||||
initx180=0
|
||||
inity180=0
|
||||
minx180=0
|
||||
@ -3080,9 +3080,9 @@ title181=Warcraft 2 Battlenet Edition
|
||||
path181=D:\Games\Warcraft 2\Warcraft II BNE.exe
|
||||
module181=
|
||||
ver181=0
|
||||
flag181=268452003
|
||||
flagg181=16
|
||||
tflag181=259
|
||||
flag181=24739
|
||||
flagg181=2183184
|
||||
tflag181=3
|
||||
initx181=0
|
||||
inity181=0
|
||||
minx181=0
|
||||
@ -3201,7 +3201,7 @@ maxfps2=0
|
||||
maxfps3=0
|
||||
maxfps4=0
|
||||
maxfps5=0
|
||||
maxfps6=10
|
||||
maxfps6=40
|
||||
maxfps7=40
|
||||
maxfps8=0
|
||||
maxfps9=0
|
||||
@ -3982,12 +3982,12 @@ maxfps198=20
|
||||
initts198=-9
|
||||
title199=Urban Assault CD
|
||||
path199=D:\Games\Urban Assault CD\UA.EXE
|
||||
module199=
|
||||
module199=quartz
|
||||
opengllib199=
|
||||
ver199=0
|
||||
flag199=671236130
|
||||
flagg199=33024
|
||||
tflag199=259
|
||||
flag199=537280546
|
||||
flagg199=8388864
|
||||
tflag199=435
|
||||
initx199=0
|
||||
inity199=0
|
||||
minx199=0
|
||||
@ -4044,9 +4044,9 @@ title202=Pandemonium 2
|
||||
path202=D:\Games\Pandemonium 2\pandy.exe
|
||||
module202=
|
||||
opengllib202=
|
||||
ver202=1
|
||||
flag202=134217730
|
||||
flagg202=1048577
|
||||
ver202=0
|
||||
flag202=671219714
|
||||
flagg202=1
|
||||
tflag202=0
|
||||
initx202=0
|
||||
inity202=0
|
||||
@ -4126,7 +4126,7 @@ module206=
|
||||
opengllib206=
|
||||
ver206=0
|
||||
flag206=2
|
||||
flagg206=16777248
|
||||
flagg206=32
|
||||
tflag206=0
|
||||
initx206=0
|
||||
inity206=0
|
||||
|
@ -54,3 +54,9 @@ Hooked
|
||||
extDirectDrawEnumerate/Ex ddraw calls to handle Hide multi-monitor option.
|
||||
Detected directshow activation through CoCreateInstance and hooked quartz.dll segment: now Urban Assault movies don't require "Full RECT Blit" option to be set.
|
||||
Updated DDSurface::Release hook
|
||||
|
||||
v2.02.12
|
||||
GUI: Tabbed setup panel. More space for more future options.
|
||||
DLL: (optional) splash screen
|
||||
probably, some regression bugs....
|
||||
|
||||
|
BIN
dll/Thumbs.db
Normal file
BIN
dll/Thumbs.db
Normal file
Binary file not shown.
138
dll/dderr.c
Normal file
138
dll/dderr.c
Normal file
@ -0,0 +1,138 @@
|
||||
/*
|
||||
*
|
||||
* Function : DDError()
|
||||
*
|
||||
* Purpose : Traces an error (DirectDraw)
|
||||
*
|
||||
*/
|
||||
|
||||
void DDError(HRESULT hErr)
|
||||
{
|
||||
char dderr[256];
|
||||
char string[1024];
|
||||
|
||||
switch (hErr)
|
||||
{
|
||||
case DDERR_DDSCAPSCOMPLEXREQUIRED : sprintf(dderr, "DDERR_DDSCAPSCOMPLEXREQUIRED: New for DirectX 7.0. The surface requires the DDSCAPS_COMPLEX flag."); break;
|
||||
case DDERR_DEVICEDOESNTOWNSURFACE : sprintf(dderr, "DDERR_DEVICEDOESNTOWNSURFACE: Surfaces created by one DirectDraw device cannot be used directly by another DirectDraw device."); break;
|
||||
case DDERR_EXPIRED : sprintf(dderr, "DDERR_EXPIRED: The data has expired and is therefore no longer valid."); break;
|
||||
case DDERR_INVALIDSTREAM : sprintf(dderr, "DDERR_INVALIDSTREAM: The specified stream contains invalid data."); break;
|
||||
case DDERR_MOREDATA : sprintf(dderr, "DDERR_MOREDATA: There is more data available than the specified buffer size can hold."); break;
|
||||
case DDERR_NEWMODE : sprintf(dderr, "DDERR_NEWMODE: New for DirectX 7.0. When IDirectDraw7::StartModeTest is called with the DDSMT_ISTESTREQUIRED flag, it may return this value to denote that some or all of the resolutions can and should be tested. IDirectDraw7::EvaluateMode returns this value to indicate that the test has switched to a new display mode."); break;
|
||||
case DDERR_NODRIVERSUPPORT : sprintf(dderr, "DDERR_NODRIVERSUPPORT: New for DirectX 7.0. Testing cannot proceed because the display adapter driver does not enumerate refresh rates."); break;
|
||||
case DDERR_NOFOCUSWINDOW : sprintf(dderr, "DDERR_NOFOCUSWINDOW: An attempt was made to create or set a device window without first setting the focus window."); break;
|
||||
case DDERR_NOMONITORINFORMATION : sprintf(dderr, "DDERR_NOMONITORINFORMATION: New for DirectX 7.0. Testing cannot proceed because the monitor has no associated EDID data."); break;
|
||||
case DDERR_NONONLOCALVIDMEM : sprintf(dderr, "DDERR_NONONLOCALVIDMEM: An attempt was made to allocate nonlocal video memory from a device that does not support nonlocal video memory."); break;
|
||||
case DDERR_NOOPTIMIZEHW : sprintf(dderr, "DDERR_NOOPTIMIZEHW: The device does not support optimized surfaces."); break;
|
||||
case DDERR_NOSTEREOHARDWARE : sprintf(dderr, "DDERR_NOSTEREOHARDWARE: There is no stereo hardware present or available."); break;
|
||||
case DDERR_NOSURFACELEFT : sprintf(dderr, "DDERR_NOSURFACELEFT: There is no hardware present that supports stereo surfaces."); break;
|
||||
case DDERR_NOTLOADED : sprintf(dderr, "DDERR_NOTLOADED: The surface is an optimized surface, but it has not yet been allocated any memory."); break;
|
||||
case DDERR_OVERLAPPINGRECTS : sprintf(dderr, "DDERR_OVERLAPPINGRECTS: The source and destination rectangles are on the same surface and overlap each other."); break;
|
||||
case DDERR_TESTFINISHED : sprintf(dderr, "DDERR_TESTFINISHED: New for DirectX 7.0. When returned by the IDirectDraw7::StartModeTest method, this value means that no test could be initiated because all the resolutions chosen for testing already have refresh rate information in the registry. When returned by IDirectDraw7::EvaluateMode, the value means that DirectDraw has completed a refresh rate test."); break;
|
||||
case DDERR_VIDEONOTACTIVE : sprintf(dderr, "DDERR_VIDEONOTACTIVE: The video port is not active."); break;
|
||||
case DDERR_ALREADYINITIALIZED : sprintf(dderr, "DDERR_ALREADYINITIALIZED: The object has already been initialized."); break;
|
||||
case DDERR_CANNOTATTACHSURFACE : sprintf(dderr, "DDERR_CANNOTATTACHSURFACE: A surface cannot be attached to another requested surface."); break;
|
||||
case DDERR_CANNOTDETACHSURFACE : sprintf(dderr, "DDERR_CANNOTDETACHSURFACE: A surface cannot be detached from another requested surface."); break;
|
||||
case DDERR_CURRENTLYNOTAVAIL : sprintf(dderr, "DDERR_CURRENTLYNOTAVAIL: No support is currently available"); break;
|
||||
case DDERR_EXCEPTION : sprintf(dderr, "DDERR_EXCEPTION: An exception was encountered while performing the requested operation."); break;
|
||||
case DDERR_GENERIC : sprintf(dderr, "DDERR_GENERIC: There is an undefined error condition."); break;
|
||||
case DDERR_HEIGHTALIGN : sprintf(dderr, "DDERR_HEIGHTALIGN: The height of the provided rectangle is not a multiple of the required alignment."); break;
|
||||
case DDERR_INCOMPATIBLEPRIMARY : sprintf(dderr, "DDERR_INCOMPATIBLEPRIMARY: The primary surface creation request does not match the existing primary surface."); break;
|
||||
case DDERR_INVALIDCAPS : sprintf(dderr, "DDERR_INVALIDCAPS: One or more of the capability bits passed to the callback function are incorrect."); break;
|
||||
case DDERR_INVALIDCLIPLIST : sprintf(dderr, "DDERR_INVALIDCLIPLIST: DirectDraw does not support the provided clip list."); break;
|
||||
case DDERR_INVALIDMODE : sprintf(dderr, "DDERR_INVALIDMODE: DirectDraw does not support the requested mode."); break;
|
||||
case DDERR_INVALIDOBJECT : sprintf(dderr, "DDERR_INVALIDOBJECT: DirectDraw received a pointer that was an invalid DirectDraw object."); break;
|
||||
case DDERR_INVALIDPARAMS : sprintf(dderr, "DDERR_INVALIDPARAMS: One or more of the parameters passed to the method are incorrect."); break;
|
||||
case DDERR_INVALIDPIXELFORMAT : sprintf(dderr, "DDERR_INVALIDPIXELFORMAT: The pixel format was invalid as specified."); break;
|
||||
case DDERR_INVALIDRECT : sprintf(dderr, "DDERR_INVALIDRECT: The provided rectangle was invalid."); break;
|
||||
case DDERR_LOCKEDSURFACES : sprintf(dderr, "DDERR_LOCKEDSURFACES: One or more surfaces are locked, causing the failure of the requested operation."); break;
|
||||
case DDERR_NO3D : sprintf(dderr, "DDERR_NO3D: No 3-D hardware or emulation is present."); break;
|
||||
case DDERR_NOALPHAHW : sprintf(dderr, "DDERR_NOALPHAHW: No alpha-acceleration hardware is present or available, causing the failure of the requested operation."); break;
|
||||
case DDERR_NOCLIPLIST : sprintf(dderr, "DDERR_NOCLIPLIST: No clip list is available."); break;
|
||||
case DDERR_NOCOLORCONVHW : sprintf(dderr, "DDERR_NOCOLORCONVHW: No color-conversion hardware is present or available."); break;
|
||||
case DDERR_NOCOOPERATIVELEVELSET : sprintf(dderr, "DDERR_NOCOOPERATIVELEVELSET: A create function was called without the IDirectDraw7::SetCooperativeLevel method."); break;
|
||||
case DDERR_NOCOLORKEY : sprintf(dderr, "DDERR_NOCOLORKEY: The surface does not currently have a color key."); break;
|
||||
case DDERR_NOCOLORKEYHW : sprintf(dderr, "DDERR_NOCOLORKEYHW: There is no hardware support for the destination color key."); break;
|
||||
case DDERR_NODIRECTDRAWSUPPORT : sprintf(dderr, "DDERR_NODIRECTDRAWSUPPORT: DirectDraw support is not possible with the current display driver."); break;
|
||||
case DDERR_NOEXCLUSIVEMODE : sprintf(dderr, "DDERR_NOEXCLUSIVEMODE: The operation requires the application to have exclusive mode, but the application does not have exclusive mode."); break;
|
||||
case DDERR_NOFLIPHW : sprintf(dderr, "DDERR_NOFLIPHW: Flipping visible surfaces is not supported."); break;
|
||||
case DDERR_NOGDI : sprintf(dderr, "DDERR_NOGDI: No GDI is present."); break;
|
||||
case DDERR_NOMIRRORHW : sprintf(dderr, "DDERR_NOMIRRORHW: No mirroring hardware is present or available."); break;
|
||||
case DDERR_NOTFOUND : sprintf(dderr, "DDERR_NOTFOUND: The requested item was not found."); break;
|
||||
case DDERR_NOOVERLAYHW : sprintf(dderr, "DDERR_NOOVERLAYHW: No overlay hardware is present or available."); break;
|
||||
case DDERR_NORASTEROPHW : sprintf(dderr, "DDERR_NORASTEROPHW: No appropriate raster-operation hardware is present or available."); break;
|
||||
case DDERR_NOROTATIONHW : sprintf(dderr, "DDERR_NOROTATIONHW: No rotation hardware is present or available."); break;
|
||||
case DDERR_NOSTRETCHHW : sprintf(dderr, "DDERR_NOSTRETCHHW: There is no hardware support for stretching."); break;
|
||||
case DDERR_NOT4BITCOLOR : sprintf(dderr, "DDERR_NOT4BITCOLOR: 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 : sprintf(dderr, "DDERR_NOT4BITCOLORINDEX: 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 : sprintf(dderr, "DDERR_NOT8BITCOLOR: The DirectDrawSurface object is not using an 8-bit color palette, and the requested operation requires an 8-bit color palette."); break;
|
||||
case DDERR_NOTEXTUREHW : sprintf(dderr, "DDERR_NOTEXTUREHW: The operation cannot be carried out because no texture-mapping hardware is present or available."); break;
|
||||
case DDERR_NOVSYNCHW : sprintf(dderr, "DDERR_NOVSYNCHW: There is no hardware support for vertical blank synchronized operations."); break;
|
||||
case DDERR_NOZBUFFERHW : sprintf(dderr, "DDERR_NOZBUFFERHW: 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 : sprintf(dderr, "DDERR_NOZOVERLAYHW: 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 : sprintf(dderr, "DDERR_OUTOFCAPS: The hardware needed for the requested operation has already been allocated."); break;
|
||||
case DDERR_OUTOFMEMORY : sprintf(dderr, "DDERR_OUTOFMEMORY: DirectDraw does not have enough memory to perform the operation."); break;
|
||||
case DDERR_OUTOFVIDEOMEMORY : sprintf(dderr, "DDERR_OUTOFVIDEOMEMORY: DirectDraw does not have enough display memory to perform the operation."); break;
|
||||
case DDERR_OVERLAYCANTCLIP : sprintf(dderr, "DDERR_OVERLAYCANTCLIP: The hardware does not support clipped overlays."); break;
|
||||
case DDERR_OVERLAYCOLORKEYONLYONEACTIVE : sprintf(dderr, "DDERR_OVERLAYCOLORKEYONLYONEACTIVE: An attempt was made to have more than one color key active on an overlay."); break;
|
||||
case DDERR_PALETTEBUSY : sprintf(dderr, "DDERR_PALETTEBUSY: Access to this palette is refused because the palette is locked by another thread."); break;
|
||||
case DDERR_COLORKEYNOTSET : sprintf(dderr, "DDERR_COLORKEYNOTSET: No source color key is specified for this operation."); break;
|
||||
case DDERR_SURFACEALREADYATTACHED : sprintf(dderr, "DDERR_SURFACEALREADYATTACHED: An attempt was made to attach a surface to another surface to which it is already attached."); break;
|
||||
case DDERR_SURFACEALREADYDEPENDENT : sprintf(dderr, "DDERR_SURFACEALREADYDEPENDENT: An attempt was made to make a surface a dependency of another surface on which it is already dependent."); break;
|
||||
case DDERR_SURFACEBUSY : sprintf(dderr, "DDERR_SURFACEBUSY: Access to the surface is refused because the surface is locked by another thread."); break;
|
||||
case DDERR_CANTLOCKSURFACE : sprintf(dderr, "DDERR_CANTLOCKSURFACE: Access to this surface is refused because an attempt was made to lock the primary surface without DCI support."); break;
|
||||
case DDERR_SURFACEISOBSCURED : sprintf(dderr, "DDERR_SURFACEISOBSCURED: Access to the surface is refused because the surface is obscured."); break;
|
||||
case DDERR_SURFACELOST : sprintf(dderr, "DDERR_SURFACELOST: Access to the surface is refused because the surface memory is gone. Call the IDirectDrawSurface7::Restore method on this surface to restore the memory associated with it."); break;
|
||||
case DDERR_SURFACENOTATTACHED : sprintf(dderr, "DDERR_SURFACENOTATTACHED: The requested surface is not attached."); break;
|
||||
case DDERR_TOOBIGHEIGHT : sprintf(dderr, "DDERR_TOOBIGHEIGHT: The height requested by DirectDraw is too large."); break;
|
||||
case DDERR_TOOBIGSIZE : sprintf(dderr, "DDERR_TOOBIGSIZE: The size requested by DirectDraw is too large. However, the individual height and width are valid sizes."); break;
|
||||
case DDERR_TOOBIGWIDTH : sprintf(dderr, "DDERR_TOOBIGWIDTH: The width requested by DirectDraw is too large."); break;
|
||||
case DDERR_UNSUPPORTED : sprintf(dderr, "DDERR_UNSUPPORTED: The operation is not supported."); break;
|
||||
case DDERR_UNSUPPORTEDFORMAT : sprintf(dderr, "DDERR_UNSUPPORTEDFORMAT: The pixel format requested is not supported by DirectDraw."); break;
|
||||
case DDERR_UNSUPPORTEDMASK : sprintf(dderr, "DDERR_UNSUPPORTEDMASK: The bitmask in the pixel format requested is not supported by DirectDraw."); break;
|
||||
case DDERR_VERTICALBLANKINPROGRESS : sprintf(dderr, "DDERR_VERTICALBLANKINPROGRESS: A vertical blank is in progress."); break;
|
||||
case DDERR_WASSTILLDRAWING : sprintf(dderr, "DDERR_WASSTILLDRAWING: The previous blit operation that is transferring information to or from this surface is incomplete."); break;
|
||||
case DDERR_XALIGN : sprintf(dderr, "DDERR_XALIGN: The provided rectangle was not horizontally aligned on a required boundary."); break;
|
||||
case DDERR_INVALIDDIRECTDRAWGUID : sprintf(dderr, "DDERR_INVALIDDIRECTDRAWGUID: The globally unique identifier (GUID) passed to the DirectDrawCreate function is not a valid DirectDraw driver identifier."); break;
|
||||
case DDERR_DIRECTDRAWALREADYCREATED : sprintf(dderr, "DDERR_DIRECTDRAWALREADYCREATED: A DirectDraw object representing this driver has already been created for this process."); break;
|
||||
case DDERR_NODIRECTDRAWHW : sprintf(dderr, "DDERR_NODIRECTDRAWHW: Hardware-only DirectDraw object creation is not possible; the driver does not support any hardware."); break;
|
||||
case DDERR_PRIMARYSURFACEALREADYEXISTS : sprintf(dderr, "DDERR_PRIMARYSURFACEALREADYEXISTS: This process has already created a primary surface."); break;
|
||||
case DDERR_NOEMULATION : sprintf(dderr, "DDERR_NOEMULATION: Software emulation is not available."); break;
|
||||
case DDERR_REGIONTOOSMALL : sprintf(dderr, "DDERR_REGIONTOOSMALL: The region passed to the IDirectDrawClipper::GetClipList method is too small."); break;
|
||||
case DDERR_CLIPPERISUSINGHWND : sprintf(dderr, "DDERR_CLIPPERISUSINGHWND: An attempt was made to set a clip list for a DirectDrawClipper object that is already monitoring a window handle."); break;
|
||||
case DDERR_NOCLIPPERATTACHED : sprintf(dderr, "DDERR_NOCLIPPERATTACHED: No DirectDrawClipper object is attached to the surface object."); break;
|
||||
case DDERR_NOHWND : sprintf(dderr, "DDERR_NOHWND: Clipper notification requires a window handle, or no window handle has been previously set as the cooperative level window handle."); break;
|
||||
case DDERR_HWNDSUBCLASSED : sprintf(dderr, "DDERR_HWNDSUBCLASSED: DirectDraw is prevented from restoring state because the DirectDraw cooperative-level window handle has been subclassed."); break;
|
||||
case DDERR_HWNDALREADYSET : sprintf(dderr, "DDERR_HWNDALREADYSET: The DirectDraw cooperative-level window handle has already been set. It cannot be reset while the process has surfaces or palettes created."); break;
|
||||
case DDERR_NOPALETTEATTACHED : sprintf(dderr, "DDERR_NOPALETTEATTACHED: No palette object is attached to this surface."); break;
|
||||
case DDERR_NOPALETTEHW : sprintf(dderr, "DDERR_NOPALETTEHW: There is no hardware support for 16- or 256-color palettes."); break;
|
||||
case DDERR_BLTFASTCANTCLIP : sprintf(dderr, "DDERR_BLTFASTCANTCLIP: A DirectDrawClipper object is attached to a source surface that has passed into a call to the IDirectDrawSurface7::BltFast method."); break;
|
||||
case DDERR_NOBLTHW : sprintf(dderr, "DDERR_NOBLTHW: No blitter hardware is present."); break;
|
||||
case DDERR_NODDROPSHW : sprintf(dderr, "DDERR_NODDROPSHW: No DirectDraw raster-operation (ROP) hardware is available."); break;
|
||||
case DDERR_OVERLAYNOTVISIBLE : sprintf(dderr, "DDERR_OVERLAYNOTVISIBLE: The IDirectDrawSurface7::GetOverlayPosition method was called on a hidden overlay."); break;
|
||||
case DDERR_NOOVERLAYDEST : sprintf(dderr, "DDERR_NOOVERLAYDEST: The IDirectDrawSurface7::GetOverlayPosition method is called on an overlay that the IDirectDrawSurface7::UpdateOverlay method has not been called on to establish as a destination."); break;
|
||||
case DDERR_INVALIDPOSITION : sprintf(dderr, "DDERR_INVALIDPOSITION: The position of the overlay on the destination is no longer legal."); break;
|
||||
case DDERR_NOTAOVERLAYSURFACE : sprintf(dderr, "DDERR_NOTAOVERLAYSURFACE: An overlay component is called for a nonoverlay surface."); break;
|
||||
case DDERR_EXCLUSIVEMODEALREADYSET : sprintf(dderr, "DDERR_EXCLUSIVEMODEALREADYSET: An attempt was made to set the cooperative level when it was already set to exclusive."); break;
|
||||
case DDERR_NOTFLIPPABLE : sprintf(dderr, "DDERR_NOTFLIPPABLE: An attempt was made to flip a surface that cannot be flipped."); break;
|
||||
case DDERR_CANTDUPLICATE : sprintf(dderr, "DDERR_CANTDUPLICATE: Primary and 3-D surfaces, or surfaces that are implicitly created, cannot be duplicated."); break;
|
||||
case DDERR_NOTLOCKED : sprintf(dderr, "DDERR_NOTLOCKED: An attempt was made to unlock a surface that was not locked."); break;
|
||||
case DDERR_CANTCREATEDC : sprintf(dderr, "DDERR_CANTCREATEDC: Windows cannot create any more device contexts (DCs), or a DC has requested a palette-indexed surface when the surface had no palette and the display mode was not palette-indexed (in this case DirectDraw cannot select a proper palette into the DC)."); break;
|
||||
case DDERR_NODC : sprintf(dderr, "DDERR_NODC: No device context (DC) has ever been created for this surface."); break;
|
||||
case DDERR_WRONGMODE : sprintf(dderr, "DDERR_WRONGMODE: This surface cannot be restored because it was created in a different mode."); break;
|
||||
case DDERR_IMPLICITLYCREATED : sprintf(dderr, "DDERR_IMPLICITLYCREATED: The surface cannot be restored because it is an implicitly created surface."); break;
|
||||
case DDERR_NOTPALETTIZED : sprintf(dderr, "DDERR_NOTPALETTIZED: The surface being used is not a palette-based surface."); break;
|
||||
case DDERR_UNSUPPORTEDMODE : sprintf(dderr, "DDERR_UNSUPPORTEDMODE: The display is currently in an unsupported mode."); break;
|
||||
case DDERR_NOMIPMAPHW : sprintf(dderr, "DDERR_NOMIPMAPHW: No mipmap-capable texture mapping hardware is present or available."); break;
|
||||
case DDERR_INVALIDSURFACETYPE : sprintf(dderr, "DDERR_INVALIDSURFACETYPE: The surface was of the wrong type."); break;
|
||||
case DDERR_DCALREADYCREATED : sprintf(dderr, "DDERR_DCALREADYCREATED: A device context (DC) has already been returned for this surface. Only one DC can be retrieved for each surface."); break;
|
||||
case DDERR_CANTPAGELOCK : sprintf(dderr, "DDERR_CANTPAGELOCK: An attempt to page-lock a surface failed. Page lock does not work on a display-memory surface or an emulated primary surface."); break;
|
||||
case DDERR_CANTPAGEUNLOCK : sprintf(dderr, "DDERR_CANTPAGEUNLOCK: An attempt to page-unlock a surface failed. Page unlock does not work on a display-memory surface or an emulated primary surface."); break;
|
||||
case DDERR_NOTPAGELOCKED : sprintf(dderr, "DDERR_NOTPAGELOCKED: An attempt was made to page-unlock a surface with no outstanding page locks."); break;
|
||||
case DDERR_NOTINITIALIZED : sprintf(dderr, "DDERR_NOTINITIALIZED: An attempt was made to call an interface method of a DirectDraw object created by CoCreateInstance before the object was initialized."); break;
|
||||
default : sprintf(dderr, "Unknown Error"); break;
|
||||
}
|
||||
|
||||
sprintf(string, "DirectDraw Error %s\n", dderr);
|
||||
OutputDebugString(string);
|
||||
}
|
@ -13,6 +13,8 @@
|
||||
#include "syslibs.h"
|
||||
#undef DXWDECLARATIONS
|
||||
#include "dxhelper.h"
|
||||
#include "Ime.h"
|
||||
#include "Winnls32.h"
|
||||
|
||||
dxwCore dxw;
|
||||
|
||||
@ -40,7 +42,7 @@ static char *Flag2Names[32]={
|
||||
"LIMITFPS", "SKIPFPS", "SHOWFPS", "HIDEMULTIMONITOR",
|
||||
"TIMESTRETCH", "HOOKOPENGL", "WALLPAPERMODE", "SHOWHWCURSOR",
|
||||
"HOOKGDI", "SHOWFPSOVERLAY", "FAKEVERSION", "FULLRECTBLT",
|
||||
"NOPALETTEUPDATE", "", "", "",
|
||||
"NOPALETTEUPDATE", "SUPPRESSIME", "NOBANNER", "WINDOWIZE",
|
||||
"", "", "", "",
|
||||
};
|
||||
|
||||
@ -358,6 +360,8 @@ void AdjustWindowPos(HWND hwnd, DWORD width, DWORD height)
|
||||
if(!(*pSetWindowPos)(hwnd, 0, wp.x, wp.y, wp.cx, wp.cy, 0)){
|
||||
OutTraceE("AdjustWindowPos: ERROR err=%d at %d\n", GetLastError(), __LINE__);
|
||||
}
|
||||
|
||||
dxw.ShowBanner(hwnd);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -562,6 +566,31 @@ LRESULT CALLBACK extWindowProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lp
|
||||
#endif
|
||||
|
||||
switch(message){
|
||||
case WM_NCCREATE:
|
||||
if(dxw.dwFlags2 & SUPPRESSIME){
|
||||
OutTraceD("WindowProc: SUPPRESS IME\n");
|
||||
typedef BOOL (WINAPI *ImmDisableIME_Type)(DWORD);
|
||||
ImmDisableIME_Type pImmDisableIME;
|
||||
HMODULE ImmLib;
|
||||
ImmLib=(*pLoadLibraryA)("Imm32");
|
||||
pImmDisableIME=(ImmDisableIME_Type)(*pGetProcAddress)(ImmLib,"ImmDisableIME");
|
||||
(*pImmDisableIME)(-1);
|
||||
}
|
||||
break;
|
||||
case WM_IME_SETCONTEXT:
|
||||
case WM_IME_NOTIFY:
|
||||
case WM_IME_CONTROL:
|
||||
case WM_IME_COMPOSITIONFULL:
|
||||
case WM_IME_SELECT:
|
||||
case WM_IME_CHAR:
|
||||
case WM_IME_REQUEST:
|
||||
case WM_IME_KEYDOWN:
|
||||
case WM_IME_KEYUP:
|
||||
if(dxw.dwFlags2 & SUPPRESSIME){
|
||||
OutTraceD("WindowProc: SUPPRESS WinMsg=[0x%x]%s(%x,%x)\n", message, ExplainWinMessage(message), wparam, lparam);
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
case WM_NCHITTEST:
|
||||
if((dxw.dwFlags2 & FIXNCHITTEST) && (dxw.dwFlags1 & MODIFYMOUSE)){ // mouse processing
|
||||
POINT cursor;
|
||||
@ -1133,6 +1162,7 @@ void HookExceptionHandler(void)
|
||||
void HookModule(char *module, int dxversion)
|
||||
{
|
||||
HookSysLibs(module);
|
||||
//if(dxw.dwFlags2 & SUPPRESSIME) HookImeLib(module);
|
||||
if(dxw.dwFlags2 & HOOKGDI) HookGDILib(module);
|
||||
if(dxw.dwFlags1 & HOOKDI) HookDirectInput(module, dxversion);
|
||||
HookDirectDraw(module, dxversion);
|
||||
@ -1141,6 +1171,59 @@ void HookModule(char *module, int dxversion)
|
||||
if(dxw.dwFlags2 & HOOKOPENGL) HookOpenGLLibs(module, dxw.CustomOpenGLLib);
|
||||
}
|
||||
|
||||
void ForceHookOpenGL() // to do .....
|
||||
{
|
||||
HMODULE hGlLib;
|
||||
//hGlLib=(*pLoadLibraryA)("OpenGL32.dll");
|
||||
hGlLib=LoadLibrary("OpenGL32.dll");
|
||||
OutTrace("hGlLib=%x\n",hGlLib);
|
||||
pglViewport=(glViewport_Type)GetProcAddress(hGlLib, "glViewport");
|
||||
if(pglViewport)
|
||||
HookAPI(NULL, "OpenGL32.dll", pglViewport, "glViewport", extglViewport);
|
||||
//SetHook(void *target, void *hookproc, void **hookedproc, char *hookname);
|
||||
pglScissor=(glScissor_Type)GetProcAddress(hGlLib, "glScissor");
|
||||
if(pglScissor) HookAPI(NULL, "OpenGL32.dll", pglScissor, "glScissor", extglScissor);
|
||||
pglGetIntegerv=(glGetIntegerv_Type)GetProcAddress(hGlLib, "glGetIntegerv");
|
||||
if(pglGetIntegerv) HookAPI(NULL, "OpenGL32.dll", pglGetIntegerv, "glGetIntegerv", extglGetIntegerv);
|
||||
pglDrawBuffer=(glDrawBuffer_Type)GetProcAddress(hGlLib, "glDrawBuffer");
|
||||
if(pglDrawBuffer) HookAPI(NULL, "OpenGL32.dll", pglDrawBuffer, "glDrawBuffer", extglDrawBuffer);
|
||||
}
|
||||
|
||||
void DisableIME()
|
||||
{
|
||||
BOOL res;
|
||||
HMODULE hm;
|
||||
hm=GetModuleHandle("User32");
|
||||
// here, GetProcAddress may be not hooked yet!
|
||||
if(!pGetProcAddress) pGetProcAddress=GetProcAddress;
|
||||
#ifdef USEWINNLSENABLE
|
||||
typedef BOOL (WINAPI *WINNLSEnableIME_Type)(HWND, BOOL);
|
||||
WINNLSEnableIME_Type pWINNLSEnableIME;
|
||||
pWINNLSEnableIME=(WINNLSEnableIME_Type)(*pGetProcAddress)(hm, "WINNLSEnableIME");
|
||||
OutTrace("DisableIME: GetProcAddress(WINNLSEnableIME)=%x\n", pWINNLSEnableIME);
|
||||
if(!pWINNLSEnableIME) return;
|
||||
SetLastError(0);
|
||||
res=(*pWINNLSEnableIME)(NULL, FALSE);
|
||||
OutTrace("IME previous state=%x error=%d\n", res, GetLastError());
|
||||
#else
|
||||
typedef LRESULT (WINAPI *SendIMEMessage_Type)(HWND, LPARAM);
|
||||
SendIMEMessage_Type pSendIMEMessage;
|
||||
pSendIMEMessage=(SendIMEMessage_Type)(*pGetProcAddress)(hm, "SendIMEMessage");
|
||||
OutTrace("DisableIME: GetProcAddress(SendIMEMessage)=%x\n", pSendIMEMessage);
|
||||
if(!pSendIMEMessage) return;
|
||||
HGLOBAL imeh;
|
||||
IMESTRUCT *imes;
|
||||
imeh=GlobalAlloc(GMEM_MOVEABLE|GMEM_SHARE, sizeof(IMESTRUCT));
|
||||
imes=(IMESTRUCT *)imeh;
|
||||
//imes->fnc=IME_SETLEVEL;
|
||||
imes->fnc=7;
|
||||
imes->wParam=1;
|
||||
SetLastError(0);
|
||||
res=(*pSendIMEMessage)(dxw.GethWnd(), (LPARAM)imeh);
|
||||
OutTrace("res=%x error=%d\n", res, GetLastError());
|
||||
#endif
|
||||
}
|
||||
|
||||
int HookInit(TARGETMAP *target, HWND hwnd)
|
||||
{
|
||||
BOOL res;
|
||||
@ -1171,14 +1254,16 @@ int HookInit(TARGETMAP *target, HWND hwnd)
|
||||
}
|
||||
|
||||
if(dxw.dwFlags1 & HANDLEEXCEPTIONS) HookExceptionHandler();
|
||||
|
||||
if (dxw.dwTFlags & OUTIMPORTTABLE) DumpImportTable(NULL);
|
||||
//if(dxw.dwFlags2 & SUPPRESSIME) DisableIME();
|
||||
|
||||
if (dxw.dwTFlags & DXPROXED){
|
||||
HookDDProxy(NULL, dxw.dwTargetDDVersion);
|
||||
return 0;
|
||||
}
|
||||
|
||||
//ForceHookOpenGL();
|
||||
|
||||
// make InitPosition used for both DInput and DDraw
|
||||
InitPosition(target->initx, target->inity,
|
||||
target->minx, target->miny, target->maxx, target->maxy);
|
||||
@ -1189,6 +1274,8 @@ int HookInit(TARGETMAP *target, HWND hwnd)
|
||||
HookModule(NULL, dxw.dwTargetDDVersion);
|
||||
sModule=strtok(dxw.gsModules," ");
|
||||
while (sModule) {
|
||||
HMODULE hm;
|
||||
hm=(*pLoadLibraryA)(sModule);
|
||||
OutTraceD("HookInit: hooking additional module=%s\n", sModule);
|
||||
if (dxw.dwTFlags & OUTIMPORTTABLE) DumpImportTable(sModule);
|
||||
HookModule(sModule, dxw.dwTargetDDVersion);
|
||||
@ -1207,6 +1294,7 @@ int HookInit(TARGETMAP *target, HWND hwnd)
|
||||
if(!res) OutTraceE("MoveWindow ERROR: dxw.hParentWnd=%x err=%d at %d\n", dxw.hParentWnd, GetLastError(), __LINE__);
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
13
dll/dxhook.h
13
dll/dxhook.h
@ -1,8 +1,9 @@
|
||||
int HookDirectDraw(char *, int);
|
||||
int HookDDProxy(char *, int);
|
||||
int HookDirect3D(char *, int);
|
||||
int HookOle32(char *, int);
|
||||
int HookDirectInput(char *, int);
|
||||
void InitPosition(int, int, int, int, int, int);
|
||||
extern int HookDirectDraw(char *, int);
|
||||
extern int HookDDProxy(char *, int);
|
||||
extern int HookDirect3D(char *, int);
|
||||
extern int HookOle32(char *, int);
|
||||
extern int HookDirectInput(char *, int);
|
||||
extern void HookImeLib(char *);
|
||||
extern void InitPosition(int, int, int, int, int, int);
|
||||
//void InitWindowPos(int, int, int, int);
|
||||
extern LPCSTR ProcToString(LPCSTR proc);
|
||||
|
BIN
dll/dxwbanner.bmp
Normal file
BIN
dll/dxwbanner.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
@ -2,6 +2,7 @@
|
||||
#include "dxwnd.h"
|
||||
#include "dxwcore.hpp"
|
||||
#include "syslibs.h"
|
||||
#include "resource.h"
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
// Constructor, destructor, initialization....
|
||||
@ -611,4 +612,44 @@ char *dxwCore::GetTSCaption(int shift)
|
||||
char *dxwCore::GetTSCaption(void)
|
||||
{
|
||||
return GetTSCaption(TimeShift);
|
||||
}
|
||||
|
||||
void dxwCore::ShowBanner(HWND hwnd)
|
||||
{
|
||||
static BOOL JustOnce=FALSE;
|
||||
extern HMODULE hInst;
|
||||
BITMAP bm;
|
||||
HDC hClientDC;
|
||||
HBITMAP g_hbmBall;
|
||||
RECT client;
|
||||
|
||||
if(JustOnce || (dwFlags2 & NOBANNER)) return;
|
||||
JustOnce=TRUE;
|
||||
|
||||
hClientDC=GetDC(hwnd);
|
||||
(*pGetClientRect)(hwnd, &client);
|
||||
//BitBlt(hClientDC, 0, 0, wp.cx, wp.cy, NULL, 0, 0, BLACKNESS);
|
||||
BitBlt(hClientDC, 0, 0, client.right, client.bottom, NULL, 0, 0, BLACKNESS);
|
||||
g_hbmBall = LoadBitmap(hInst, MAKEINTRESOURCE(IDB_BANNER));
|
||||
HDC hdcMem = CreateCompatibleDC(hClientDC);
|
||||
HBITMAP hbmOld = (HBITMAP)SelectObject(hdcMem, g_hbmBall);
|
||||
GetObject(g_hbmBall, sizeof(bm), &bm);
|
||||
for (int i=1; i<=16; i++){
|
||||
int w, h;
|
||||
w=(bm.bmWidth*i)/8;
|
||||
h=(bm.bmHeight*i)/8;
|
||||
StretchBlt(hClientDC, (client.right-w)/2, (client.bottom-h)/2, w, h, hdcMem, 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY);
|
||||
Sleep(40);
|
||||
}
|
||||
for (int i=16; i>=8; i--){
|
||||
int w, h;
|
||||
w=(bm.bmWidth*i)/8;
|
||||
h=(bm.bmHeight*i)/8;
|
||||
BitBlt(hClientDC, 0, 0, client.right, client.bottom, NULL, 0, 0, BLACKNESS);
|
||||
StretchBlt(hClientDC, (client.right-w)/2, (client.bottom-h)/2, w, h, hdcMem, 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY);
|
||||
Sleep(40);
|
||||
}
|
||||
SelectObject(hdcMem, hbmOld);
|
||||
DeleteDC(hdcMem);
|
||||
Sleep(200);
|
||||
}
|
@ -50,6 +50,7 @@ public: // methods
|
||||
char *GetTSCaption(int);
|
||||
char *GetTSCaption(void);
|
||||
void DoSlow(int);
|
||||
void ShowBanner(HWND);
|
||||
|
||||
public: // simple data variables
|
||||
DDPIXELFORMAT ActualPixelFormat;
|
||||
|
BIN
dll/dxwnd.aps
Normal file
BIN
dll/dxwnd.aps
Normal file
Binary file not shown.
@ -23,7 +23,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#include <stdio.h>
|
||||
#include "dxwnd.h"
|
||||
|
||||
#define VERSION "2.02.11"
|
||||
#define VERSION "2.02.12"
|
||||
|
||||
LRESULT CALLBACK HookProc(int ncode, WPARAM wparam, LPARAM lparam);
|
||||
|
||||
|
70
dll/dxwnd.rc
Normal file
70
dll/dxwnd.rc
Normal file
@ -0,0 +1,70 @@
|
||||
// Microsoft Visual C++ generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Bitmap
|
||||
//
|
||||
|
||||
IDB_BANNER BITMAP "dxwbanner.bmp"
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
@ -1,398 +0,0 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
Name="dxwnd"
|
||||
ProjectGUID="{579E7FE7-2745-4100-A802-23511711FCDE}"
|
||||
RootNamespace="dxwnd"
|
||||
>
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"
|
||||
/>
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory=".\Debug"
|
||||
IntermediateDirectory=".\Debug"
|
||||
ConfigurationType="2"
|
||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||
CharacterSet="2"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
PreprocessorDefinitions="_DEBUG"
|
||||
MkTypLibCompatible="true"
|
||||
SuppressStartupBanner="true"
|
||||
TargetEnvironment="1"
|
||||
TypeLibraryName=".\Debug/dxwnd.tlb"
|
||||
HeaderFileName=""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
AdditionalOptions="/IInclude"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../Include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DXWND_EXPORTS"
|
||||
MinimalRebuild="true"
|
||||
ExceptionHandling="2"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
PrecompiledHeaderFile=".\Debug/dxwnd.pch"
|
||||
AssemblerListingLocation=".\Debug/"
|
||||
ObjectFile=".\Debug/"
|
||||
ProgramDataBaseFileName=".\Debug/"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="true"
|
||||
DebugInformationFormat="4"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG"
|
||||
Culture="1041"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="shlwapi.lib odbc32.lib odbccp32.lib"
|
||||
OutputFile="../Debug/dxwnd.dll"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
ModuleDefinitionFile=".\dxwnd.def"
|
||||
GenerateDebugInformation="true"
|
||||
ProgramDatabaseFile=".\Debug/dxwnd.pdb"
|
||||
ImportLibrary=".\Debug/dxwnd.lib"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
SuppressStartupBanner="true"
|
||||
OutputFile=".\Debug/dxwnd.bsc"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory=".\Release"
|
||||
IntermediateDirectory=".\Release"
|
||||
ConfigurationType="2"
|
||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||
CharacterSet="2"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
PreprocessorDefinitions="NDEBUG"
|
||||
MkTypLibCompatible="true"
|
||||
SuppressStartupBanner="true"
|
||||
TargetEnvironment="1"
|
||||
TypeLibraryName=".\Release/dxwnd.tlb"
|
||||
HeaderFileName=""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
InlineFunctionExpansion="1"
|
||||
AdditionalIncludeDirectories="../Include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DXWND_EXPORTS"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="2"
|
||||
RuntimeLibrary="0"
|
||||
EnableFunctionLevelLinking="true"
|
||||
PrecompiledHeaderFile=".\Release/dxwnd.pch"
|
||||
AssemblerListingLocation=".\Release/"
|
||||
ObjectFile=".\Release/"
|
||||
ProgramDataBaseFileName=".\Release/"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="true"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG"
|
||||
Culture="1041"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
OutputFile="../Release/dxwnd.dll"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
ModuleDefinitionFile=".\dxwnd.def"
|
||||
ProgramDatabaseFile=".\Release/dxwnd.pdb"
|
||||
ImportLibrary=".\Release/dxwnd.lib"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
SuppressStartupBanner="true"
|
||||
OutputFile=".\Release/dxwnd.bsc"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\dxemublt.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\dxhelper.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxhook.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\dxwcore.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwnd.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwnd.def"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\glhook.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="hd3d.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\hddproxy.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="hddraw.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="hdinput.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\syslibs.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\wndproc.cpp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\dxhelper.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxhook.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\dxwcore.hpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Include\dxwnd.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\glhook.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\hddproxy.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\hddraw.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\syslibs.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Resource Files"
|
||||
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
Binary file not shown.
@ -272,6 +272,10 @@
|
||||
RelativePath="dxwnd.def"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\dxwnd.rc"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\glhook.cpp"
|
||||
>
|
||||
@ -340,6 +344,10 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\imelib.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\syslibs.cpp"
|
||||
>
|
||||
@ -381,6 +389,10 @@
|
||||
RelativePath=".\hddraw.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\resource.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\syslibs.h"
|
||||
>
|
||||
@ -390,6 +402,10 @@
|
||||
Name="Resource Files"
|
||||
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\dxwbanner.bmp"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
|
@ -525,6 +525,8 @@ HRESULT STDAPICALLTYPE extCoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter,
|
||||
res=extDirectDrawCreateEx(NULL, (LPDIRECTDRAW *)&ppv, IID_IDirectDraw7, 0);
|
||||
if(res)OutTraceD("DirectDrawCreateEx: res=%x(%s)\n", res, ExplainDDError(res));
|
||||
break;
|
||||
case 0xe436ebb3:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -2844,6 +2846,7 @@ HRESULT WINAPI extLock(LPDIRECTDRAWSURFACE lpdds, LPRECT lprect, LPDIRECTDRAWSUR
|
||||
HRESULT WINAPI extUnlock(int dxversion, Unlock4_Type pUnlock, LPDIRECTDRAWSURFACE lpdds, LPRECT lprect)
|
||||
{
|
||||
HRESULT res;
|
||||
//RECT screen, rect;
|
||||
BOOL IsPrim;
|
||||
|
||||
IsPrim=dxw.IsAPrimarySurface(lpdds);
|
||||
@ -3325,7 +3328,6 @@ HRESULT WINAPI extReleaseS(LPDIRECTDRAWSURFACE lpdds)
|
||||
IsClosed=1;
|
||||
};
|
||||
|
||||
// avoid crashing....
|
||||
res = IsClosed ? 0 :(*pReleaseS)(lpdds);
|
||||
|
||||
OutTraceD("Release(S): lpdds=%x%s refcount=%d\n", lpdds, IsPrim?"(PRIM)":"", res);
|
||||
|
81
dll/imelib.cpp
Normal file
81
dll/imelib.cpp
Normal file
@ -0,0 +1,81 @@
|
||||
#define _WIN32_WINNT 0x0600
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#include <windows.h>
|
||||
#include <stdio.h>
|
||||
#include <malloc.h>
|
||||
#include "dxwnd.h"
|
||||
#include "dxwcore.hpp"
|
||||
#include "dxhook.h"
|
||||
#include "syslibs.h"
|
||||
#include "dxhelper.h"
|
||||
|
||||
BOOL WINAPI extImmNotifyIME(HIMC hIMC, DWORD dwAction, DWORD dwIndex, DWORD dwValue)
|
||||
{
|
||||
OutTraceD("ImmNotifyIME: hIMC=%x dwAction=%x dwIndex=%x dwValue=%x\n", hIMC, dwAction, dwIndex, dwValue);
|
||||
return(*pImmNotifyIME)(hIMC, dwAction, dwIndex, dwValue);
|
||||
}
|
||||
|
||||
HIMC WINAPI extImmCreateContext(void)
|
||||
{
|
||||
OutTraceD("ImmCreateContext\n");
|
||||
return(*pImmCreateContext)();
|
||||
}
|
||||
|
||||
BOOL WINAPI extImmDestroyContext(HIMC hIMC)
|
||||
{
|
||||
OutTraceD("ImmDestroyContext: hIMC=%x\n", hIMC);
|
||||
return(*pImmDestroyContext)(hIMC);
|
||||
}
|
||||
|
||||
BOOL WINAPI extImmSetOpenStatus(HIMC hIMC, BOOL fOpen)
|
||||
{
|
||||
OutTraceD("ImmSetOpenStatus: hIMC=%x fOpen=%x\n", hIMC, fOpen);
|
||||
return(*pImmSetOpenStatus)(hIMC, fOpen);
|
||||
}
|
||||
|
||||
HIMC WINAPI extImmAssociateContext(HWND hwnd, HIMC hIMC)
|
||||
{
|
||||
OutTraceD("ImmAssociateContext: hwnd=%x hIMC=%x\n", hwnd, hIMC);
|
||||
//return NULL;
|
||||
return(*pImmAssociateContext)(hwnd, hIMC);
|
||||
}
|
||||
|
||||
BOOL WINAPI extImmSetCompositionWindow(HIMC hIMC, LPCOMPOSITIONFORM lpCompForm)
|
||||
{
|
||||
OutTraceD("ImmSetCompositionWindow: hIMC=%x lpCompForm=%x\n", hIMC, lpCompForm);
|
||||
return(*pImmSetCompositionWindow)(hIMC, lpCompForm);
|
||||
}
|
||||
|
||||
BOOL WINAPI extImmSetCompositionString(HIMC hIMC, DWORD dwIndex, LPVOID lpComp, DWORD dwCompLen, LPVOID lpRead, DWORD dwReadLen)
|
||||
{
|
||||
OutTraceD("ImmSetCompositionString: hIMC=%x dwIndex=%x lpComp=%x dwCompLen=%x dwRead=%x dwReadLen=%x\n", hIMC, dwIndex, lpComp, dwCompLen, lpRead, dwReadLen);
|
||||
return (*pImmSetCompositionString)(hIMC, dwIndex, lpComp, dwCompLen, lpRead, dwReadLen);
|
||||
}
|
||||
|
||||
BOOL WINAPI extImmGetOpenStatus(HIMC hIMC)
|
||||
{
|
||||
OutTraceD("ImmGetOpenStatus: hIMC=%x\n", hIMC);
|
||||
return(*pImmGetOpenStatus)(hIMC);
|
||||
}
|
||||
|
||||
void HookImeLib(char *module)
|
||||
{
|
||||
void *tmp;
|
||||
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmNotifyIME", extImmNotifyIME);
|
||||
if(tmp) pImmNotifyIME = (ImmNotifyIME_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmCreateContext", extImmCreateContext);
|
||||
if(tmp) pImmCreateContext = (ImmCreateContext_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmDestroyContext", extImmDestroyContext);
|
||||
if(tmp) pImmDestroyContext = (ImmDestroyContext_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmSetOpenStatus", extImmSetOpenStatus);
|
||||
if(tmp) pImmSetOpenStatus = (ImmSetOpenStatus_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmAssociateContext", extImmAssociateContext);
|
||||
if(tmp) pImmAssociateContext = (ImmAssociateContext_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmSetCompositionWindow", extImmSetCompositionWindow);
|
||||
if(tmp) pImmSetCompositionWindow = (ImmSetCompositionWindow_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmSetCompositionStringA", extImmSetCompositionString);
|
||||
if(tmp) pImmSetCompositionString = (ImmSetCompositionString_Type)tmp;
|
||||
tmp = HookAPI(module, "IMM32.dll", NULL, "ImmGetOpenStatus", extImmGetOpenStatus);
|
||||
if(tmp) pImmGetOpenStatus = (ImmGetOpenStatus_Type)tmp;
|
||||
}
|
17
dll/resource.h
Normal file
17
dll/resource.h
Normal file
@ -0,0 +1,17 @@
|
||||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Visual C++ generated include file.
|
||||
// Used by dxwnd.rc
|
||||
//
|
||||
#define IDB_BITMAP1 101
|
||||
#define IDB_BANNER 101
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 102
|
||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
||||
#define _APS_NEXT_CONTROL_VALUE 1001
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
@ -1109,7 +1109,7 @@ int WINAPI extGetDeviceCaps(HDC hdc, int nindex)
|
||||
// are NOT implemented and may cause later troubles!
|
||||
case RASTERCAPS:
|
||||
if(dxw.dwFlags2 & INIT8BPP) {
|
||||
res = RC_PALETTE;
|
||||
res |= RC_PALETTE; // v2.02.12
|
||||
OutTraceD("GetDeviceCaps: fix RASTERCAPS setting RC_PALETTE cap=%x\n",res);
|
||||
}
|
||||
break;
|
||||
@ -1556,8 +1556,12 @@ HMODULE WINAPI extLoadLibraryA(LPCTSTR lpFileName)
|
||||
idx=SYSLIBIDX_OPENGL;
|
||||
SysLibs[idx]=ret;
|
||||
}
|
||||
|
||||
HookSysLibs(NULL);
|
||||
//if(idx==SYSLIBIDX_MAX) {
|
||||
// OutTraceD("LoadLibraryA: hook %s\n", lpName);
|
||||
// HookModule((char *)lpName, 0);
|
||||
//}
|
||||
//HookSysLibs(NULL);
|
||||
HookModule(NULL, 0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -1585,8 +1589,12 @@ HMODULE WINAPI extLoadLibraryW(LPCWSTR lpFileName)
|
||||
idx=SYSLIBIDX_OPENGL;
|
||||
SysLibs[idx]=ret;
|
||||
}
|
||||
|
||||
HookSysLibs(NULL);
|
||||
//if(idx==SYSLIBIDX_MAX) {
|
||||
// OutTraceD("LoadLibraryW: hook %s\n", lpName);
|
||||
// HookModule((char *)lpName, 0);
|
||||
//}
|
||||
//HookSysLibs(NULL);
|
||||
HookModule(NULL, 0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -1614,8 +1622,12 @@ HMODULE WINAPI extLoadLibraryExA(LPCTSTR lpFileName, HANDLE hFile, DWORD dwFlags
|
||||
idx=SYSLIBIDX_OPENGL;
|
||||
SysLibs[idx]=ret;
|
||||
}
|
||||
|
||||
HookSysLibs(NULL);
|
||||
//if(idx==SYSLIBIDX_MAX) {
|
||||
// OutTraceD("LoadLibraryExA: hook %s\n", lpName);
|
||||
// HookModule((char *)lpName, 0);
|
||||
//}
|
||||
//HookSysLibs(NULL);
|
||||
HookModule(NULL, 0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -1643,8 +1655,12 @@ HMODULE WINAPI extLoadLibraryExW(LPCWSTR lpFileName, HANDLE hFile, DWORD dwFlags
|
||||
idx=SYSLIBIDX_OPENGL;
|
||||
SysLibs[idx]=ret;
|
||||
}
|
||||
|
||||
HookSysLibs(NULL);
|
||||
//if(idx==SYSLIBIDX_MAX) {
|
||||
// OutTraceD("LoadLibraryExW: hook %s\n", lpName);
|
||||
// HookModule((char *)lpName, 0);
|
||||
//}
|
||||
//HookSysLibs(NULL);
|
||||
HookModule(NULL, 0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -2782,4 +2798,5 @@ DWORD WINAPI extGetVersion(void)
|
||||
}
|
||||
|
||||
return dwVersion;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -13,6 +13,15 @@ user32.dll.dll
|
||||
type definitions
|
||||
====================================================================*/
|
||||
|
||||
typedef BOOL (WINAPI *ImmNotifyIME_Type)(HIMC, DWORD, DWORD, DWORD);
|
||||
typedef HIMC (WINAPI *ImmCreateContext_Type)(void);
|
||||
typedef BOOL (WINAPI *ImmDestroyContext_Type)(HIMC);
|
||||
typedef BOOL (WINAPI *ImmSetOpenStatus_Type)(HIMC, BOOL);
|
||||
typedef HIMC (WINAPI *ImmAssociateContext_Type)(HWND, HIMC);
|
||||
typedef BOOL (WINAPI *ImmSetCompositionWindow_Type)(HIMC, LPCOMPOSITIONFORM);
|
||||
typedef BOOL (WINAPI *ImmSetCompositionString_Type)(HIMC, DWORD, LPVOID, DWORD, LPVOID, DWORD);
|
||||
typedef BOOL (WINAPI *ImmGetOpenStatus_Type)(HIMC);
|
||||
|
||||
// GDI32.dll:
|
||||
typedef BOOL (WINAPI *BitBlt_Type)(HDC, int, int, int, int, HDC, int, int, DWORD);
|
||||
typedef HDC (WINAPI *CreateCompatibleDC_Type)(HDC);
|
||||
@ -117,6 +126,15 @@ hooked APIs real pointers
|
||||
#define DXWINITIALIZED
|
||||
#endif
|
||||
|
||||
DXWEXTERN ImmNotifyIME_Type pImmNotifyIME DXWINITIALIZED;
|
||||
DXWEXTERN ImmCreateContext_Type pImmCreateContext DXWINITIALIZED;
|
||||
DXWEXTERN ImmDestroyContext_Type pImmDestroyContext DXWINITIALIZED;
|
||||
DXWEXTERN ImmSetOpenStatus_Type pImmSetOpenStatus DXWINITIALIZED;
|
||||
DXWEXTERN ImmAssociateContext_Type pImmAssociateContext DXWINITIALIZED;
|
||||
DXWEXTERN ImmSetCompositionWindow_Type pImmSetCompositionWindow DXWINITIALIZED;
|
||||
DXWEXTERN ImmSetCompositionString_Type pImmSetCompositionString DXWINITIALIZED;
|
||||
DXWEXTERN ImmGetOpenStatus_Type pImmGetOpenStatus DXWINITIALIZED;
|
||||
|
||||
// GDI32.dll:
|
||||
DXWEXTERN BitBlt_Type pGDIBitBlt DXWINITIALIZED;
|
||||
DXWEXTERN CreateCompatibleDC_Type pGDICreateCompatibleDC DXWINITIALIZED;
|
||||
@ -209,6 +227,15 @@ DXWEXTERN timeGetTime_Type ptimeGetTime DXWINITIALIZED;
|
||||
hook procedures (possibly more tnan one per each API...)
|
||||
====================================================================*/
|
||||
|
||||
extern BOOL WINAPI extImmNotifyIME(HIMC, DWORD, DWORD, DWORD);
|
||||
extern HIMC WINAPI extImmCreateContext(void);
|
||||
extern BOOL WINAPI extImmDestroyContext(HIMC);
|
||||
extern BOOL WINAPI extImmSetOpenStatus(HIMC, BOOL);
|
||||
extern HIMC WINAPI extImmAssociateContext(HWND, HIMC);
|
||||
extern BOOL WINAPI extImmSetCompositionWindow(HIMC, LPCOMPOSITIONFORM);
|
||||
extern BOOL WINAPI extImmSetCompositionString(HIMC, DWORD, LPVOID, DWORD, LPVOID, DWORD);
|
||||
extern BOOL WINAPI extImmGetOpenStatus(HIMC);
|
||||
|
||||
// GDI32.dll:
|
||||
extern BOOL WINAPI extGDIBitBlt(HDC, int, int, int, int, HDC, int, int, DWORD);
|
||||
extern HDC WINAPI extGDICreateCompatibleDC(HDC);
|
||||
|
@ -25,6 +25,18 @@
|
||||
#define IDI_RUN6 148
|
||||
#define IDD_STATUS 149
|
||||
#define IDD_TIMESLIDER 150
|
||||
#define IDD_TAB_PROGRAM 152
|
||||
#define IDD_TAB_LOG 153
|
||||
#define IDD_TAB_DIRECTX 154
|
||||
#define IDD_TAB_MOUSE 155
|
||||
#define IDD_TAB_TIMING 156
|
||||
#define IDD_TAB_WINDOW 157
|
||||
#define IDD_TAB_EMPTY 158
|
||||
#define IDD_TAB_EMPTY1 159
|
||||
#define IDD_TAB_OPENGL 159
|
||||
#define IDD_TAB_COMPAT 160
|
||||
#define IDD_TAB_EMPTY2 161
|
||||
#define IDD_TAB_GDI 161
|
||||
#define IDC_AUTO 300
|
||||
#define IDC_DIRECTX1 301
|
||||
#define IDC_DIRECTX7 302
|
||||
@ -107,6 +119,8 @@
|
||||
#define IDC_KEEPASPECTRATIO 1070
|
||||
#define IDC_LIMITRESOURCES 1071
|
||||
#define IDC_FORCEWINRESIZE 1072
|
||||
#define IDC_LIMITRESOURCES2 1072
|
||||
#define IDC_SUPPRESSIME 1072
|
||||
#define IDC_DISABLEGAMMARAMP 1073
|
||||
#define IDC_FIXNCHITTEST 1074
|
||||
#define IDC_LIMITFPS 1075
|
||||
@ -128,6 +142,9 @@
|
||||
#define IDC_LIST2 1088
|
||||
#define IDC_LISTTS 1088
|
||||
#define IDC_LISTFAKE 1089
|
||||
#define IDC_TABPANEL 1090
|
||||
#define IDC_WINDOWIZE 1091
|
||||
#define IDC_NOBANNER 1092
|
||||
#define ID_MODIFY 32771
|
||||
#define ID_DELETE 32772
|
||||
#define ID_ADD 32773
|
||||
@ -167,9 +184,9 @@
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_3D_CONTROLS 1
|
||||
#define _APS_NEXT_RESOURCE_VALUE 152
|
||||
#define _APS_NEXT_RESOURCE_VALUE 153
|
||||
#define _APS_NEXT_COMMAND_VALUE 32816
|
||||
#define _APS_NEXT_CONTROL_VALUE 1089
|
||||
#define _APS_NEXT_CONTROL_VALUE 1091
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
|
68
host/TabCompat.cpp
Normal file
68
host/TabCompat.cpp
Normal file
@ -0,0 +1,68 @@
|
||||
// TabDirectX.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabCompat.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabCompat dialog
|
||||
|
||||
CTabCompat::CTabCompat(CWnd* pParent /*=NULL*/)
|
||||
// : CTargetDlg(pParent)
|
||||
: CDialog(CTabCompat::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabCompat)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabCompat::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_FAKEVERSION, cTarget->m_FakeVersion);
|
||||
DDX_LBIndex(pDX, IDC_LISTFAKE, cTarget->m_FakeVersionId);
|
||||
DDX_Check(pDX, IDC_HANDLEEXCEPTIONS, cTarget->m_HandleExceptions);
|
||||
DDX_Check(pDX, IDC_LIMITRESOURCES, cTarget->m_LimitResources);
|
||||
DDX_Check(pDX, IDC_SUPPRESSIME, cTarget->m_SuppressIME);
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabCompat, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabCompat)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabCompat message handlers
|
||||
|
||||
static struct {char bMajor; char bMinor; char *sName;} WinVersions[6]=
|
||||
{
|
||||
{5, 0, "Windows 2000"},
|
||||
{5, 1, "Windows XP"},
|
||||
{5, 2, "Windows Server 2003"},
|
||||
{6, 0, "Windows Vista"},
|
||||
{6, 1, "Windows 7"},
|
||||
{6, 2, "Windows 8"}
|
||||
};
|
||||
|
||||
BOOL CTabCompat::OnInitDialog()
|
||||
{
|
||||
AfxEnableControlContainer();
|
||||
CListBox *List;
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
int i;
|
||||
List=(CListBox *)this->GetDlgItem(IDC_LISTFAKE);
|
||||
List->ResetContent();
|
||||
for(i=0; i<6; i++) List->AddString(WinVersions[i].sName);
|
||||
List->SetCurSel(cTarget->m_FakeVersion);
|
||||
CDialog::OnInitDialog();
|
||||
return TRUE;
|
||||
}
|
50
host/TabCompat.h
Normal file
50
host/TabCompat.h
Normal file
@ -0,0 +1,50 @@
|
||||
#if !defined(AFX_TABCOMPAT_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
||||
#define AFX_TABCOMPAT_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabDirectX.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
#include "TargetDlg.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabDirectX dialog
|
||||
|
||||
//class CTabCompat : public CTargetDlg
|
||||
class CTabCompat : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabCompat(CWnd* pParent = NULL); // standard constructor
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabDirectX)
|
||||
enum { IDD = IDD_TAB_COMPAT };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabDirectX)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
BOOL OnInitDialog();
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabDirectX)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_TABTHREE_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
63
host/TabDirectX.cpp
Normal file
63
host/TabDirectX.cpp
Normal file
@ -0,0 +1,63 @@
|
||||
// TabDirectX.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabDirectX.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabDirectX dialog
|
||||
|
||||
CTabDirectX::CTabDirectX(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabDirectX::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabDirectX)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabDirectX::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Radio(pDX, IDC_AUTO, cTarget->m_DXVersion);
|
||||
DDX_Check(pDX, IDC_EMULATESURFACE, cTarget->m_EmulateSurface);
|
||||
DDX_Check(pDX, IDC_NOEMULATESURFACE, cTarget->m_NoEmulateSurface);
|
||||
DDX_Check(pDX, IDC_EMULATEBUFFER, cTarget->m_EmulateBuffer);
|
||||
|
||||
DDX_Check(pDX, IDC_HANDLEDC, cTarget->m_HandleDC);
|
||||
DDX_Check(pDX, IDC_SUPPRESSCLIPPING, cTarget->m_SuppressClipping);
|
||||
DDX_Check(pDX, IDC_BLITFROMBACKBUFFER, cTarget->m_BlitFromBackBuffer);
|
||||
DDX_Check(pDX, IDC_AUTOREFRESH, cTarget->m_AutoRefresh);
|
||||
DDX_Check(pDX, IDC_VIDEOTOSYSTEMMEM, cTarget->m_VideoToSystemMem);
|
||||
DDX_Check(pDX, IDC_USERGB565, cTarget->m_UseRGB565);
|
||||
DDX_Check(pDX, IDC_SUPPRESSDXERRORS, cTarget->m_SuppressDXErrors);
|
||||
DDX_Check(pDX, IDC_CLIENTREMAPPING, cTarget->m_ClientRemapping);
|
||||
DDX_Check(pDX, IDC_MAPGDITOPRIMARY, cTarget->m_MapGDIToPrimary);
|
||||
DDX_Check(pDX, IDC_BACKBUFATTACH, cTarget->m_BackBufAttach);
|
||||
DDX_Check(pDX, IDC_FULLRECTBLT, cTarget->m_FullRectBlt);
|
||||
DDX_Check(pDX, IDC_NOPALETTEUPDATE, cTarget->m_NoPaletteUpdate);
|
||||
// DirectInput
|
||||
DDX_Check(pDX, IDC_HOOKDI, cTarget->m_HookDI);
|
||||
DDX_Text(pDX, IDC_INITX, cTarget->m_InitX);
|
||||
DDX_Text(pDX, IDC_INITY, cTarget->m_InitY);
|
||||
DDX_Text(pDX, IDC_MAXX, cTarget->m_MaxX);
|
||||
DDX_Text(pDX, IDC_MAXY, cTarget->m_MaxY);
|
||||
DDX_Text(pDX, IDC_MINX, cTarget->m_MinX);
|
||||
DDX_Text(pDX, IDC_MINY, cTarget->m_MinY);
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabDirectX, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabDirectX)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabDirectX message handlers
|
47
host/TabDirectX.h
Normal file
47
host/TabDirectX.h
Normal file
@ -0,0 +1,47 @@
|
||||
#if !defined(AFX_TABDIRECTX_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
||||
#define AFX_TABDIRECTX_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabDirectX.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabDirectX dialog
|
||||
|
||||
class CTabDirectX : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabDirectX(CWnd* pParent = NULL); // standard constructor
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabDirectX)
|
||||
enum { IDD = IDD_TAB_DIRECTX };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabDirectX)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabDirectX)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif
|
41
host/TabGDI.cpp
Normal file
41
host/TabGDI.cpp
Normal file
@ -0,0 +1,41 @@
|
||||
// TabGDI.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabGDI.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabLogs dialog
|
||||
|
||||
CTabGDI::CTabGDI(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabGDI::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabGDI)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabGDI::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_DISABLEGAMMARAMP, cTarget->m_DisableGammaRamp);
|
||||
DDX_Check(pDX, IDC_FIXTEXTOUT, cTarget->m_FixTextOut);
|
||||
DDX_Check(pDX, IDC_HOOKGDI, cTarget->m_HookGDI);
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabGDI, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabLogs)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabLogs message handlers
|
47
host/TabGDI.h
Normal file
47
host/TabGDI.h
Normal file
@ -0,0 +1,47 @@
|
||||
#if !defined(AFX_TABGDI_H__7E062B52_3B6E_44C4_B58E_AAD73592C8E3__INCLUDED_)
|
||||
#define AFX_TABGDI_H__7E062B52_3B6E_44C4_B58E_AAD73592C8E3__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabLogs.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabLogs dialog
|
||||
|
||||
class CTabGDI : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabGDI(CWnd* pParent = NULL); // standard constructor
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabLogs)
|
||||
enum { IDD = IDD_TAB_GDI };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabLogs)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabLogs)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif
|
47
host/TabLogs.cpp
Normal file
47
host/TabLogs.cpp
Normal file
@ -0,0 +1,47 @@
|
||||
// TabLogs.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabLogs.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabLogs dialog
|
||||
|
||||
CTabLogs::CTabLogs(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabLogs::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabLogs)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabLogs::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_OUTTRACE, cTarget->m_OutTrace);
|
||||
DDX_Check(pDX, IDC_OUTDEBUG, cTarget->m_OutDebug);
|
||||
DDX_Check(pDX, IDC_CURSORTRACE, cTarget->m_CursorTrace);
|
||||
DDX_Check(pDX, IDC_LOGENABLED, cTarget->m_LogEnabled);
|
||||
DDX_Check(pDX, IDC_OUTWINMESSAGES, cTarget->m_OutWinMessages);
|
||||
DDX_Check(pDX, IDC_OUTDXTRACE, cTarget->m_OutDXTrace);
|
||||
DDX_Check(pDX, IDC_DXPROXED, cTarget->m_DXProxed);
|
||||
DDX_Check(pDX, IDC_ASSERT, cTarget->m_AssertDialog);
|
||||
DDX_Check(pDX, IDC_IMPORTTABLE, cTarget->m_ImportTable);
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabLogs, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabLogs)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabLogs message handlers
|
47
host/TabLogs.h
Normal file
47
host/TabLogs.h
Normal file
@ -0,0 +1,47 @@
|
||||
#if !defined(AFX_TABLOGS_H__7E062B52_3B6E_44C4_B58E_AAD73592C8E3__INCLUDED_)
|
||||
#define AFX_TABLOGS_H__7E062B52_3B6E_44C4_B58E_AAD73592C8E3__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabLogs.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabLogs dialog
|
||||
|
||||
class CTabLogs : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabLogs(CWnd* pParent = NULL); // standard constructor
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabLogs)
|
||||
enum { IDD = IDD_TAB_LOG };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabLogs)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabLogs)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif
|
49
host/TabMouse.cpp
Normal file
49
host/TabMouse.cpp
Normal file
@ -0,0 +1,49 @@
|
||||
// TabDirectX.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabMouse.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabMouse dialog
|
||||
|
||||
CTabMouse::CTabMouse(CWnd* pParent /*=NULL*/)
|
||||
// : CTargetDlg(pParent)
|
||||
: CDialog(CTabMouse::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabMouse)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabMouse::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_MODIFYMOUSE, cTarget->m_ModifyMouse);
|
||||
DDX_Check(pDX, IDC_HIDEHWCURSOR, cTarget->m_HideHwCursor);
|
||||
DDX_Check(pDX, IDC_SHOWHWCURSOR, cTarget->m_ShowHwCursor);
|
||||
DDX_Check(pDX, IDC_ENABLECLIPPING, cTarget->m_EnableClipping);
|
||||
DDX_Check(pDX, IDC_CLIPCURSOR, cTarget->m_CursorClipping);
|
||||
DDX_Check(pDX, IDC_KEEPCURSORWITHIN, cTarget->m_KeepCursorWithin);
|
||||
DDX_Check(pDX, IDC_KEEPCURSORFIXED, cTarget->m_KeepCursorFixed);
|
||||
DDX_Check(pDX, IDC_MESSAGEPROC, cTarget->m_MessageProc);
|
||||
DDX_Check(pDX, IDC_FIXNCHITTEST, cTarget->m_FixNCHITTEST);
|
||||
DDX_Check(pDX, IDC_SLOW, cTarget->m_SlowDown);
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabMouse, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabMouse)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabMouse message handlers
|
49
host/TabMouse.h
Normal file
49
host/TabMouse.h
Normal file
@ -0,0 +1,49 @@
|
||||
#if !defined(AFX_TABMOUSE_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
||||
#define AFX_TABMOUSE_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabDirectX.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
#include "TargetDlg.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabDirectX dialog
|
||||
|
||||
//class CTabMouse : public CTargetDlg
|
||||
class CTabMouse : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabMouse(CWnd* pParent = NULL); // standard constructor
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabDirectX)
|
||||
enum { IDD = IDD_TAB_MOUSE };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabDirectX)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabDirectX)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_TABTHREE_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
48
host/TabOpenGL.cpp
Normal file
48
host/TabOpenGL.cpp
Normal file
@ -0,0 +1,48 @@
|
||||
// TabOpenGL.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabOpenGL.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabOpenGL dialog
|
||||
|
||||
CTabOpenGL::CTabOpenGL(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabOpenGL::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabOpenGL)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabOpenGL::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_HOOKOPENGL, cTarget->m_HookOpenGL);
|
||||
DDX_Text(pDX, IDC_OPENGLLIB, cTarget->m_OpenGLLib);
|
||||
}
|
||||
|
||||
BOOL CTabOpenGL::OnInitDialog()
|
||||
{
|
||||
AfxEnableControlContainer();
|
||||
CDialog::OnInitDialog();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabOpenGL, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabOpenGL)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabOpenGL message handlers
|
48
host/TabOpenGL.h
Normal file
48
host/TabOpenGL.h
Normal file
@ -0,0 +1,48 @@
|
||||
#if !defined(AFX_TABOPENGL_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
||||
#define AFX_TABOPENGL_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabOpenGL.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabOpenGL dialog
|
||||
|
||||
class CTabOpenGL : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabOpenGL(CWnd* pParent = NULL); // standard constructor
|
||||
BOOL OnInitDialog();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabOpenGL)
|
||||
enum { IDD = IDD_TAB_OPENGL };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabOpenGL)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabOpenGL)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif
|
63
host/TabProgram.cpp
Normal file
63
host/TabProgram.cpp
Normal file
@ -0,0 +1,63 @@
|
||||
// TabProgram.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabProgram.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabProgram dialog
|
||||
|
||||
CTabProgram::CTabProgram(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabProgram::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabProgram)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
void CTabProgram::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Control(pDX, IDC_FILE, cTarget->m_File);
|
||||
DDX_Text(pDX, IDC_FILE, cTarget->m_FilePath);
|
||||
DDX_Text(pDX, IDC_MODULE, cTarget->m_Module);
|
||||
DDX_Text(pDX, IDC_TITLE, cTarget->m_Title);
|
||||
DDX_Check(pDX, IDC_UNNOTIFY, cTarget->m_UnNotify);
|
||||
DDX_Check(pDX, IDC_WINDOWIZE, cTarget->m_Windowize);
|
||||
DDX_Check(pDX, IDC_NOBANNER, cTarget->m_NoBanner);
|
||||
DDX_Check(pDX, IDC_SAVELOAD, cTarget->m_SaveLoad);
|
||||
DDX_Check(pDX, IDC_HANDLEALTF4, cTarget->m_HandleAltF4);
|
||||
DDX_Text(pDX, IDC_POSX, cTarget->m_PosX);
|
||||
DDX_Text(pDX, IDC_POSY, cTarget->m_PosY);
|
||||
DDX_Text(pDX, IDC_SIZX, cTarget->m_SizX);
|
||||
DDX_Text(pDX, IDC_SIZY, cTarget->m_SizY);
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabProgram, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabProgram)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
ON_BN_CLICKED(IDC_OPEN, OnOpen)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabProgram message handlers
|
||||
|
||||
void CTabProgram::OnOpen()
|
||||
{
|
||||
// TODO: Please add your control notification handler code here
|
||||
char path[MAX_PATH];
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
cTarget->m_File.GetWindowText(path, MAX_PATH);
|
||||
CFileDialog dlg( TRUE, "*.*", path, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
||||
"Program (*.exe)|*.exe|All Files (*.*)|*.*||", this);
|
||||
if( dlg.DoModal() == IDOK) cTarget->m_File.SetWindowText(dlg.GetPathName());
|
||||
}
|
45
host/TabProgram.h
Normal file
45
host/TabProgram.h
Normal file
@ -0,0 +1,45 @@
|
||||
#if !defined(AFX_TABPROGRAM_H__4F1DD92C_C67D_48AE_A73F_02D7EDA0580E__INCLUDED_)
|
||||
#define AFX_TABPROGRAM_H__4F1DD92C_C67D_48AE_A73F_02D7EDA0580E__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabProgram.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabProgram dialog
|
||||
|
||||
class CTabProgram : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabProgram(CWnd* pParent = NULL); // standard constructor
|
||||
void OnOpen(void);
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabProgram)
|
||||
enum { IDD = IDD_TAB_PROGRAM };
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabProgram)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabProgram)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif
|
69
host/TabTiming.cpp
Normal file
69
host/TabTiming.cpp
Normal file
@ -0,0 +1,69 @@
|
||||
// TabDirectX.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabTiming.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabTiming dialog
|
||||
|
||||
|
||||
CTabTiming::CTabTiming(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabTiming::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabTiming)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
|
||||
void CTabTiming::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_LIMITFPS, cTarget->m_LimitFPS);
|
||||
DDX_Check(pDX, IDC_SKIPFPS, cTarget->m_SkipFPS);
|
||||
DDX_Check(pDX, IDC_SHOWFPS, cTarget->m_ShowFPS);
|
||||
DDX_Check(pDX, IDC_SHOWFPSOVERLAY, cTarget->m_ShowFPSOverlay);
|
||||
DDX_Check(pDX, IDC_TIMESTRETCH, cTarget->m_TimeStretch);
|
||||
DDX_Text(pDX, IDC_MAXFPS, cTarget->m_MaxFPS);
|
||||
DDX_LBIndex(pDX, IDC_LISTTS, cTarget->m_InitTS);
|
||||
//{{AFX_DATA_MAP(CTabTiming)
|
||||
// NOTE: the ClassWizard will add DDX and DDV calls here
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
BOOL CTabTiming::OnInitDialog()
|
||||
{
|
||||
|
||||
AfxEnableControlContainer();
|
||||
|
||||
CListBox *List;
|
||||
CDialog::OnInitDialog();
|
||||
int i;
|
||||
extern char *GetTSCaption(int);
|
||||
List=(CListBox *)this->GetDlgItem(IDC_LISTTS);
|
||||
List->ResetContent();
|
||||
for(i=-8; i<=8; i++) List->AddString(GetTSCaption(i));
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
List->SetCurSel(cTarget->m_InitTS);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabTiming, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabTiming)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabTiming message handlers
|
48
host/TabTiming.h
Normal file
48
host/TabTiming.h
Normal file
@ -0,0 +1,48 @@
|
||||
#if !defined(AFX_TABTIMING_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
||||
#define AFX_TABTIMING_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabTiming.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabDirectX dialog
|
||||
|
||||
class CTabTiming : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabTiming(CWnd* pParent = NULL); // standard constructor
|
||||
BOOL OnInitDialog();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabDirectX)
|
||||
enum { IDD = IDD_TAB_TIMING };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabDirectX)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabDirectX)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_TABTHREE_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
64
host/TabWindow.cpp
Normal file
64
host/TabWindow.cpp
Normal file
@ -0,0 +1,64 @@
|
||||
// TabOpenGL.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "TargetDlg.h"
|
||||
#include "TabWindow.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabWindow dialog
|
||||
|
||||
|
||||
CTabWindow::CTabWindow(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTabWindow::IDD, pParent)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CTabWindow)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
|
||||
void CTabWindow::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
CTargetDlg *cTarget = ((CTargetDlg *)(this->GetParent()->GetParent()));
|
||||
DDX_Check(pDX, IDC_FIXWINFRAME, cTarget->m_FixWinFrame);
|
||||
DDX_Check(pDX, IDC_PREVENTMAXIMIZE, cTarget->m_PreventMaximize);
|
||||
DDX_Check(pDX, IDC_LOCKWINPOS, cTarget->m_LockWinPos);
|
||||
DDX_Check(pDX, IDC_LOCKWINSTYLE, cTarget->m_LockWinStyle);
|
||||
DDX_Check(pDX, IDC_FIXPARENTWIN, cTarget->m_FixParentWin);
|
||||
DDX_Check(pDX, IDC_MODALSTYLE, cTarget->m_ModalStyle);
|
||||
DDX_Check(pDX, IDC_KEEPASPECTRATIO, cTarget->m_KeepAspectRatio);
|
||||
DDX_Check(pDX, IDC_FORCEWINRESIZE, cTarget->m_ForceWinResize);
|
||||
DDX_Check(pDX, IDC_HIDEMULTIMONITOR, cTarget->m_HideMultiMonitor);
|
||||
DDX_Check(pDX, IDC_WALLPAPERMODE, cTarget->m_WallpaperMode);
|
||||
DDX_Check(pDX, IDC_HOOKCHILDWIN, cTarget->m_HookChildWin);
|
||||
DDX_Check(pDX, IDC_RECOVERSCREENMODE, cTarget->m_RecoverScreenMode);
|
||||
DDX_Check(pDX, IDC_REFRESHONRESIZE, cTarget->m_RefreshOnResize);
|
||||
DDX_Check(pDX, IDC_INIT8BPP, cTarget->m_Init8BPP);
|
||||
DDX_Check(pDX, IDC_INIT16BPP, cTarget->m_Init16BPP);
|
||||
}
|
||||
|
||||
BOOL CTabWindow::OnInitDialog()
|
||||
{
|
||||
|
||||
AfxEnableControlContainer();
|
||||
CDialog::OnInitDialog();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTabWindow, CDialog)
|
||||
//{{AFX_MSG_MAP(CTabWindow)
|
||||
// NOTE: the ClassWizard will add message map macros here
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabWindow message handlers
|
48
host/TabWindow.h
Normal file
48
host/TabWindow.h
Normal file
@ -0,0 +1,48 @@
|
||||
#if !defined(AFX_TABWINDOW_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_)
|
||||
#define AFX_TABWINDOW_H__798A9124_C906_446C_822D_322B5AB6C4C4__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// TabTiming.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTabWindow dialog
|
||||
|
||||
class CTabWindow : public CDialog
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CTabWindow(CWnd* pParent = NULL); // standard constructor
|
||||
BOOL OnInitDialog();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTabWindow)
|
||||
enum { IDD = IDD_TAB_WINDOW };
|
||||
// NOTE: the ClassWizard will add data members here
|
||||
//}}AFX_DATA
|
||||
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CTabWindow)
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTabWindow)
|
||||
// NOTE: the ClassWizard will add member functions here
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif
|
@ -16,7 +16,6 @@ static char THIS_FILE[] = __FILE__;
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTargetDlg Dialog
|
||||
|
||||
|
||||
CTargetDlg::CTargetDlg(CWnd* pParent /*=NULL*/)
|
||||
: CDialog(CTargetDlg::IDD, pParent)
|
||||
{
|
||||
@ -35,7 +34,11 @@ CTargetDlg::CTargetDlg(CWnd* pParent /*=NULL*/)
|
||||
m_DXProxed = FALSE;
|
||||
m_HandleDC = FALSE;
|
||||
m_HandleExceptions = FALSE;
|
||||
m_SuppressIME = FALSE;
|
||||
m_LimitResources = FALSE;
|
||||
m_UnNotify = FALSE;
|
||||
m_Windowize = TRUE;
|
||||
m_NoBanner = FALSE;
|
||||
m_FilePath = _T("");
|
||||
m_Module = _T("");
|
||||
m_SaveLoad = FALSE;
|
||||
@ -101,408 +104,43 @@ CTargetDlg::CTargetDlg(CWnd* pParent /*=NULL*/)
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//void TSCombo::OnEnable(BOOL bEnable)
|
||||
//{
|
||||
// CComboBox::OnEnable(bEnable);
|
||||
//
|
||||
// // Get edit control which happens to be the first child window
|
||||
// CEdit* pEdit = (CEdit*)GetWindow(GW_CHILD);
|
||||
//
|
||||
// // Always have the edit box enabled
|
||||
// pEdit->EnableWindow(TRUE);
|
||||
//
|
||||
// // Set read only is combo box is disabled
|
||||
// pEdit->SetReadOnly(!bEnable);
|
||||
//}
|
||||
|
||||
static struct {char bMajor; char bMinor; char *sName;} WinVersions[6]=
|
||||
{
|
||||
{5, 0, "Windows 2000"},
|
||||
{5, 1, "Windows XP"},
|
||||
{5, 2, "Windows Server 2003"},
|
||||
{6, 0, "Windows Vista"},
|
||||
{6, 1, "Windows 7"},
|
||||
{6, 2, "Windows 8"}
|
||||
};
|
||||
|
||||
BOOL CTargetDlg::OnInitDialog()
|
||||
{
|
||||
|
||||
CListBox *List;
|
||||
AfxEnableControlContainer();
|
||||
CDialog::OnInitDialog();
|
||||
int i;
|
||||
extern char *GetTSCaption(int);
|
||||
List=(CListBox *)this->GetDlgItem(IDC_LISTTS);
|
||||
List->ResetContent();
|
||||
for(i=-8; i<=8; i++) List->AddString(GetTSCaption(i));
|
||||
List->SetCurSel(m_InitTS);
|
||||
List=(CListBox *)this->GetDlgItem(IDC_LISTFAKE);
|
||||
List->ResetContent();
|
||||
for(i=0; i<6; i++) List->AddString(WinVersions[i].sName);
|
||||
List->SetCurSel(m_FakeVersion);
|
||||
m_tabdxTabCtrl.InsertItem(0, _T("Main"));
|
||||
m_tabdxTabCtrl.InsertItem(1, _T("Window"));
|
||||
m_tabdxTabCtrl.InsertItem(2, _T("Mouse"));
|
||||
m_tabdxTabCtrl.InsertItem(3, _T("Timing"));
|
||||
m_tabdxTabCtrl.InsertItem(4, _T("Log"));
|
||||
m_tabdxTabCtrl.InsertItem(5, _T("DirectX"));
|
||||
m_tabdxTabCtrl.InsertItem(6, _T("OpenGL"));
|
||||
m_tabdxTabCtrl.InsertItem(7, _T("GDI"));
|
||||
m_tabdxTabCtrl.InsertItem(8, _T("Compat"));
|
||||
m_tabdxTabCtrl.Init();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void CTargetDlg::OnOK()
|
||||
{
|
||||
m_tabdxTabCtrl.OnOK();
|
||||
CDialog::OnOK();
|
||||
}
|
||||
|
||||
void CTargetDlg::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
|
||||
//{{AFX_DATA_MAP(CTargetDlg)
|
||||
DDX_Control(pDX, IDC_FILE, m_File);
|
||||
DDX_Radio(pDX, IDC_AUTO, m_DXVersion);
|
||||
DDX_Check(pDX, IDC_EMULATESURFACE, m_EmulateSurface);
|
||||
DDX_Check(pDX, IDC_NOEMULATESURFACE, m_NoEmulateSurface);
|
||||
DDX_Check(pDX, IDC_EMULATEBUFFER, m_EmulateBuffer);
|
||||
DDX_Check(pDX, IDC_HOOKDI, m_HookDI);
|
||||
DDX_Check(pDX, IDC_MODIFYMOUSE, m_ModifyMouse);
|
||||
DDX_Check(pDX, IDC_OUTTRACE, m_OutTrace);
|
||||
DDX_Check(pDX, IDC_OUTDEBUG, m_OutDebug);
|
||||
DDX_Check(pDX, IDC_CURSORTRACE, m_CursorTrace);
|
||||
DDX_Check(pDX, IDC_LOGENABLED, m_LogEnabled);
|
||||
DDX_Check(pDX, IDC_OUTWINMESSAGES, m_OutWinMessages);
|
||||
DDX_Check(pDX, IDC_OUTDXTRACE, m_OutDXTrace);
|
||||
DDX_Check(pDX, IDC_DXPROXED, m_DXProxed);
|
||||
DDX_Check(pDX, IDC_ASSERT, m_AssertDialog);
|
||||
DDX_Check(pDX, IDC_IMPORTTABLE, m_ImportTable);
|
||||
DDX_Check(pDX, IDC_HANDLEDC, m_HandleDC);
|
||||
DDX_Check(pDX, IDC_HANDLEEXCEPTIONS, m_HandleExceptions);
|
||||
DDX_Check(pDX, IDC_UNNOTIFY, m_UnNotify);
|
||||
DDX_Text(pDX, IDC_FILE, m_FilePath);
|
||||
DDX_Text(pDX, IDC_MODULE, m_Module);
|
||||
DDX_Text(pDX, IDC_TITLE, m_Title);
|
||||
DDX_Check(pDX, IDC_SAVELOAD, m_SaveLoad);
|
||||
DDX_Check(pDX, IDC_SLOW, m_SlowDown);
|
||||
DDX_Check(pDX, IDC_BLITFROMBACKBUFFER, m_BlitFromBackBuffer);
|
||||
DDX_Check(pDX, IDC_SUPPRESSCLIPPING, m_SuppressClipping);
|
||||
DDX_Check(pDX, IDC_DISABLEGAMMARAMP, m_DisableGammaRamp);
|
||||
DDX_Check(pDX, IDC_AUTOREFRESH, m_AutoRefresh);
|
||||
DDX_Check(pDX, IDC_FIXWINFRAME, m_FixWinFrame);
|
||||
DDX_Check(pDX, IDC_HIDEHWCURSOR, m_HideHwCursor);
|
||||
DDX_Check(pDX, IDC_SHOWHWCURSOR, m_ShowHwCursor);
|
||||
DDX_Check(pDX, IDC_ENABLECLIPPING, m_EnableClipping);
|
||||
DDX_Check(pDX, IDC_CLIPCURSOR, m_CursorClipping);
|
||||
DDX_Check(pDX, IDC_VIDEOTOSYSTEMMEM, m_VideoToSystemMem);
|
||||
DDX_Check(pDX, IDC_FIXTEXTOUT, m_FixTextOut);
|
||||
DDX_Check(pDX, IDC_KEEPCURSORWITHIN, m_KeepCursorWithin);
|
||||
DDX_Check(pDX, IDC_KEEPCURSORFIXED, m_KeepCursorFixed);
|
||||
DDX_Check(pDX, IDC_USERGB565, m_UseRGB565);
|
||||
DDX_Check(pDX, IDC_SUPPRESSDXERRORS, m_SuppressDXErrors);
|
||||
DDX_Check(pDX, IDC_PREVENTMAXIMIZE, m_PreventMaximize);
|
||||
DDX_Check(pDX, IDC_CLIENTREMAPPING, m_ClientRemapping);
|
||||
DDX_Check(pDX, IDC_MAPGDITOPRIMARY, m_MapGDIToPrimary);
|
||||
DDX_Check(pDX, IDC_LOCKWINPOS, m_LockWinPos);
|
||||
DDX_Check(pDX, IDC_LOCKWINSTYLE, m_LockWinStyle);
|
||||
DDX_Check(pDX, IDC_FIXPARENTWIN, m_FixParentWin);
|
||||
DDX_Check(pDX, IDC_MODALSTYLE, m_ModalStyle);
|
||||
DDX_Check(pDX, IDC_KEEPASPECTRATIO, m_KeepAspectRatio);
|
||||
DDX_Check(pDX, IDC_FORCEWINRESIZE, m_ForceWinResize);
|
||||
DDX_Check(pDX, IDC_HOOKGDI, m_HookGDI);
|
||||
DDX_Check(pDX, IDC_HIDEMULTIMONITOR, m_HideMultiMonitor);
|
||||
DDX_Check(pDX, IDC_WALLPAPERMODE, m_WallpaperMode);
|
||||
DDX_Check(pDX, IDC_HOOKCHILDWIN, m_HookChildWin);
|
||||
DDX_Check(pDX, IDC_MESSAGEPROC, m_MessageProc);
|
||||
DDX_Check(pDX, IDC_FIXNCHITTEST, m_FixNCHITTEST);
|
||||
DDX_Check(pDX, IDC_RECOVERSCREENMODE, m_RecoverScreenMode);
|
||||
DDX_Check(pDX, IDC_REFRESHONRESIZE, m_RefreshOnResize);
|
||||
DDX_Check(pDX, IDC_INIT8BPP, m_Init8BPP);
|
||||
DDX_Check(pDX, IDC_INIT16BPP, m_Init16BPP);
|
||||
DDX_Check(pDX, IDC_BACKBUFATTACH, m_BackBufAttach);
|
||||
DDX_Check(pDX, IDC_HANDLEALTF4, m_HandleAltF4);
|
||||
DDX_Check(pDX, IDC_LIMITFPS, m_LimitFPS);
|
||||
DDX_Check(pDX, IDC_SKIPFPS, m_SkipFPS);
|
||||
DDX_Check(pDX, IDC_SHOWFPS, m_ShowFPS);
|
||||
DDX_Check(pDX, IDC_SHOWFPSOVERLAY, m_ShowFPSOverlay);
|
||||
DDX_Check(pDX, IDC_TIMESTRETCH, m_TimeStretch);
|
||||
DDX_Check(pDX, IDC_HOOKOPENGL, m_HookOpenGL);
|
||||
DDX_Check(pDX, IDC_FAKEVERSION, m_FakeVersion);
|
||||
DDX_Check(pDX, IDC_FULLRECTBLT, m_FullRectBlt);
|
||||
DDX_Check(pDX, IDC_NOPALETTEUPDATE, m_NoPaletteUpdate);
|
||||
DDX_Text(pDX, IDC_INITX, m_InitX);
|
||||
DDX_Text(pDX, IDC_INITY, m_InitY);
|
||||
DDX_Text(pDX, IDC_MAXX, m_MaxX);
|
||||
DDX_Text(pDX, IDC_MAXY, m_MaxY);
|
||||
DDX_Text(pDX, IDC_MINX, m_MinX);
|
||||
DDX_Text(pDX, IDC_MINY, m_MinY);
|
||||
DDX_Text(pDX, IDC_POSX, m_PosX);
|
||||
DDX_Text(pDX, IDC_POSY, m_PosY);
|
||||
DDX_Text(pDX, IDC_SIZX, m_SizX);
|
||||
DDX_Text(pDX, IDC_SIZY, m_SizY);
|
||||
DDX_Text(pDX, IDC_MAXFPS, m_MaxFPS);
|
||||
//DDX_Text(pDX, IDC_INITTS, m_InitTS);
|
||||
DDX_LBIndex(pDX, IDC_LISTTS, m_InitTS);
|
||||
DDX_LBIndex(pDX, IDC_LISTFAKE, m_FakeVersionId);
|
||||
DDX_Control(pDX, IDC_TABPANEL, m_tabdxTabCtrl);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CTargetDlg, CDialog)
|
||||
//{{AFX_MSG_MAP(CTargetDlg)
|
||||
ON_BN_CLICKED(IDC_OPEN, OnOpen)
|
||||
//}}AFX_MSG_MAP
|
||||
ON_BN_CLICKED(IDC_UNNOTIFY, &CTargetDlg::OnBnClickedUnnotify)
|
||||
ON_BN_CLICKED(IDC_EMULATEBUFFER, &CTargetDlg::OnBnClickedEmulateBuffer)
|
||||
ON_BN_CLICKED(IDC_EMULATESURFACE, &CTargetDlg::OnBnClickedEmulateSurface)
|
||||
ON_BN_CLICKED(IDC_NOEMULATESURFACE, &CTargetDlg::OnBnClickedNoEmulateSurface)
|
||||
ON_BN_CLICKED(IDC_OUTTRACE, &CTargetDlg::OnBnClickedOuttrace)
|
||||
ON_BN_CLICKED(IDC_LOGENABLED, &CTargetDlg::OnBnClickedLogEnabled)
|
||||
ON_BN_CLICKED(IDC_HANDLEDC, &CTargetDlg::OnBnClickedHandleDC)
|
||||
ON_BN_CLICKED(IDC_HANDLEEXCEPTIONS, &CTargetDlg::OnBnClickedHandleExceptions)
|
||||
//ON_BN_CLICKED(IDC_TRANSPARENTWIN, &CTargetDlg::OnBnClickedBlitFromBackBuffer)
|
||||
//ON_BN_CLICKED(IDC_TRANSPARENTALL, &CTargetDlg::OnBnClickedTransparentAll)
|
||||
//ON_BN_CLICKED(IDC_ABSOLUTECOORD, &CTargetDlg::OnBnClickedAbsolutecoord)
|
||||
ON_BN_CLICKED(IDC_AUTOREFRESH, &CTargetDlg::OnBnClickedAutorefresh)
|
||||
ON_BN_CLICKED(IDC_FIXWINFRAME, &CTargetDlg::OnBnClickedFixWinFrame)
|
||||
//ON_BN_CLICKED(IDC_HIDEHWCURSOR, &CTargetDlg::OnBnClickedHideHwCursor)
|
||||
ON_BN_CLICKED(IDC_ENABLECLIPPING, &CTargetDlg::OnBnClickedEnableClipping)
|
||||
ON_BN_CLICKED(IDC_VIDEOTOSYSTEMMEM, &CTargetDlg::OnBnClickedHandleCursorPos)
|
||||
ON_BN_CLICKED(IDC_FIXTEXTOUT, &CTargetDlg::OnBnClickedFixTextOut)
|
||||
ON_BN_CLICKED(IDC_KEEPCURSORWITHIN, &CTargetDlg::OnBnClickedKeepCursorWithin)
|
||||
ON_BN_CLICKED(IDC_KEEPCURSORFIXED, &CTargetDlg::OnBnClickedKeepCursorFixed)
|
||||
ON_BN_CLICKED(IDC_USERGB565, &CTargetDlg::OnBnClickedUseRGB565)
|
||||
ON_BN_CLICKED(IDC_SUPPRESSDXERRORS, &CTargetDlg::OnBnClickedCursorScaling)
|
||||
ON_BN_CLICKED(IDC_PREVENTMAXIMIZE, &CTargetDlg::OnBnClickedPreventMaximize)
|
||||
ON_BN_CLICKED(IDC_CLIENTREMAPPING, &CTargetDlg::OnBnClickedClientRemapping)
|
||||
ON_BN_CLICKED(IDC_MAPGDITOPRIMARY, &CTargetDlg::OnBnClickedMapGDIToPrimary)
|
||||
ON_BN_CLICKED(IDC_LOCKWINPOS, &CTargetDlg::OnBnClickedLockWinPos)
|
||||
ON_BN_CLICKED(IDC_LOCKWINSTYLE, &CTargetDlg::OnBnClickedLockWinStyle)
|
||||
ON_BN_CLICKED(IDC_HOOKCHILDWIN, &CTargetDlg::OnBnClickedHookChildWin)
|
||||
ON_BN_CLICKED(IDC_MESSAGEPROC, &CTargetDlg::OnBnClickedMessageProc)
|
||||
ON_BN_CLICKED(IDC_RECOVERSCREENMODE, &CTargetDlg::OnBnClickedRecoverScreenMode)
|
||||
ON_BN_CLICKED(IDC_REFRESHONRESIZE, &CTargetDlg::OnBnClickedRefreshOnResize)
|
||||
ON_BN_CLICKED(IDC_INIT8BPP, &CTargetDlg::OnBnClickedInit8BPP)
|
||||
ON_BN_CLICKED(IDC_INIT16BPP, &CTargetDlg::OnBnClickedInit16BPP)
|
||||
ON_BN_CLICKED(IDC_BACKBUFATTACH, &CTargetDlg::OnBnClickedBackBufAttach)
|
||||
ON_BN_CLICKED(IDC_HANDLEALTF4, &CTargetDlg::OnBnClickedHandleAltF4)
|
||||
ON_EN_CHANGE(IDC_MAXX, &CTargetDlg::OnEnChangeMaxx)
|
||||
ON_EN_CHANGE(IDC_INITX, &CTargetDlg::OnEnChangeInitx)
|
||||
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTargetDlg Message Handler
|
||||
|
||||
void CTargetDlg::OnOpen()
|
||||
{
|
||||
// TODO: Please add your control notification handler code here
|
||||
char path[MAX_PATH];
|
||||
m_File.GetWindowText(path, MAX_PATH);
|
||||
CFileDialog dlg( TRUE, "*.*", path, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
|
||||
"Program (*.exe)|*.exe|All Files (*.*)|*.*||", this);
|
||||
if( dlg.DoModal() == IDOK) m_File.SetWindowText(dlg.GetPathName());
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedUnnotify()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedEmulateSurface()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedNoEmulateSurface()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedEmulateBuffer()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
void CTargetDlg::OnBnClickedOuttrace()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
void CTargetDlg::OnBnClickedLogEnabled()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
void CTargetDlg::OnBnClickedHandleDC()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedHandleExceptions()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
//void CTargetDlg::OnBnClickedBlitFromBackBuffer()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
//
|
||||
//void CTargetDlg::OnBnClickedTransparentAll()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnEnChangeFile2()
|
||||
{
|
||||
// TODO: If this is a RICHEDIT control, the control will not
|
||||
// send this notification unless you override the CDialog::OnInitDialog()
|
||||
// function and call CRichEditCtrl().SetEventMask()
|
||||
// with the ENM_CHANGE flag ORed into the mask.
|
||||
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
//void CTargetDlg::OnBnClickedAbsolutecoord()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnBnClickedAutorefresh()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedFixWinFrame()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
//void CTargetDlg::OnBnClickedHideHwCursor()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnBnClickedEnableClipping()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
//void CTargetDlg::OnBnClickedMouseToScreen()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnBnClickedHandleCursorPos()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedFixTextOut()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedKeepCursorWithin()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedKeepCursorFixed()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
//void CTargetDlg::OnBnClickedNullRectBlit()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnBnClickedUseRGB565()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedCursorScaling()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedPreventMaximize()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
//void CTargetDlg::OnBnClickedResetPrimary()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnBnClickedClientRemapping()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedMapGDIToPrimary()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedLockWinPos()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedLockWinStyle()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedHookChildWin()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedMessageProc()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedRecoverScreenMode()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedRefreshOnResize()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedInit8BPP()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedInit16BPP()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedBackBufAttach()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnBnClickedHandleAltF4()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
//void CTargetDlg::OnBnClickedEmulateModeX()
|
||||
//{
|
||||
// // TODO: Add your control notification handler code here
|
||||
//}
|
||||
|
||||
void CTargetDlg::OnEnChangeMaxx()
|
||||
{
|
||||
// TODO: If this is a RICHEDIT control, the control will not
|
||||
// send this notification unless you override the CDialog::OnInitDialog()
|
||||
// function and call CRichEditCtrl().SetEventMask()
|
||||
// with the ENM_CHANGE flag ORed into the mask.
|
||||
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
||||
void CTargetDlg::OnEnChangeInitx()
|
||||
{
|
||||
// TODO: If this is a RICHEDIT control, the control will not
|
||||
// send this notification unless you override the CDialog::OnInitDialog()
|
||||
// function and call CRichEditCtrl().SetEventMask()
|
||||
// with the ENM_CHANGE flag ORed into the mask.
|
||||
|
||||
// TODO: Add your control notification handler code here
|
||||
}
|
||||
|
@ -6,7 +6,7 @@
|
||||
#endif // _MSC_VER > 1000
|
||||
// TargetDlg.h : Header file
|
||||
//
|
||||
|
||||
#include "dxTabCtrl.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CTargetDlg Dialog
|
||||
@ -16,10 +16,12 @@ class CTargetDlg : public CDialog
|
||||
// Constructor
|
||||
public:
|
||||
CTargetDlg(CWnd* pParent = NULL); // Standard constructor
|
||||
void OnOK();
|
||||
|
||||
// Dialog Data
|
||||
//{{AFX_DATA(CTargetDlg)
|
||||
enum { IDD = IDD_TARGET };
|
||||
CDXTabCtrl m_tabdxTabCtrl;
|
||||
CEdit m_File;
|
||||
int m_DXVersion;
|
||||
BOOL m_EmulateSurface;
|
||||
@ -38,6 +40,8 @@ public:
|
||||
BOOL m_ImportTable;
|
||||
BOOL m_HandleDC;
|
||||
BOOL m_UnNotify;
|
||||
BOOL m_Windowize;
|
||||
BOOL m_NoBanner;
|
||||
CString m_FilePath;
|
||||
CString m_Module;
|
||||
CString m_Title;
|
||||
@ -90,6 +94,8 @@ public:
|
||||
BOOL m_FakeVersion;
|
||||
BOOL m_FullRectBlt;
|
||||
BOOL m_NoPaletteUpdate;
|
||||
BOOL m_LimitResources;
|
||||
BOOL m_SuppressIME;
|
||||
int m_InitX;
|
||||
int m_InitY;
|
||||
int m_MaxX;
|
||||
@ -115,51 +121,17 @@ public:
|
||||
|
||||
// Implementation
|
||||
protected:
|
||||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(CTargetDlg)
|
||||
afx_msg void OnOpen();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
public:
|
||||
afx_msg void OnBnClickedUnnotify();
|
||||
afx_msg void OnBnClickedEmulateBuffer();
|
||||
afx_msg void OnBnClickedEmulateSurface();
|
||||
afx_msg void OnBnClickedNoEmulateSurface();
|
||||
afx_msg void OnBnClickedOuttrace();
|
||||
afx_msg void OnBnClickedLogEnabled();
|
||||
afx_msg void OnBnClickedHandleDC();
|
||||
afx_msg void OnEnChangeFile2();
|
||||
afx_msg void OnBnClickedAutorefresh();
|
||||
afx_msg void OnBnClickedFixWinFrame();
|
||||
//afx_msg void OnBnClickedHideHwCursor();
|
||||
afx_msg void OnBnClickedEnableClipping();
|
||||
afx_msg void OnBnClickedHandleCursorPos();
|
||||
afx_msg void OnBnClickedFixTextOut();
|
||||
afx_msg void OnBnClickedKeepCursorWithin();
|
||||
afx_msg void OnBnClickedKeepCursorFixed();
|
||||
afx_msg void OnBnClickedUseRGB565();
|
||||
afx_msg void OnBnClickedCursorScaling();
|
||||
afx_msg void OnBnClickedPreventMaximize();
|
||||
afx_msg void OnBnClickedClientRemapping();
|
||||
afx_msg void OnBnClickedMapGDIToPrimary();
|
||||
afx_msg void OnBnClickedLockWinPos();
|
||||
afx_msg void OnBnClickedLockWinStyle();
|
||||
afx_msg void OnBnClickedHookChildWin();
|
||||
afx_msg void OnBnClickedMessageProc();
|
||||
afx_msg void OnBnClickedRecoverScreenMode();
|
||||
afx_msg void OnBnClickedRefreshOnResize();
|
||||
afx_msg void OnBnClickedInit8BPP();
|
||||
afx_msg void OnBnClickedInit16BPP();
|
||||
afx_msg void OnBnClickedBackBufAttach();
|
||||
afx_msg void OnBnClickedHandleAltF4();
|
||||
afx_msg void OnBnClickedHandleExceptions();
|
||||
afx_msg void OnEnChangeMaxx();
|
||||
afx_msg void OnEnChangeInitx();
|
||||
|
||||
public:
|
||||
virtual BOOL OnInitDialog();
|
||||
|
||||
};
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ Will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_TARGETDLG_H__683E529D_7282_484C_A403_367A6A90CC57__INCLUDED_)
|
||||
#endif
|
131
host/dxTabCtrl.cpp
Normal file
131
host/dxTabCtrl.cpp
Normal file
@ -0,0 +1,131 @@
|
||||
// dxTabCtrl.cpp : implementation file
|
||||
//
|
||||
/////////////////////////////////////////////////////
|
||||
// This class is provided as is and Ben Hill takes no
|
||||
// responsibility for any loss of any kind in connection
|
||||
// to this code.
|
||||
/////////////////////////////////////////////////////
|
||||
// Is is meant purely as a educational tool and may
|
||||
// contain bugs.
|
||||
/////////////////////////////////////////////////////
|
||||
// ben@shido.fsnet.co.uk
|
||||
// http://www.shido.fsnet.co.uk
|
||||
/////////////////////////////////////////////////////
|
||||
// Thanks to a mystery poster in the C++ forum on
|
||||
// www.codeguru.com I can't find your name to say thanks
|
||||
// for your Control drawing code. If you are that person
|
||||
// thank you very much. I have been able to use some of
|
||||
// you ideas to produce this sample application.
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "dxTabCtrl.h"
|
||||
|
||||
#include "TabProgram.h"
|
||||
#include "TabLogs.h"
|
||||
#include "TabDirectX.h"
|
||||
#include "TabMouse.h"
|
||||
#include "TabTiming.h"
|
||||
#include "TabWindow.h"
|
||||
#include "TabOpenGL.h"
|
||||
#include "TabCompat.h"
|
||||
#include "TabGDI.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CDXTabCtrl
|
||||
|
||||
CDXTabCtrl::CDXTabCtrl()
|
||||
{
|
||||
m_tabPages[0]=new CTabProgram;
|
||||
m_tabPages[1]=new CTabWindow;
|
||||
m_tabPages[2]=new CTabMouse;
|
||||
m_tabPages[3]=new CTabTiming;
|
||||
m_tabPages[4]=new CTabLogs;
|
||||
m_tabPages[5]=new CTabDirectX;
|
||||
m_tabPages[6]=new CTabOpenGL;
|
||||
m_tabPages[7]=new CTabGDI;
|
||||
m_tabPages[8]=new CTabCompat;
|
||||
|
||||
m_nNumberOfPages=9;
|
||||
}
|
||||
|
||||
CDXTabCtrl::~CDXTabCtrl()
|
||||
{
|
||||
for(int nCount=0; nCount < m_nNumberOfPages; nCount++){
|
||||
delete m_tabPages[nCount];
|
||||
}
|
||||
}
|
||||
|
||||
void CDXTabCtrl::Init()
|
||||
{
|
||||
m_tabCurrent=0;
|
||||
|
||||
m_tabPages[0]->Create(IDD_TAB_PROGRAM, this);
|
||||
m_tabPages[1]->Create(IDD_TAB_WINDOW, this);
|
||||
m_tabPages[2]->Create(IDD_TAB_MOUSE, this);
|
||||
m_tabPages[3]->Create(IDD_TAB_TIMING, this);
|
||||
m_tabPages[4]->Create(IDD_TAB_LOG, this);
|
||||
m_tabPages[5]->Create(IDD_TAB_DIRECTX, this);
|
||||
m_tabPages[6]->Create(IDD_TAB_OPENGL, this);
|
||||
m_tabPages[7]->Create(IDD_TAB_GDI, this);
|
||||
m_tabPages[8]->Create(IDD_TAB_COMPAT, this);
|
||||
|
||||
for(int nCount=0; nCount < m_nNumberOfPages; nCount++){
|
||||
m_tabPages[nCount]->ShowWindow(nCount ? SW_HIDE:SW_SHOW);
|
||||
}
|
||||
|
||||
SetRectangle();
|
||||
}
|
||||
|
||||
void CDXTabCtrl::SetRectangle()
|
||||
{
|
||||
CRect tabRect, itemRect;
|
||||
int nX, nY, nXc, nYc;
|
||||
|
||||
GetClientRect(&tabRect);
|
||||
GetItemRect(0, &itemRect);
|
||||
|
||||
nX=itemRect.left;
|
||||
nY=itemRect.bottom+1;
|
||||
nXc=tabRect.right-itemRect.left-1;
|
||||
nYc=tabRect.bottom-nY-1;
|
||||
|
||||
m_tabPages[0]->SetWindowPos(&wndTop, nX, nY, nXc, nYc, SWP_SHOWWINDOW);
|
||||
for(int nCount=1; nCount < m_nNumberOfPages; nCount++){
|
||||
m_tabPages[nCount]->SetWindowPos(&wndTop, nX, nY, nXc, nYc, SWP_HIDEWINDOW);
|
||||
}
|
||||
}
|
||||
|
||||
BEGIN_MESSAGE_MAP(CDXTabCtrl, CTabCtrl)
|
||||
//{{AFX_MSG_MAP(CDXTabCtrl)
|
||||
ON_WM_LBUTTONDOWN()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CDXTabCtrl message handlers
|
||||
|
||||
void CDXTabCtrl::OnLButtonDown(UINT nFlags, CPoint point)
|
||||
{
|
||||
CTabCtrl::OnLButtonDown(nFlags, point);
|
||||
|
||||
if(m_tabCurrent != GetCurFocus()){
|
||||
m_tabPages[m_tabCurrent]->ShowWindow(SW_HIDE);
|
||||
m_tabCurrent=GetCurFocus();
|
||||
m_tabPages[m_tabCurrent]->ShowWindow(SW_SHOW);
|
||||
m_tabPages[m_tabCurrent]->SetFocus();
|
||||
}
|
||||
}
|
||||
|
||||
void CDXTabCtrl::OnOK()
|
||||
{
|
||||
for(int nCount=0; nCount < m_nNumberOfPages; nCount++){
|
||||
m_tabPages[nCount]->UpdateData(TRUE);
|
||||
}
|
||||
}
|
56
host/dxTabCtrl.h
Normal file
56
host/dxTabCtrl.h
Normal file
@ -0,0 +1,56 @@
|
||||
#if !defined(AFX_MYTABCTRL_H__F3E8650F_019C_479F_9E0F_60FE1181F49F__INCLUDED_)
|
||||
#define AFX_MYTABCTRL_H__F3E8650F_019C_479F_9E0F_60FE1181F49F__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
// dxTabCtrl.h : header file
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CDXTabCtrl window
|
||||
|
||||
class CDXTabCtrl : public CTabCtrl
|
||||
{
|
||||
// Construction
|
||||
public:
|
||||
CDXTabCtrl();
|
||||
CDialog *m_tabPages[9];
|
||||
int m_tabCurrent;
|
||||
int m_nNumberOfPages;
|
||||
enum { IDD = IDC_TABPANEL };
|
||||
|
||||
// Attributes
|
||||
public:
|
||||
|
||||
// Operations
|
||||
public:
|
||||
void Init();
|
||||
void SetRectangle();
|
||||
|
||||
// Overrides
|
||||
// ClassWizard generated virtual function overrides
|
||||
//{{AFX_VIRTUAL(CDXTabCtrl)
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
// Implementation
|
||||
public:
|
||||
virtual ~CDXTabCtrl();
|
||||
void OnOK();
|
||||
|
||||
// Generated message map functions
|
||||
protected:
|
||||
//{{AFX_MSG(CDXTabCtrl)
|
||||
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
|
||||
//}}AFX_MSG
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_MYTABCTRL_H__F3E8650F_019C_479F_9E0F_60FE1181F49F__INCLUDED_)
|
Binary file not shown.
@ -195,134 +195,14 @@ BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,178,7,50,14,WS_GROUP
|
||||
END
|
||||
|
||||
IDD_TARGET DIALOGEX 0, 0, 675, 225
|
||||
IDD_TARGET DIALOGEX 0, 0, 273, 248
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Target"
|
||||
FONT 9, "Arial", 400, 0, 0x0
|
||||
BEGIN
|
||||
EDITTEXT IDC_FILE,7,36,139,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDC_OPEN,150,38,11,14
|
||||
CONTROL "Automatic",IDC_AUTO,"Button",BS_AUTORADIOBUTTON | WS_GROUP,14,84,57,10
|
||||
CONTROL "DirectX1~6",IDC_DIRECTX1,"Button",BS_AUTORADIOBUTTON,14,94,59,10
|
||||
CONTROL "DirectX7",IDC_DIRECTX7,"Button",BS_AUTORADIOBUTTON,14,104,41,10
|
||||
CONTROL "DirectX8",IDC_DIRECTX8,"Button",BS_AUTORADIOBUTTON,14,114,41,10
|
||||
CONTROL "DirectX9",IDC_DIRECTX9,"Button",BS_AUTORADIOBUTTON,14,124,40,10
|
||||
CONTROL "None/OpenGL",IDC_NODIRECTX,"Button",BS_AUTORADIOBUTTON,14,134,61,10
|
||||
CONTROL "Do not notify on task switch",IDC_UNNOTIFY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,134,106,10
|
||||
CONTROL "None",IDC_NOEMULATESURFACE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,14,158,66,10
|
||||
CONTROL "Primary Surface",IDC_EMULATESURFACE,"Button",BS_AUTORADIOBUTTON,14,178,66,10
|
||||
CONTROL "Primary Buffer",IDC_EMULATEBUFFER,"Button",BS_AUTORADIOBUTTON,14,168,67,10
|
||||
CONTROL "DirectInput Hooking",IDC_HOOKDI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,124,83,10
|
||||
CONTROL "Correct mouse position",IDC_MODIFYMOUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,34,97,10
|
||||
CONTROL "DxWnd",IDC_OUTTRACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,114,62,10
|
||||
CONTROL "Optimize CPU (DirectX1 - 7)",IDC_SAVELOAD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,144,105,10
|
||||
DEFPUSHBUTTON "OK",IDOK,629,204,40,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,568,204,40,14
|
||||
GROUPBOX "DirectX Version Hook",IDC_STATIC,7,75,77,72,WS_GROUP
|
||||
LTEXT "DirectInput initial coord. and X,Y range",IDC_STATIC,430,195,125,8
|
||||
LTEXT "X",IDC_STATIC,425,208,8,8
|
||||
LTEXT "Y",IDC_STATIC,448,208,8,8
|
||||
LTEXT "(",IDC_STATIC,473,208,8,8
|
||||
LTEXT ",",IDC_STATIC,493,208,8,8
|
||||
LTEXT ")-(",IDC_STATIC,512,208,9,8
|
||||
LTEXT ",",IDC_STATIC,537,208,8,8
|
||||
LTEXT ")",IDC_STATIC,556,208,8,8
|
||||
EDITTEXT IDC_INITX,431,206,14,12,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_INITY,453,206,14,12,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MINX,476,206,14,12,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MINY,497,206,14,12,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MAXX,520,206,14,12,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MAXY,541,206,14,12,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
CONTROL "Handle DC",IDC_HANDLEDC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,24,67,10
|
||||
EDITTEXT IDC_MODULE,7,60,139,12,ES_AUTOHSCROLL
|
||||
CONTROL "Auto Primary Surface Refresh",IDC_AUTOREFRESH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,34,108,8
|
||||
CONTROL "Fix Window Frame Style",IDC_FIXWINFRAME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,14,103,9
|
||||
CONTROL "Hide Cursor",IDC_HIDEHWCURSOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,14,100,9
|
||||
CONTROL "Intercept GDI Cursor Clipping",IDC_ENABLECLIPPING,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,74,106,9
|
||||
LTEXT "Hooked Module:",IDC_STATIC,7,51,66,8
|
||||
GROUPBOX "Cursor handling",IDC_STATIC,298,3,120,105
|
||||
GROUPBOX "DirectDraw Surface handling",IDC_STATIC,172,3,120,138
|
||||
CONTROL "VIDEO->SYSTEM surf. on fail",IDC_VIDEOTOSYSTEMMEM,
|
||||
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,180,54,108,8
|
||||
CONTROL "Fix TextOutA placement",IDC_FIXTEXTOUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,164,107,9
|
||||
GROUPBOX "Generic",IDC_STATIC,299,111,120,89
|
||||
CONTROL "Keep cursor within window",IDC_KEEPCURSORWITHIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,54,105,9
|
||||
CONTROL "Set 16BPP RGB565 encoding",IDC_USERGB565,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,44,108,8
|
||||
CONTROL "Suppress DX common errors",IDC_SUPPRESSDXERRORS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,64,109,9
|
||||
CONTROL "Prevent Win Maximize",IDC_PREVENTMAXIMIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,24,98,9
|
||||
GROUPBOX "Trace",IDC_STATIC,90,75,74,115
|
||||
CONTROL "Win Events",IDC_OUTWINMESSAGES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,124,62,10
|
||||
CONTROL "DirectX ",IDC_OUTDXTRACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,134,62,10
|
||||
EDITTEXT IDC_TITLE,7,12,139,12,ES_AUTOHSCROLL
|
||||
LTEXT "Path:",IDC_STATIC,7,27,66,8
|
||||
LTEXT "Name:",IDC_STATIC,7,3,66,8
|
||||
CONTROL "Slow down",IDC_SLOW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,154,88,10
|
||||
CONTROL "Force cursor clipping",IDC_CLIPCURSOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,44,107,9
|
||||
CONTROL "Remap Client Rect",IDC_CLIENTREMAPPING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,74,102,9
|
||||
CONTROL "Intercept Alt-F4 key",IDC_HANDLEALTF4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,164,93,10
|
||||
GROUPBOX "Windows handling",IDC_STATIC,424,3,120,167
|
||||
CONTROL "Lock win coordinates",IDC_LOCKWINPOS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,34,98,9
|
||||
CONTROL "Hook CHILD windows",IDC_HOOKCHILDWIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,54,98,9
|
||||
LTEXT "Window initial position && size",IDC_STATIC,12,195,98,8
|
||||
LTEXT "X",IDC_STATIC,8,208,8,8
|
||||
LTEXT "Y",IDC_STATIC,34,208,8,8
|
||||
LTEXT "W",IDC_STATIC,57,208,8,8
|
||||
LTEXT "H",IDC_STATIC,84,208,8,8
|
||||
EDITTEXT IDC_POSX,15,206,16,12,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_POSY,40,206,16,12,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_SIZX,65,206,16,12,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_SIZY,90,206,16,12,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
CONTROL "Message processing",IDC_MESSAGEPROC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,84,98,9
|
||||
CONTROL "Map GDI HDC to Primary DC",IDC_MAPGDITOPRIMARY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,14,102,9
|
||||
CONTROL "Recover screen mode",IDC_RECOVERSCREENMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,64,98,9
|
||||
CONTROL "Refresh on win resize",IDC_REFRESHONRESIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,74,98,9
|
||||
CONTROL "Make Backbuf attachable",IDC_BACKBUFATTACH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,84,102,9
|
||||
CONTROL "ddraw Proxy",IDC_DXPROXED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,94,62,10
|
||||
CONTROL "Assert Dialog",IDC_ASSERT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,104,62,10
|
||||
CONTROL "Simulate 8BPP desktop",IDC_INIT8BPP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,84,98,9
|
||||
CONTROL "Simulate 16BPP desktop",IDC_INIT16BPP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,94,98,9
|
||||
CONTROL "Keep cursor fixed",IDC_KEEPCURSORFIXED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,64,105,9
|
||||
CONTROL "Lock win style",IDC_LOCKWINSTYLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,44,98,9
|
||||
CONTROL "Enable Trace",IDC_LOGENABLED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,84,62,10
|
||||
CONTROL "Cursor/Mouse",IDC_CURSORTRACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,144,62,10
|
||||
CONTROL "Import Table",IDC_IMPORTTABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,154,62,10
|
||||
CONTROL "Handle Exceptions",IDC_HANDLEEXCEPTIONS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,174,93,10
|
||||
CONTROL "Fix Parent Window",IDC_FIXPARENTWIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,104,98,9
|
||||
CONTROL "Debug",IDC_OUTDEBUG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,97,164,62,10
|
||||
CONTROL "Blit from BackBuffer",IDC_BLITFROMBACKBUFFER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,94,102,9
|
||||
GROUPBOX "Emulation",IDC_STATIC,7,149,78,42,WS_GROUP
|
||||
CONTROL "Suppress clipping",IDC_SUPPRESSCLIPPING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,104,102,9
|
||||
CONTROL "Modal Style",IDC_MODALSTYLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,114,98,9
|
||||
CONTROL "Keep aspect ratio",IDC_KEEPASPECTRATIO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,124,98,9
|
||||
CONTROL "Limit available resources",IDC_LIMITRESOURCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,184,93,10
|
||||
CONTROL "Force win resize",IDC_FORCEWINRESIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,134,98,9
|
||||
CONTROL "fix WM_NCHITTEST",IDC_FIXNCHITTEST,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,94,98,9
|
||||
CONTROL "Limit",IDC_LIMITFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,557,112,28,9
|
||||
EDITTEXT IDC_MAXFPS,635,115,26,12,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
CONTROL "Skip",IDC_SKIPFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,557,122,27,9
|
||||
LTEXT "delay (msec)",IDC_STATIC,591,117,43,8
|
||||
GROUPBOX "Frame per Second",IDC_STATIC,549,102,120,68
|
||||
CONTROL "Show FPS on title",IDC_SHOWFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,557,134,72,9
|
||||
GROUPBOX "",IDC_STATIC,555,108,110,24
|
||||
CONTROL "Hide multi-monitor config.",IDC_HIDEMULTIMONITOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,144,98,9
|
||||
CONTROL "Time Stretch - initial:",IDC_TIMESTRETCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,557,154,75,9
|
||||
GROUPBOX "OpenGL",IDC_STATIC,549,3,120,50
|
||||
CONTROL "Hook OpenGL",IDC_HOOKOPENGL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,557,14,98,9
|
||||
EDITTEXT IDC_OPENGLLIB,554,36,108,12,ES_AUTOHSCROLL
|
||||
LTEXT "Custom OpenGL library",IDC_STATIC,566,26,94,8
|
||||
CONTROL "Show Cursor",IDC_SHOWHWCURSOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,306,24,100,9
|
||||
CONTROL "Wallpaper mode",IDC_WALLPAPERMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,433,154,98,9
|
||||
GROUPBOX "GDI Handling",IDC_STATIC,172,144,120,62
|
||||
CONTROL "Hook GDI",IDC_HOOKGDI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,154,102,9
|
||||
CONTROL "Disable setting gamma ramp",IDC_DISABLEGAMMARAMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,174,102,9
|
||||
CONTROL "Show FPS overlay",IDC_SHOWFPSOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,557,144,72,9
|
||||
LISTBOX IDC_LISTTS,635,135,26,27,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
GROUPBOX "Fake Version",IDC_STATIC,551,55,118,44
|
||||
CONTROL "",IDC_FAKEVERSION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,558,74,10,9
|
||||
LISTBOX IDC_LISTFAKE,577,67,84,27,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
CONTROL "Full RECT Blit",IDC_FULLRECTBLT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,114,102,9
|
||||
CONTROL "Palette update don't Blit",IDC_NOPALETTEUPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,180,124,102,9
|
||||
DEFPUSHBUTTON "OK",IDOK,225,227,40,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,176,227,40,14
|
||||
CONTROL "",IDC_TABPANEL,"SysTabControl32",0x0,7,3,260,220
|
||||
END
|
||||
|
||||
IDD_STATUS DIALOGEX 0, 0, 186, 95
|
||||
@ -352,6 +232,191 @@ BEGIN
|
||||
LTEXT ":16",IDC_STATIC,149,30,15,9
|
||||
END
|
||||
|
||||
IDD_TAB_PROGRAM DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
EDITTEXT IDC_TITLE,7,22,162,14,ES_AUTOHSCROLL
|
||||
LTEXT "Name:",IDC_STATIC,7,9,77,9
|
||||
EDITTEXT IDC_FILE,7,54,162,14,ES_AUTOHSCROLL
|
||||
EDITTEXT IDC_MODULE,7,85,162,14,ES_AUTOHSCROLL
|
||||
LTEXT "Hooked Module:",IDC_STATIC,7,73,77,9
|
||||
LTEXT "Path:",IDC_STATIC,7,42,77,9
|
||||
PUSHBUTTON "...",IDC_OPEN,176,53,13,16
|
||||
LTEXT "Window initial position && size",IDC_STATIC,10,184,115,9
|
||||
LTEXT "X",IDC_STATIC,10,200,9,9
|
||||
LTEXT "Y",IDC_STATIC,41,200,9,9
|
||||
LTEXT "W",IDC_STATIC,69,200,9,9
|
||||
LTEXT "H",IDC_STATIC,99,200,9,9
|
||||
EDITTEXT IDC_POSX,18,196,19,14,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_POSY,47,196,19,14,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_SIZX,77,196,19,14,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_SIZY,105,196,19,14,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
CONTROL "Do not notify on task switch",IDC_UNNOTIFY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,112,124,12
|
||||
CONTROL "Optimize CPU (DirectX1 - 7)",IDC_SAVELOAD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,122,123,12
|
||||
CONTROL "Intercept Alt-F4 key",IDC_HANDLEALTF4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,132,109,12
|
||||
CONTROL "Run in Window",IDC_WINDOWIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,142,124,12
|
||||
GROUPBOX "Generic",IDC_STATIC,7,103,140,72
|
||||
CONTROL "No banner",IDC_NOBANNER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,152,124,12
|
||||
END
|
||||
|
||||
IDD_TAB_LOG DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Logs",IDC_STATIC,7,3,87,133
|
||||
CONTROL "Win Events",IDC_OUTWINMESSAGES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,69,73,12
|
||||
CONTROL "DirectX ",IDC_OUTDXTRACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,81,73,12
|
||||
CONTROL "DxWnd",IDC_OUTTRACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,58,73,12
|
||||
CONTROL "Assert Dialog",IDC_ASSERT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,47,73,12
|
||||
CONTROL "ddraw Proxy",IDC_DXPROXED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,35,73,12
|
||||
CONTROL "Cursor/Mouse",IDC_CURSORTRACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,93,73,12
|
||||
CONTROL "Import Table",IDC_IMPORTTABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,104,73,12
|
||||
CONTROL "Debug",IDC_OUTDEBUG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,116,73,12
|
||||
CONTROL "Enable Trace",IDC_LOGENABLED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,13,73,12
|
||||
END
|
||||
|
||||
IDD_TAB_DIRECTX DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "Automatic",IDC_AUTO,"Button",BS_AUTORADIOBUTTON | WS_GROUP,14,13,67,12
|
||||
CONTROL "DirectX1~6",IDC_DIRECTX1,"Button",BS_AUTORADIOBUTTON,14,25,69,12
|
||||
CONTROL "DirectX7",IDC_DIRECTX7,"Button",BS_AUTORADIOBUTTON,14,37,48,12
|
||||
CONTROL "DirectX8",IDC_DIRECTX8,"Button",BS_AUTORADIOBUTTON,14,48,48,12
|
||||
CONTROL "DirectX9",IDC_DIRECTX9,"Button",BS_AUTORADIOBUTTON,14,59,47,12
|
||||
CONTROL "None",IDC_NODIRECTX,"Button",BS_AUTORADIOBUTTON,14,71,71,12
|
||||
CONTROL "None",IDC_NOEMULATESURFACE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,14,99,77,12
|
||||
CONTROL "Primary Surface",IDC_EMULATESURFACE,"Button",BS_AUTORADIOBUTTON,14,122,77,12
|
||||
CONTROL "Primary Buffer",IDC_EMULATEBUFFER,"Button",BS_AUTORADIOBUTTON,14,110,67,12
|
||||
GROUPBOX "DirectX Version Hook",IDC_STATIC,6,3,98,83,WS_GROUP
|
||||
GROUPBOX "Emulation",IDC_STATIC,6,88,98,49,WS_GROUP
|
||||
CONTROL "Handle DC",IDC_HANDLEDC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,26,78,12
|
||||
CONTROL "Auto Primary Surface Refresh",IDC_AUTOREFRESH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,38,126,9
|
||||
GROUPBOX "DirectDraw Surface handling",IDC_STATIC,112,3,181,158
|
||||
CONTROL "VIDEO->SYSTEM surf. on fail",IDC_VIDEOTOSYSTEMMEM,
|
||||
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,118,61,126,9
|
||||
CONTROL "Set 16BPP RGB565 encoding",IDC_USERGB565,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,50,126,9
|
||||
CONTROL "Suppress DX common errors",IDC_SUPPRESSDXERRORS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,73,127,10
|
||||
CONTROL "Remap Client Rect",IDC_CLIENTREMAPPING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,85,119,10
|
||||
CONTROL "Map GDI HDC to Primary DC",IDC_MAPGDITOPRIMARY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,15,119,10
|
||||
CONTROL "Make Backbuf attachable",IDC_BACKBUFATTACH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,96,119,10
|
||||
CONTROL "Blit from BackBuffer",IDC_BLITFROMBACKBUFFER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,107,119,10
|
||||
CONTROL "Suppress clipping",IDC_SUPPRESSCLIPPING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,119,119,10
|
||||
CONTROL "Full RECT Blit",IDC_FULLRECTBLT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,131,119,10
|
||||
CONTROL "Palette update don't Blit",IDC_NOPALETTEUPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,142,119,10
|
||||
LTEXT "DirectInput initial coord. and X,Y range",IDC_STATIC,19,194,146,9
|
||||
LTEXT "X",IDC_STATIC,13,209,9,9
|
||||
LTEXT "Y",IDC_STATIC,40,209,9,9
|
||||
LTEXT "(",IDC_STATIC,69,209,9,9
|
||||
LTEXT ",",IDC_STATIC,92,209,9,9
|
||||
LTEXT ")-(",IDC_STATIC,114,209,11,9
|
||||
LTEXT ",",IDC_STATIC,144,209,9,9
|
||||
LTEXT ")",IDC_STATIC,166,209,9,9
|
||||
EDITTEXT IDC_INITX,20,206,17,14,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_INITY,46,206,17,14,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MINX,72,206,17,14,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MINY,97,206,17,14,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MAXX,124,206,17,14,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
EDITTEXT IDC_MAXY,148,206,17,14,ES_AUTOHSCROLL,WS_EX_RIGHT
|
||||
CONTROL "DirectInput Hooking",IDC_HOOKDI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,179,97,12
|
||||
GROUPBOX "DirectInput",IDC_STATIC,7,169,286,64
|
||||
END
|
||||
|
||||
IDD_TAB_MOUSE DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "Correct mouse position",IDC_MODIFYMOUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,38,113,12
|
||||
CONTROL "Hide Cursor",IDC_HIDEHWCURSOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,15,117,10
|
||||
CONTROL "Intercept GDI Cursor Clipping",IDC_ENABLECLIPPING,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,85,124,10
|
||||
GROUPBOX "Cursor handling",IDC_STATIC,7,3,140,144
|
||||
CONTROL "Keep cursor within window",IDC_KEEPCURSORWITHIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,61,123,10
|
||||
CONTROL "Force cursor clipping",IDC_CLIPCURSOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,50,125,10
|
||||
CONTROL "Message processing",IDC_MESSAGEPROC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,96,115,10
|
||||
CONTROL "Keep cursor fixed",IDC_KEEPCURSORFIXED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,73,123,10
|
||||
CONTROL "fix WM_NCHITTEST",IDC_FIXNCHITTEST,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,107,115,10
|
||||
CONTROL "Show Cursor",IDC_SHOWHWCURSOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,27,117,10
|
||||
CONTROL "Slow down mouse polling",IDC_SLOW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,118,103,12
|
||||
END
|
||||
|
||||
IDD_TAB_TIMING DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "Limit",IDC_LIMITFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,19,33,10
|
||||
CONTROL "Skip",IDC_SKIPFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,31,31,10
|
||||
LTEXT "delay (msec)",IDC_STATIC,52,25,50,9
|
||||
GROUPBOX "Frame per Second",IDC_STATIC,7,7,140,78
|
||||
CONTROL "Show FPS on title",IDC_SHOWFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,60,84,10
|
||||
CONTROL "Time Stretch - initial:",IDC_TIMESTRETCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,123,87,10
|
||||
CONTROL "Show FPS overlay",IDC_SHOWFPSOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,72,84,10
|
||||
EDITTEXT IDC_MAXFPS,104,23,31,14,ES_AUTOHSCROLL | ES_NUMBER,WS_EX_RIGHT
|
||||
LISTBOX IDC_LISTTS,104,102,31,55,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
GROUPBOX "Time Stretching",IDC_STATIC,7,94,139,70
|
||||
END
|
||||
|
||||
IDD_TAB_WINDOW DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "Fix Window Frame Style",IDC_FIXWINFRAME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,16,120,10
|
||||
CONTROL "Prevent Win Maximize",IDC_PREVENTMAXIMIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,28,115,10
|
||||
GROUPBOX "Windows handling",IDC_STATIC,6,4,140,193
|
||||
CONTROL "Lock win coordinates",IDC_LOCKWINPOS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,39,115,10
|
||||
CONTROL "Hook CHILD windows",IDC_HOOKCHILDWIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,62,115,10
|
||||
CONTROL "Recover screen mode",IDC_RECOVERSCREENMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,74,115,10
|
||||
CONTROL "Refresh on win resize",IDC_REFRESHONRESIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,86,115,10
|
||||
CONTROL "Simulate 8BPP desktop",IDC_INIT8BPP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,97,115,10
|
||||
CONTROL "Simulate 16BPP desktop",IDC_INIT16BPP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,108,115,10
|
||||
CONTROL "Lock win style",IDC_LOCKWINSTYLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,51,115,10
|
||||
CONTROL "Fix Parent Window",IDC_FIXPARENTWIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,120,115,10
|
||||
CONTROL "Modal Style",IDC_MODALSTYLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,132,115,10
|
||||
CONTROL "Keep aspect ratio",IDC_KEEPASPECTRATIO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,143,115,10
|
||||
CONTROL "Force win resize",IDC_FORCEWINRESIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,154,115,10
|
||||
CONTROL "Hide multi-monitor config.",IDC_HIDEMULTIMONITOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,166,115,10
|
||||
CONTROL "Wallpaper mode",IDC_WALLPAPERMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,178,115,10
|
||||
END
|
||||
|
||||
IDD_TAB_EMPTY DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
END
|
||||
|
||||
IDD_TAB_OPENGL DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "OpenGL",IDC_STATIC,7,3,140,58
|
||||
LTEXT "Custom OpenGL library",IDC_STATIC,15,29,110,9
|
||||
CONTROL "Hook OpenGL",IDC_HOOKOPENGL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,15,115,10
|
||||
EDITTEXT IDC_OPENGLLIB,13,41,126,14,ES_AUTOHSCROLL
|
||||
END
|
||||
|
||||
IDD_TAB_COMPAT DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Fake Version",IDC_STATIC,7,3,139,64
|
||||
CONTROL "",IDC_FAKEVERSION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,26,12,10
|
||||
LISTBOX IDC_LISTFAKE,39,15,98,43,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
CONTROL "Handle Exceptions",IDC_HANDLEEXCEPTIONS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,201,109,12
|
||||
CONTROL "Limit available resources",IDC_LIMITRESOURCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,212,109,12
|
||||
CONTROL "Suppress IME",IDC_SUPPRESSIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,190,109,12
|
||||
END
|
||||
|
||||
IDD_TAB_GDI DIALOGEX 0, 0, 300, 240
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "Fix TextOutA placement",IDC_FIXTEXTOUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,26,125,10
|
||||
GROUPBOX "GDI Handling",IDC_STATIC,6,3,140,51
|
||||
CONTROL "Hook GDI",IDC_HOOKGDI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,15,119,10
|
||||
CONTROL "Disable setting gamma ramp",IDC_DISABLEGAMMARAMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,38,119,10
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@ -410,9 +475,9 @@ BEGIN
|
||||
IDD_TARGET, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 669
|
||||
RIGHTMARGIN, 267
|
||||
TOPMARGIN, 3
|
||||
BOTTOMMARGIN, 218
|
||||
BOTTOMMARGIN, 241
|
||||
HORZGUIDE, 91
|
||||
END
|
||||
|
||||
@ -431,6 +496,86 @@ BEGIN
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 58
|
||||
END
|
||||
|
||||
IDD_TAB_PROGRAM, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_LOG, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_DIRECTX, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_MOUSE, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_TIMING, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_WINDOW, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_EMPTY, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_OPENGL, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_COMPAT, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
|
||||
IDD_TAB_GDI, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 293
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 233
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
@ -1,20 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
||||
# Visual Studio 2005
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dxwndhost", "dxwndhost.vs2005.vcproj", "{FD0B0234-8EC5-43C0-A384-1B881DD3D925}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
Binary file not shown.
@ -1,482 +0,0 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
Name="dxwndhost"
|
||||
ProjectGUID="{FD0B0234-8EC5-43C0-A384-1B881DD3D925}"
|
||||
RootNamespace="dxwndhost"
|
||||
Keyword="MFCProj"
|
||||
>
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"
|
||||
/>
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory=".\Release"
|
||||
IntermediateDirectory=".\Release"
|
||||
ConfigurationType="1"
|
||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||
UseOfMFC="1"
|
||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||
CharacterSet="2"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
PreprocessorDefinitions="NDEBUG"
|
||||
MkTypLibCompatible="true"
|
||||
SuppressStartupBanner="true"
|
||||
TargetEnvironment="1"
|
||||
TypeLibraryName=".\Release/dxwndhost.tlb"
|
||||
HeaderFileName=""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
InlineFunctionExpansion="1"
|
||||
AdditionalIncludeDirectories="../Include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
EnableFunctionLevelLinking="true"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderThrough="stdafx.h"
|
||||
PrecompiledHeaderFile=".\Release/dxwndhost.pch"
|
||||
AssemblerListingLocation=".\Release/"
|
||||
ObjectFile=".\Release/"
|
||||
ProgramDataBaseFileName=".\Release/"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="true"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG"
|
||||
Culture="0"
|
||||
AdditionalIncludeDirectories=".."
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="../dll/Release/dxwnd.lib shlwapi.lib"
|
||||
OutputFile="../Release/dxwnd.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
ProgramDatabaseFile=".\Release/dxwnd.pdb"
|
||||
SubSystem="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
SuppressStartupBanner="true"
|
||||
OutputFile=".\Release/dxwndhost.bsc"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory=".\Debug"
|
||||
IntermediateDirectory=".\Debug"
|
||||
ConfigurationType="1"
|
||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||
UseOfMFC="1"
|
||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||
CharacterSet="2"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
PreprocessorDefinitions="_DEBUG"
|
||||
MkTypLibCompatible="true"
|
||||
SuppressStartupBanner="true"
|
||||
TargetEnvironment="1"
|
||||
TypeLibraryName=".\Debug/dxwndhost.tlb"
|
||||
HeaderFileName=""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../Include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderThrough="stdafx.h"
|
||||
PrecompiledHeaderFile=".\Debug/dxwndhost.pch"
|
||||
AssemblerListingLocation=".\Debug/"
|
||||
ObjectFile=".\Debug/"
|
||||
ProgramDataBaseFileName=".\Debug/"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="true"
|
||||
DebugInformationFormat="4"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG"
|
||||
Culture="1041"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="../dll/Debug/dxwnd.lib"
|
||||
OutputFile="../Debug/dxwnd.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
GenerateDebugInformation="true"
|
||||
ProgramDatabaseFile=".\Debug/dxwnd.pdb"
|
||||
SubSystem="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
SuppressStartupBanner="true"
|
||||
OutputFile=".\Debug/dxwndhost.bsc"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
>
|
||||
<File
|
||||
RelativePath="dxwndhost.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhost.rc"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhostDoc.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhostView.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="MainFrm.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\StatusDialog.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="StdAfx.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
UsePrecompiledHeader="1"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
UsePrecompiledHeader="1"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\SystemTray.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\SystemTray.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="TargetDlg.cpp"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions=""
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl"
|
||||
>
|
||||
<File
|
||||
RelativePath="..\Include\dxwnd.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhost.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhostDoc.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhostView.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="MainFrm.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="Resource.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\StatusDialog.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="StdAfx.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="TargetDlg.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Resource Files"
|
||||
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\res\dxw1.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\dxw2.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\dxw5.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="res\dxwndhost.rc2"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\gho.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\idr_main.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run+33.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run+66.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run-0.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run-180.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run-33.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run-66.ico"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\res\run-90.ico"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
<Global
|
||||
Name="RESOURCE_FILE"
|
||||
Value="dxwndhost.rc"
|
||||
/>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
Binary file not shown.
@ -218,6 +218,10 @@
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\dxTabCtrl.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="dxwndhost.cpp"
|
||||
>
|
||||
@ -352,6 +356,42 @@
|
||||
RelativePath=".\SystemTray.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabCompat.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabDirectX.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabGDI.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabLogs.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabMouse.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabOpenGL.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabProgram.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabTiming.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabWindow.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="TargetDlg.cpp"
|
||||
>
|
||||
@ -381,6 +421,10 @@
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\dxTabCtrl.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Include\dxwnd.h"
|
||||
>
|
||||
@ -413,6 +457,42 @@
|
||||
RelativePath="StdAfx.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabCompat.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabDirectX.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabGDI.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabLogs.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabMouse.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabOpenGL.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabProgram.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabTiming.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\TabWindow.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="TargetDlg.h"
|
||||
>
|
||||
|
@ -372,6 +372,8 @@ void CDxwndhostView::OnModify()
|
||||
dlg.m_OpenGLLib = TargetMaps[i].OpenGLLib;
|
||||
dlg.m_Title = TitleMaps[i].title;
|
||||
dlg.m_UnNotify = TargetMaps[i].flags & UNNOTIFY ? 1 : 0;
|
||||
dlg.m_Windowize = TargetMaps[i].flags2 & WINDOWIZE ? 1 : 0;
|
||||
dlg.m_NoBanner = TargetMaps[i].flags2 & NOBANNER ? 1 : 0;
|
||||
dlg.m_EmulateSurface = TargetMaps[i].flags & EMULATESURFACE ? 1 : 0;
|
||||
dlg.m_NoEmulateSurface = TargetMaps[i].flags & EMULATEFLAGS ? 0 : 1;
|
||||
dlg.m_EmulateBuffer = TargetMaps[i].flags & EMULATEBUFFER ? 1 : 0;
|
||||
@ -388,6 +390,8 @@ void CDxwndhostView::OnModify()
|
||||
dlg.m_ImportTable = TargetMaps[i].tflags & OUTIMPORTTABLE ? 1 : 0;
|
||||
dlg.m_HandleDC = TargetMaps[i].flags & HANDLEDC ? 1 : 0;
|
||||
dlg.m_HandleExceptions = TargetMaps[i].flags & HANDLEEXCEPTIONS ? 1 : 0;
|
||||
dlg.m_SuppressIME = TargetMaps[i].flags2 & SUPPRESSIME ? 1 : 0;
|
||||
dlg.m_LimitResources = TargetMaps[i].flags2 & LIMITRESOURCES ? 1 : 0;
|
||||
dlg.m_SaveLoad = TargetMaps[i].flags & SAVELOAD ? 1 : 0;
|
||||
dlg.m_SlowDown = TargetMaps[i].flags & SLOWDOWN ? 1 : 0;
|
||||
dlg.m_BlitFromBackBuffer = TargetMaps[i].flags & BLITFROMBACKBUFFER ? 1 : 0;
|
||||
@ -459,6 +463,8 @@ void CDxwndhostView::OnModify()
|
||||
TargetMaps[i].flags2 = 0;
|
||||
TargetMaps[i].tflags = 0;
|
||||
if(dlg.m_UnNotify) TargetMaps[i].flags |= UNNOTIFY;
|
||||
if(dlg.m_Windowize) TargetMaps[i].flags2 |= WINDOWIZE;
|
||||
if(dlg.m_NoBanner) TargetMaps[i].flags2 |= NOBANNER;
|
||||
if(dlg.m_NoEmulateSurface) {
|
||||
dlg.m_EmulateSurface = FALSE;
|
||||
dlg.m_EmulateBuffer = FALSE;
|
||||
@ -489,6 +495,8 @@ void CDxwndhostView::OnModify()
|
||||
if(dlg.m_ImportTable) TargetMaps[i].tflags |= OUTIMPORTTABLE;
|
||||
if(dlg.m_HandleDC) TargetMaps[i].flags |= HANDLEDC;
|
||||
if(dlg.m_HandleExceptions) TargetMaps[i].flags |= HANDLEEXCEPTIONS;
|
||||
if(dlg.m_LimitResources) TargetMaps[i].flags2 |= LIMITRESOURCES;
|
||||
if(dlg.m_SuppressIME) TargetMaps[i].flags2 |= SUPPRESSIME;
|
||||
if(dlg.m_SaveLoad) TargetMaps[i].flags |= SAVELOAD;
|
||||
if(dlg.m_SlowDown) TargetMaps[i].flags |= SLOWDOWN;
|
||||
if(dlg.m_BlitFromBackBuffer) TargetMaps[i].flags |= BLITFROMBACKBUFFER;
|
||||
@ -753,6 +761,8 @@ void CDxwndhostView::OnAdd()
|
||||
TargetMaps[i].flags2 = 0;
|
||||
TargetMaps[i].tflags = 0;
|
||||
if(dlg.m_UnNotify) TargetMaps[i].flags |= UNNOTIFY;
|
||||
if(dlg.m_Windowize) TargetMaps[i].flags2 |= WINDOWIZE;
|
||||
if(dlg.m_NoBanner) TargetMaps[i].flags2 |= NOBANNER;
|
||||
if(dlg.m_NoEmulateSurface) {
|
||||
dlg.m_EmulateSurface = FALSE;
|
||||
dlg.m_EmulateBuffer = FALSE;
|
||||
@ -783,6 +793,8 @@ void CDxwndhostView::OnAdd()
|
||||
if(dlg.m_ImportTable) TargetMaps[i].tflags |= OUTIMPORTTABLE;
|
||||
if(dlg.m_HandleDC) TargetMaps[i].flags |= HANDLEDC;
|
||||
if(dlg.m_HandleExceptions) TargetMaps[i].flags |= HANDLEEXCEPTIONS;
|
||||
if(dlg.m_SuppressIME) TargetMaps[i].flags2 |= SUPPRESSIME;
|
||||
if(dlg.m_LimitResources) TargetMaps[i].flags2 |= LIMITRESOURCES;
|
||||
if(dlg.m_SaveLoad) TargetMaps[i].flags |= SAVELOAD;
|
||||
if(dlg.m_SlowDown) TargetMaps[i].flags |= SLOWDOWN;
|
||||
if(dlg.m_BlitFromBackBuffer) TargetMaps[i].flags |= BLITFROMBACKBUFFER;
|
||||
|
17
makebuild.bat
Normal file
17
makebuild.bat
Normal file
@ -0,0 +1,17 @@
|
||||
del dll\dxwnd.*.user
|
||||
del dll\dxwnd.*.ncb
|
||||
|
||||
del host\dxwndhost.*.user
|
||||
del host\dxwndhost.*.ncb
|
||||
|
||||
copy Release\dxwnd.exe build
|
||||
copy Release\dxwnd.dll build
|
||||
|
||||
del dll\Debug\*.*
|
||||
del dll\Release\*.*
|
||||
|
||||
del host\Debug\*.*
|
||||
del host\Release\*.*
|
||||
|
||||
echo build done
|
||||
pause
|
Loading…
x
Reference in New Issue
Block a user