War2.ru Slogan
News: Don't forget to join Channel: Trivia for trivia!


Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
Welcome to the forums! We're glad to have you here! :) You can register your account here, then feel free to introduce yourself in the Server.War2.ru board & let us know who you are on the server.

War2 graphics for Win Vista/7/8/8.1/10/2012 fixed 82676  280

Administrator Ogre Posts: 1457 Karma: +141/-9 *****

iL

  • Administrator
  • Ogre
  • *****
  • *
  • Posts: 1457
    • View Profile
*

iL

Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #135 on: February 17, 2016, 06:07:47 AM »
That was my idea to look into ERR-file from war2-directory.
It have been generated by war2 process during crash.
Not sure it's possible to add symbols for that ERR-file.

I spent last several evenings with experiments on dump-files.
If crash causes inside war2 process, you will not be able to find symbols for war2.
I don't think we need symbols from microsoft because we don't plan to debug windows ddls.

I cant because the broken war2 makes my mouse and window, bugged out so if i get the app open i cant click anything
Yes, when you get war2 crashed you press debug and then you are not able to use your GUI. I made my experiments with war2 loading in window mode. (That will not a goal for this situation).
Appreciate any ideas how to simply bypass that GUI blocking.

I also tried ProcDump by Mark Russinovich to get DMP-file, but stack trace in my test contained 1 address only. Instead of visual studio debugger in window mode (about 10 addresses in stack trace).
And then i looked into my ERR-file in war2 directory. In contained all the addresses i saw in visual studio debugger. Much more info than in full memory dump in DMP.

Maybe aqrit (or anybody else) can look into that addresses to find the problem.
As i understood from this log, the problem is related to this line:
Quote
10001284 0019ED54 0001:00000284 C:\War2anti\ddraw.dll
More precisely, it's already broken here, so need to look to the previous address (not listed in stack trace).
I'd say call for 0019ED54 looks like located here:
Quote
0x0019ebfc: 14 ec 19 00  b2 2a a3 6d  00 00 00 00  0c ed 19 00  .....*.m........
So location for previous call located here:
Quote
0x0019ec0c: 57 af a6 ed  2c ec 19 00  9e 73 c3 65  58 7f 59 00  W...,....s.eX.Y.
So, i'd look into aqrit's ddraw.dll, into function begin at 0019ec2c to check what happens there before call to 0019ed0c
Of course, 0019ED54 is also interesting address to look into...

Debugging in Visual Studio with the symbols file would be most preferrable.
If anybody can make symbols for current ddraw.dll, and explain how to enable it for degubbing that file, that would be appreciated.
Not sure if symbols can be built after ddraw.dll or both ddraw.dll and it's symbols should be created simultaneously...

Code:
Also, tupac, what version did you use for that log?
Also, can you attach your ddraw.dll  you used for that? (Not sure if aqrit rebuilt that dll and updated the link recently).
Death Knight Posts: 2639 Karma: +83/-4 *********

tupac

  • Death Knight
  • *********
  • *
  • Posts: 2639
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #136 on: February 17, 2016, 01:36:27 PM »
a new minimal version for Win8/10 was uploaded (same url) on the 20th

I plan on re-writing the main version again...
goals:
1. remove redraw kludge
2. real full-screen mode
3. switch to D3D9Ex or D3D11 for triple buffering with vsync

The "vista platform update for SP2" back ported DX11 but it isn't clear to me if the Win7 DX9Ex FLIPEX stuff was also back ported at the same time.

http://www.bitpatch.com/downloads/war2_ddraw_minimal.zip
Peon Posts: 41 Karma: +5/-0 **

aqrit

  • Peon
  • **
  • Posts: 41
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #137 on: February 17, 2016, 04:57:58 PM »
Quote
10001284 0019ED54 0001:00000284 C:\War2anti\ddraw.dll
the return address doesn't line up for the current version...?
if the local ddraw.dll loaded at address 0x10000000 then the return address should be 0x10001288 not 0x10001284 ?
Grunt Posts: 80 Karma: +7/-0 ***

