mirror of
https://github.com/DxWnd/DxWnd.reloaded
synced 2024-12-30 09:25:35 +01:00
v2_03_75_srcfix1
Former-commit-id: 48698f76b40e032f6da6db17c39ae96c9eb7ff66
This commit is contained in:
parent
1a522bb76b
commit
2c28c3a77b
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7fd28d3540f74ceab1034bff9cd6fd4059e759568c2c207393d61fe20f0367da
|
||||
oid sha256:3a374cec9f980973164610e2661704aa5658ea7e19901b5e61aa72207c7624b3
|
||||
size 660480
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b4833fd88b00f606494df68b4af21d27e5f419a90686cb407e0539166dea762e
|
||||
size 642560
|
||||
oid sha256:d041afd6e18a75dc3b7316a913318827696603e87d9f8e6a06da4da57ccdbf53
|
||||
size 643072
|
||||
|
41
build/dxwnd.ini
Normal file
41
build/dxwnd.ini
Normal file
@ -0,0 +1,41 @@
|
||||
[target]
|
||||
title0=Mechwarrior 3 (high res)
|
||||
path0=D:\Games\Mechwarrior 3 - RIP\Mech3.exe
|
||||
launchpath0=
|
||||
module0=
|
||||
opengllib0=
|
||||
notes0=
|
||||
registry0=\n[HKEY_LOCAL_MACHINE\Software]\n[HKEY_LOCAL_MACHINE\Software\MicroProse]\n[HKEY_LOCAL_MACHINE\Software\MicroProse\MechWarrior 3 EP1]\n[HKEY_LOCAL_MACHINE\Software\MicroProse\MechWarrior 3 EP1\1.0]\n"Program"="..\\"\n"Version"="1.0"\n"InstallOptions"=dword:00050707\n\n[HKEY_LOCAL_MACHINE\Software\Microsoft]\n[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectPlay]\n[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectPlay\Applications]\n[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectPlay\Applications\MechWarrior 3 EP1]\n"Guid"="{FA96C421-18DD-11D3-95AF-0060089877F0}"\n"File"="Mech3.exe"\n"CommandLine"="\n"Path"=".\\"\n"CurrentDirectory"=".\\"\n\n[HKEY_CURRENT_USER\Software]\n[HKEY_CURRENT_USER\Software\MicroProse]\n[HKEY_CURRENT_USER\Software\MicroProse\MechWarrior 3]\n[HKEY_CURRENT_USER\Software\MicroProse\MechWarrior 3\1.0]\n"InGameVMode"=dword:0000000a
|
||||
ver0=0
|
||||
coord0=0
|
||||
flag0=136331398
|
||||
flagg0=1207959552
|
||||
flagh0=9236
|
||||
flagi0=1277165574
|
||||
flagj0=4224
|
||||
flagk0=65600
|
||||
flagl0=0
|
||||
flagm0=0
|
||||
tflag0=0
|
||||
dflag0=0
|
||||
posx0=50
|
||||
posy0=50
|
||||
sizx0=800
|
||||
sizy0=600
|
||||
maxfps0=0
|
||||
initts0=0
|
||||
winver0=0
|
||||
maxres0=-1
|
||||
swapeffect0=0
|
||||
maxddinterface0=7
|
||||
slowratio0=1
|
||||
title1=Mechwarrior 3 (high res)
|
||||
module1=
|
||||
opengllib1=
|
||||
dflag1=0
|
||||
[window]
|
||||
posx=915
|
||||
posy=519
|
||||
sizx=320
|
||||
sizy=200
|
||||
exportpath=D:\DxWnd\exports.ok\
|
31
build/exports/Mechwarrior 3 (high res).dxw
Normal file
31
build/exports/Mechwarrior 3 (high res).dxw
Normal file
@ -0,0 +1,31 @@
|
||||
[target]
|
||||
title0=Mechwarrior 3 (high res)
|
||||
path0=D:\Games\Mechwarrior 3 - RIP\Mech3.exe
|
||||
launchpath0=
|
||||
module0=
|
||||
opengllib0=
|
||||
notes0=
|
||||
registry0=\n[HKEY_LOCAL_MACHINE\Software]\n[HKEY_LOCAL_MACHINE\Software\MicroProse]\n[HKEY_LOCAL_MACHINE\Software\MicroProse\MechWarrior 3 EP1]\n[HKEY_LOCAL_MACHINE\Software\MicroProse\MechWarrior 3 EP1\1.0]\n"Program"="..\\"\n"Version"="1.0"\n"InstallOptions"=dword:00050707\n\n[HKEY_LOCAL_MACHINE\Software\Microsoft]\n[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectPlay]\n[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectPlay\Applications]\n[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectPlay\Applications\MechWarrior 3 EP1]\n"Guid"="{FA96C421-18DD-11D3-95AF-0060089877F0}"\n"File"="Mech3.exe"\n"CommandLine"="\n"Path"=".\\"\n"CurrentDirectory"=".\\"\n\n[HKEY_CURRENT_USER\Software]\n[HKEY_CURRENT_USER\Software\MicroProse]\n[HKEY_CURRENT_USER\Software\MicroProse\MechWarrior 3]\n[HKEY_CURRENT_USER\Software\MicroProse\MechWarrior 3\1.0]\n"InGameVMode"=dword:0000000a\n
|
||||
ver0=0
|
||||
coord0=0
|
||||
flag0=136331398
|
||||
flagg0=1207959552
|
||||
flagh0=9236
|
||||
flagi0=1277165574
|
||||
flagj0=4224
|
||||
flagk0=65600
|
||||
flagl0=0
|
||||
flagm0=0
|
||||
tflag0=0
|
||||
dflag0=0
|
||||
posx0=50
|
||||
posy0=50
|
||||
sizx0=800
|
||||
sizy0=600
|
||||
maxfps0=0
|
||||
initts0=0
|
||||
winver0=0
|
||||
maxres0=-1
|
||||
swapeffect0=0
|
||||
maxddinterface0=7
|
||||
slowratio0=1
|
@ -1148,11 +1148,14 @@ fix: logging of dwFOURCC field text value
|
||||
fix: Injection routine: avoid closing a few handles that should not be closed, simplified logic.
|
||||
add: GUI global configuration panel
|
||||
|
||||
v2.03.75
|
||||
v2.03.75/fix1
|
||||
fix: handling of restore previous screen mode when a primary fullscreen window is terminated. Fixes "Dethkarz" initialization error after 8BPP intro movie termination.
|
||||
fix: SystemParameterInfo for SPI_SETSCREENSAVERRUNNING does not return an error
|
||||
fix: added default pixel format specification to backbuffer: improves the possibility of ZBUFFER attach
|
||||
fix: recovery of DDERR_SURFACELOST error on primary surface in PrimaryStretchBlt routine.
|
||||
fix: possible palette handle leakage
|
||||
fix: DC leakage caused by CreateCompatibleDC. Fix "Mechwarrior 3" repeated play sessions.
|
||||
add: GUI drag & drop of game executables
|
||||
add: GUI drag & drop of game executables
|
||||
fix: RegQueryValueEx bad retcode when Data ptr is NULL
|
||||
fix: recovered support for Windows XP
|
||||
fix: fake registry did not read last registry line! Fixed.
|
@ -160,6 +160,7 @@ static FILE *OpenFakeRegistry()
|
||||
strcpy(p, "dxwnd.reg");
|
||||
freg = fopen(sSourcePath,"w");
|
||||
fwrite(FileBuf, 1, strlen(FileBuf), freg);
|
||||
fputs("\n", freg);
|
||||
fclose(freg);
|
||||
free(FileBuf);
|
||||
}
|
||||
@ -256,7 +257,7 @@ static DWORD GetKeyValue(
|
||||
char RegBuf[MAX_PATH+1];
|
||||
DWORD cbData=0;
|
||||
|
||||
OutTrace("GetKeyValue: ValueName=%s", lpValueName);
|
||||
//OutTrace("GetKeyValue: ValueName=%s\n", lpValueName);
|
||||
fgets(RegBuf, 256, regf);
|
||||
pData=&RegBuf[strlen(lpValueName)+3];
|
||||
lpb = lpData;
|
||||
@ -294,6 +295,8 @@ static DWORD GetKeyValue(
|
||||
else
|
||||
res=ERROR_MORE_DATA;
|
||||
}
|
||||
else
|
||||
res=ERROR_SUCCESS; // data not needed
|
||||
if (lpcbData) *lpcbData=sizeof(DWORD);
|
||||
OutTraceR("%s: type=REG_DWORD cbData=%x Data=0x%x\n",
|
||||
ApiName, lpcbData ? *lpcbData : 0, val);
|
||||
@ -448,11 +451,20 @@ LONG WINAPI extRegQueryValueEx(
|
||||
}
|
||||
|
||||
regf=OpenFakeRegistry();
|
||||
if(regf==NULL) return ERROR_FILE_NOT_FOUND;
|
||||
if(regf==NULL) {
|
||||
OutTraceR("RegQueryValueEx: error in OpenFakeRegistry err=%s\n", GetLastError());
|
||||
return ERROR_FILE_NOT_FOUND;
|
||||
}
|
||||
res = SeekFakeKey(regf, hKey);
|
||||
if(res != ERROR_SUCCESS) return res;
|
||||
if(res != ERROR_SUCCESS) {
|
||||
OutTraceR("RegQueryValueEx: error in SeekFakeKey res=%x hKey=%x\n", res, hKey);
|
||||
return res;
|
||||
}
|
||||
res = SeekValueName(regf, lpValueName);
|
||||
if(res != ERROR_SUCCESS) return res;
|
||||
if(res != ERROR_SUCCESS) {
|
||||
OutTraceR("RegQueryValueEx: error in SeekValueName res=%x ValueName=%s\n", res, lpValueName);
|
||||
return res;
|
||||
}
|
||||
res = GetKeyValue(regf, "RegQueryValueEx", lpValueName, lpType, lpData, lpcbData);
|
||||
if(IsTraceR) LogKeyValue("RegQueryValueEx", res, lpType, lpData, lpcbData);
|
||||
fclose(regf);
|
||||
|
@ -27,7 +27,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "TlHelp32.h"
|
||||
|
||||
#define VERSION "2.03.75"
|
||||
#define VERSION "2.03.75.fix1"
|
||||
|
||||
#define DDTHREADLOCK 1
|
||||
//#define LOCKTHREADS
|
||||
|
Binary file not shown.
@ -177,9 +177,6 @@ BOOL CTabProgram::OnInitDialog()
|
||||
CStatic *IconBox;
|
||||
IFormat *m_pRelIntegerFormat = new(RelIntegerFormat);
|
||||
|
||||
//ChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD);
|
||||
//ChangeWindowMessageFilter(WM_COPYDATA, MSGFLT_ADD);
|
||||
//ChangeWindowMessageFilter(0x0049, MSGFLT_ADD);
|
||||
DragAcceptFiles();
|
||||
CDragEdit *pEditFile;
|
||||
pEditFile = (CDragEdit *)this->GetDlgItem(IDC_FILE);
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1154,11 +1154,19 @@ void CDxwndhostView::OnInitialUpdate()
|
||||
LV_COLUMN listcol;
|
||||
LV_ITEM listitem;
|
||||
int i;
|
||||
typedef BOOL (WINAPI *ChangeWindowMessageFilter_Type)(UINT, DWORD);
|
||||
ChangeWindowMessageFilter_Type pChangeWindowMessageFilter;
|
||||
|
||||
DragAcceptFiles();
|
||||
ChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD);
|
||||
ChangeWindowMessageFilter(WM_COPYDATA, MSGFLT_ADD);
|
||||
ChangeWindowMessageFilter(0x0049, MSGFLT_ADD);
|
||||
// the ChangeWindowMessageFilter is not available, nor necessary, on XP
|
||||
HMODULE hUser32;
|
||||
hUser32 = GetModuleHandle("user32.dll");
|
||||
pChangeWindowMessageFilter = (ChangeWindowMessageFilter_Type)GetProcAddress(hUser32, "ChangeWindowMessageFilter");
|
||||
if(pChangeWindowMessageFilter){
|
||||
(*pChangeWindowMessageFilter)(WM_DROPFILES, MSGFLT_ADD);
|
||||
(*pChangeWindowMessageFilter)(WM_COPYDATA, MSGFLT_ADD);
|
||||
(*pChangeWindowMessageFilter)(0x0049, MSGFLT_ADD);
|
||||
}
|
||||
|
||||
// Create 256 color image lists
|
||||
HIMAGELIST hList = ImageList_Create(32,32, ILC_COLOR8 |ILC_MASK , 4, 1);
|
||||
@ -1595,6 +1603,7 @@ void CDxwndhostView::OnSetRegistry()
|
||||
}
|
||||
|
||||
fwrite(Registry, strlen(Registry), 1, regfp);
|
||||
fputs("\n", regfp);
|
||||
fclose(regfp);
|
||||
}
|
||||
|
||||
@ -2641,6 +2650,7 @@ void CDxwndhostView::OnRun()
|
||||
regfp=fopen("dxwnd.reg", "w");
|
||||
if(regfp==NULL)MessageBox("Error writing virtual registry file", "Error", MB_ICONERROR|MB_OK);
|
||||
fwrite(Registry, strlen(Registry), 1, regfp);
|
||||
fputs("\n", regfp);
|
||||
fclose(regfp);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user