xboi209

  • Grunt
  • ***
  • Posts: 80
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #138 on: February 18, 2016, 04:24:07 PM »
Use this DLL: http://www.mediafire.com/download/pf5q8jh9yysatfh/ddraw_xboi_debug.zip
Put the .pdb in the same folder as the DLL. When W2 crashes, you should click on the Debug button from the dialog that pops up and open with Visual Studio. If not, try ctrl+alt+del to open the task manager, go to the processes tab, right click on the W2 process, and click Create a dump file and/or click Debug.
Administrator Ogre Posts: 1457 Karma: +141/-9 *****

iL

  • Administrator
  • Ogre
  • *****
  • *
  • Posts: 1457
    • View Profile
*

iL

Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #139 on: February 19, 2016, 03:32:01 AM »
the return address doesn't line up for the current version...?
if the local ddraw.dll loaded at address 0x10000000 then the return address should be 0x10001288 not 0x10001284 ?
Checked also, 1284 point to the middle of operand, looks like different version.
Also, can you attach your ddraw.dll  you used for that? (Not sure if aqrit rebuilt that dll and updated the link recently).
Looks like exactly what i talked about: you dl'ed file, got an error, and after that aqrit rebuild ddraw and reupload it to the same url. So your dump is useless without your dll.
Administrator Ogre Posts: 1457 Karma: +141/-9 *****

iL

  • Administrator
  • Ogre
  • *****
  • *
  • Posts: 1457
    • View Profile
*

iL

Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #140 on: February 19, 2016, 04:10:58 AM »
BTW: report from kapsersky antivirus for war2_ddraw_minimal.zip: HEUR:Trojan.Win32.Generic

No such warning for other versions: test2,3,4 and ddraw_xboi_debug

Just checked:
https://www.virustotal.com/ru/file/30ef4474d3149cc430fd644d9d0a540a1794bef2127e3077c2f7b7eed68365f4/analysis/1455873140/

https://www.virustotal.com/ru/file/4eabd28c314993032d4dd13b03ac4072b07cfbac24151058d085b9453b4a5423/analysis/1455873209/
Berserker Posts: 719 Karma: +32/-3 *****

{Lance}

  • Berserker
  • *****
  • Posts: 719
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #141 on: February 19, 2016, 11:27:31 AM »
That is a common false positive for anything that manipulates memory in a non-standard'ish fashion.
Death Knight Posts: 2639 Karma: +83/-4 *********

tupac

  • Death Knight
  • *********
  • *
  • Posts: 2639
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #142 on: February 19, 2016, 01:19:45 PM »
Use this DLL: http://www.mediafire.com/download/pf5q8jh9yysatfh/ddraw_xboi_debug.zip
Put the .pdb in the same folder as the DLL. When W2 crashes, you should click on the Debug button from the dialog that pops up and open with Visual Studio. If not, try ctrl+alt+del to open the task manager, go to the processes tab, right click on the W2 process, and click Create a dump file and/or click Debug.

Your ddraw was error for me...... i cant use task manager, or use visual studio or i would :( war2 frozen on top of all those windows and i cant get control when debugging...



Code: [Select]

------------------------------------------------------
PROGRAM VERSION: 2.0.2.0
COMPUTER NAME: POWERMACHINE
USER NAME:
TIME: 02/19/16 13:05:38.103
INFO:

Exception code: C0000005 ACCESS_VIOLATION
Fault address: 72433204 01:00042204 C:\WINDOWS\system32\ddraw.dll

Registers:
EAX:00000000
EBX:00004000
ECX:00853E68
EDX:80808080
ESI:00853E68
EDI:80808080
CS:EIP:0023:72433204
SS:ESP:002B:0019EA38 EBP:0019EA80
DS:002B ES:002B FS:0053 GS:002B
Flags:00210246
Call stack:
Address  Frame    Logical addr  Module
72433204 0019EA80 0001:00042204 C:\WINDOWS\system32\ddraw.dll
7242B47D 0019EAB4 0001:0003A47D C:\WINDOWS\system32\ddraw.dll
75CB84F3 0019EAE0 0001:000374F3 C:\WINDOWS\SYSTEM32\USER32.dll
75C96C40 0019EB88 0001:00015C40 C:\WINDOWS\SYSTEM32\USER32.dll
75C96820 0019EBE8 0001:00015820 C:\WINDOWS\SYSTEM32\USER32.dll
75C9D169 0019EC28 0001:0001C169 C:\WINDOWS\SYSTEM32\USER32.dll
779D8E76 0019EC94 0001:00077E76 C:\WINDOWS\SYSTEM32\ntdll.dll
75C9CBC4 0019ECCC 0001:0001BBC4 C:\WINDOWS\SYSTEM32\USER32.dll
15010DC9 004AD984 0001:0000FDC9 C:\War2Combat401\Storm.dll

Stack bytes:
0x0019ea38: 78 ad 7c 00  a0 7c 7a 00  58 ea 7c 00  1c 2b 43 72  x.|..|z.X.|..+Cr
0x0019ea48: 01 00 00 00  60 30 7d 00  7c ba 42 72  01 00 00 00  ....`0}.|.Br....
0x0019ea58: fa 0d cd 00  78 ad 7c 00  58 ea 7c 00  01 00 00 00  ....x.|.X.|.....
0x0019ea68: 40 7a 7a 00  00 00 00 00  60 30 7d 00  01 00 00 00  @zz.....`0}.....
0x0019ea78: 00 00 00 00  01 00 00 00  b4 ea 19 00  7d b4 42 72  ............}.Br
0x0019ea88: 00 00 00 00  01 00 00 00  20 b0 42 72  00 00 00 00  ........ .Br....
0x0019ea98: 70 17 00 00  00 00 00 00  3e 11 00 00  d0 ef 45 00  p.......>.....E.
0x0019eaa8: 00 00 00 00  51 70 4d 35  00 00 00 00  e0 ea 19 00  ....QpM5........
0x0019eab8: f3 84 cb 75  fa 0d cd 00  1c 00 00 00  00 00 00 00  ...u............
0x0019eac8: 70 17 00 00  00 00 00 00  cd ab ba dc  70 17 00 00  p...........p...
0x0019ead8: 20 b0 42 72  00 00 00 00  88 eb 19 00  40 6c c9 75   .Br........@l.u
0x0019eae8: 20 b0 42 72  fa 0d cd 00  1c 00 00 00  00 00 00 00   .Br............
0x0019eaf8: 70 17 00 00  96 c8 8a 35  00 00 00 00  00 00 00 40  p......5.......@
0x0019eb08: 1c 00 00 00  24 00 00 00  01 00 00 00  00 00 00 00  ....$...........
0x0019eb18: 00 00 00 00  30 00 00 00  ff ff ff ff  ff ff ff ff  ....0...........
0x0019eb28: 18 6b c9 75  00 00 00 00  00 00 00 00  00 00 00 00  .k.u............
0x0019eb38: 00 00 00 00  20 b0 42 72  00 00 00 00  00 00 00 00  .... .Br........
0x0019eb48: 00 00 00 00  f8 09 a2 00  00 00 00 00  00 00 00 00  ................
0x0019eb58: 01 00 00 00  00 00 00 00  00 00 00 00  fa 0d cd 00  ................
0x0019eb68: 00 00 00 00  96 c8 8a 35  00 00 00 00  68 e4 19 00  .......5....h...
0x0019eb78: d8 eb 19 00  f0 e5 cb 75  36 08 42 40  00 00 00 00  .......u6.B@....
0x0019eb88: e8 eb 19 00  20 68 c9 75  20 b0 42 72  00 00 00 00  .... h.u .Br....
0x0019eb98: 1c 00 00 00  00 00 00 00  70 17 00 00  00 80 25 00  ........p.....%.
0x0019eba8: 01 00 00 00  f6 c8 8a 35  00 00 00 00  90 ad 9e 77  .......5.......w
0x0019ebb8: 01 00 00 00  11 00 00 00  00 00 00 00  00 00 00 00  ................
0x0019ebc8: fa 0d cd 00  00 00 00 00  ac eb 19 00  68 e4 19 00  ............h...
0x0019ebd8: 38 ec 19 00  f0 e5 cb 75  16 08 42 40  fe ff ff ff  8......u..B@....
0x0019ebe8: 28 ec 19 00  69 d1 c9 75  00 02 c7 00  00 00 00 00  (...i..u........
0x0019ebf8: 1c 00 00 00  00 00 00 00  70 17 00 00  20 b0 42 72  ........p... .Br
0x0019ec08: ec ec 19 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
0x0019ec18: f0 ee 85 00  00 00 00 00  00 00 00 00  36 cf 8a 35  ............6..5
0x0019ec28: 94 ec 19 00  76 8e 9d 77  44 ec 19 00  20 00 00 00  ....v..wD... ...
0x0019ec38: a0 ef 19 00  c0 8d 9d 77  68 ec 19 00  00 02 c7 00  .......wh.......
0x0019ec48: 00 00 00 00  1c 00 00 00  00 00 00 00  70 17 00 00  ............p...
0x0019ec58: 20 b0 42 72  90 ad 9e 77  00 00 00 00  1c 89 cb 75   .Br...w.......u
0x0019ec68: ce cd c9 75  ec ec 19 00  00 00 00 00  00 00 00 00  ...u............
0x0019ec78: 00 00 00 00  01 00 00 00  d0 c1 c7 00  00 80 25 00  ..............%.
0x0019ec88: 00 05 10 01  ec ec 19 00  00 00 00 00  cc ec 19 00  ................
0x0019ec98: c4 cb c9 75  00 00 00 00  00 00 00 00  01 00 00 00  ...u............
0x0019eca8: 01 00 00 00  f0 08 7a 00  f2 04 c1 00  e0 fc ca 75  ......z........u
0x0019ecb8: ac 8b cb 75  00 00 00 00  d0 c1 c7 00  00 80 25 00  ...u..........%.
0x0019ecc8: b0 c0 00 01  84 d9 4a 00  c9 0d 01 15  ec ec 19 00  ......J.........
0x0019ecd8: 00 00 00 00  00 00 00 00  00 00 00 00  01 00 00 00  ................
0x0019ece8: f2 04 c1 00  14 fd ca 75  f2 04 c1 00  b0 c0 00 00  .......u........
0x0019ecf8: f2 04 c1 00  84 d9 4a 00  78 13 01 15  f2 04 c1 00  ......J.x.......
0x0019ed08: 70 13 01 15  84 d9 4a 00  f0 08 7a 00  50 f6 19 00  p.....J...z.P...
0x0019ed18: 6e 00 00 00  75 7d 00 19  00 00 40 00  78 ad 04 19  n...u}....@.x...
0x0019ed28: f0 08 7a 00  80 c0 00 19  50 f6 19 00  e0 29 cb 75  ..z.....P....).u

Code bytes:
0x72433204: f6 47 04 02  0f 95 c1 f6  c2 20 0f 94  c0 84 c8 75  .G....... .....u

Administrator Ogre Posts: 1457 Karma: +141/-9 *****

iL

  • Administrator
  • Ogre
  • *****
  • *
  • Posts: 1457
    • View Profile
*

iL

Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #143 on: February 19, 2016, 03:09:27 PM »
ddraw.dll
Hm, well, the same file...
But wrong return address, why?..
Maybe stack rewritten already? But looks almost properly.

Can you try on the same config to compare dumps?

i cant use task manager, or use visual studio or i would
try ProcDump: https://technet.microsoft.com/en-us/sysinternals/dd996900.aspx
procdump.exe -e -w -ma -x . "Warcraft II BNE.exe"
That will autogenegate .dmp-file in war2 directory on crash.
You have to start war2 directly without any loaders, so you should mount/insert war2 cd before.

15010DC9 004AD984 0001:0000FDC9 C:\War2Combat401\Storm.dll
hm, ddraw.dll is not represented at all, what does it mean?...

That is a common false positive for anything that manipulates memory in a non-standard'ish fashion.
I see, but that will alienate most ordinary users. They prefer to not use something detected as virus.
Also, previous version are not detected, so maybe injection mechanizm have been changed?
Not a problem while it's still in a test stage.
Berserker Posts: 719 Karma: +32/-3 *****

{Lance}

  • Berserker
  • *****
  • Posts: 719
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #144 on: February 19, 2016, 03:33:37 PM »
Tupac, there is actually a fix for the control issue in my bot.  You can take a look at it this and make your own version of it.  All it does is change the state of the war2 window to minimized which in turn gives you control over windows again so you can access whatever is behind war2 window.  I ran into the same problem and this was the quick-fix I came up with:

'There is a weird bug that causes War2 to Maximize incorrectly when it's in a Non-War2 Game screen such as BNE Chat,  Login screen, etc.  You cant minimize anything with mouse or keys, so this fixes that bug.  This forces War2 into minimized state.  It will eventually fix itself when games are started, etc. -Lance
Sub MinimizeWar2()
   oAutoIt.WinSetState "Warcraft II", "", 6
End Sub
Death Knight Posts: 2639 Karma: +83/-4 *********

tupac

  • Death Knight
  • *********
  • *
  • Posts: 2639
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #145 on: February 19, 2016, 05:31:04 PM »
Tupac, there is actually a fix for the control issue in my bot.  You can take a look at it this and make your own version of it.  All it does is change the state of the war2 window to minimized which in turn gives you control over windows again so you can access whatever is behind war2 window.  I ran into the same problem and this was the quick-fix I came up with:

'There is a weird bug that causes War2 to Maximize incorrectly when it's in a Non-War2 Game screen such as BNE Chat,  Login screen, etc.  You cant minimize anything with mouse or keys, so this fixes that bug.  This forces War2 into minimized state.  It will eventually fix itself when games are started, etc. -Lance
Sub MinimizeWar2()
   oAutoIt.WinSetState "Warcraft II", "", 6
End Sub

Yeah tried things like that but war2 is so persistence over everything. my best bet is to make a bat file leave it open and execute it on crash. Ill edit back.


OKAY FOUND HUGE BUG!!!!
CLICK LADDER THEN ALT TAB REAL FAST. Look like war2 is window mode... but when i click join or create it goes full screen again.. This is what happens when the game crashes..... HIT LADDER THE ALT TAB REAL FAST IT LOOK LIKE WINDOW MODE..........
ddraw.dll

Hm, well, the same file...
But wrong return address, why?..
Maybe stack rewritten already? But looks almost properly.

Can you try on the same config to compare dumps?

i cant use task manager, or use visual studio or i would

try ProcDump: https://technet.microsoft.com/en-us/sysinternals/dd996900.aspx
procdump.exe -e -w -ma -x . "Warcraft II BNE.exe"
That will autogenegate .dmp-file in war2 directory on crash.
You have to start war2 directly without any loaders, so you should mount/insert war2 cd before.

15010DC9 004AD984 0001:0000FDC9 C:\War2Combat401\Storm.dll

hm, ddraw.dll is not represented at all, what does it mean?...

That is a common false positive for anything that manipulates memory in a non-standard'ish fashion.

I see, but that will alienate most ordinary users. They prefer to not use something detected as virus.
Also, previous version are not detected, so maybe injection mechanizm have been changed?
Not a problem while it's still in a test stage.

I dont get crash with the cd mounted and load war2.exe from same crashing one...

window mode for channel LOOOL!!!!
Click join then alt tab real fast go back then click cancel. LOL COOL
Administrator Ogre Posts: 1457 Karma: +141/-9 *****

iL

  • Administrator
  • Ogre
  • *****
  • *
  • Posts: 1457
    • View Profile
*

iL

Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #146 on: February 19, 2016, 06:27:06 PM »
OKAY FOUND HUGE BUG!!!!
CLICK LADDER THEN ALT TAB REAL FAST. Look like war2 is window mode... but when i click join or create it goes full screen again.. This is what happens when the game crashes..... HIT LADDER THE ALT TAB REAL FAST IT LOOK LIKE WINDOW MODE..........
Nice!
Looks like working for me too!

This ddraw makes redrawing the interface extremely slow, so if i alt-tab during redrawing, that cause crash eighter in alt-tab to win or in alt-tab back to game.
Works for me when i join chat, it begins to draw and then i alt-tab. Also works when i click create/join and alt-tab while redrawing. Also when i click Laddder.
Testing on winxp.

Not sure if that's actual for clean war2 without ddraw, it redraws extremely fast, so i have no time to alt-tab during redraw.
Berserker Posts: 719 Karma: +32/-3 *****

{Lance}

  • Berserker
  • *****
  • Posts: 719
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #147 on: February 20, 2016, 12:13:40 PM »
Tupac,  if you use AutoIt,  like the bot, you dont have to create a batch file.  You can bind it to a hotkey and that will solve the issue.  you wont be able to move the war2 window around, but you will break the cursor out of the window which will allow you to move other windows and they WILL be placed over the top of the war2 window which is your goal so that you can read debug info.  See the "6" at the end of the line,  there are 32 states that you can try,  6 happened to be the one that worked for me,  but one of them may work for you,  play with them all.  When alt-tabbing caused the war2 window to get stuck in the top left corner and the cursor could not be grabbed, there were only 2 fixes.  Change the window state and then alt-tab back into the game, or create a game and then alt-tab back into the game.  I use both methods in the bot.  AutoIt just makes it quick and easy to bind a window state change to a hotkey which is why I suggest it as a quick fix.
Death Knight Posts: 2639 Karma: +83/-4 *********

tupac

  • Death Knight
  • *********
  • *
  • Posts: 2639
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #148 on: February 20, 2016, 04:30:49 PM »
Tupac,  if you use AutoIt,  like the bot, you dont have to create a batch file.  You can bind it to a hotkey and that will solve the issue.  you wont be able to move the war2 window around, but you will break the cursor out of the window which will allow you to move other windows and they WILL be placed over the top of the war2 window which is your goal so that you can read debug info.  See the "6" at the end of the line,  there are 32 states that you can try,  6 happened to be the one that worked for me,  but one of them may work for you,  play with them all.  When alt-tabbing caused the war2 window to get stuck in the top left corner and the cursor could not be grabbed, there were only 2 fixes.  Change the window state and then alt-tab back into the game, or create a game and then alt-tab back into the game.  I use both methods in the bot.  AutoIt just makes it quick and easy to bind a window state change to a hotkey which is why I suggest it as a quick fix.
No it don't work like I have the mouse out easy.

War2 crashes you are prompted with msg box debug or close. So I click debug it's opens visual studio but when I click anything war2 get its windows top priority, even if I change it boom happends again war2 is on top now. I have an idea I will use cheat engine and try to make war2 invisible then maybe create an .net file to manually set my debugger on top every second idk I'll be back.
Berserker Posts: 719 Karma: +32/-3 *****

{Lance}

  • Berserker
  • *****
  • Posts: 719
    • View Profile
Re: War2 graphics for Win Vista/7/8/8.1/10/2012 fixed
« Reply #149 on: February 20, 2016, 05:54:53 PM »
Lol,  no need to use Cheat engine.  Just try the AutoIt fix,  it will work.  I know exactly what issue you are running into, I had the same problem.  The AutoIt window state fix does work, you just have to try it thats all.  It will work regardless of it's running state (whether its crashed or not).  War2 does crash and I've had to work around the debug window popup with the bot in order to restart war2.  The first problem was the mouse control was stuck in the war2 window space.  Once that was fixed, I was able to force clicks outside the window.  I could also manually move windows around (not something I needed, but did work).