Jump to content

Tray volume patch (GUI glitch)


go98

Recommended Posts

...just to keep this forum more liveful... :angel and show the NT-guys this is where the action is haha 

 

There's a small glitch in the tray volume that shows like this:

 

In the tray area, click the speaker icon once to get the volume window appear, then click elsewhere and the window disappears. Now click again on the speaker icon...this time you can't get rid of the window until you have clicked in the window first...

 

Here's how to fix it:

 

In the file sndvol32.exe (in the windows folder), you need to hex edit the following:

At address (offset) 1D48: 6A 00

change to 90 90

 

At address (offset) 1D4D: B8

change to 3C

 

For other languages which may have different locations:

Find the first occurance of this series of bytes: 56 6A 08 8B 74 24 0C 56

That would be found at address 1D2D in my localized version of the file. Now you can calculate the distance yourself to the above fixes. However, it's possible that the second change from B8 to 3C is not found, so technically what has to be done is changing a call address from ShowWindow to DestroyWindow (user32 functions) while blanking out one unnecessary parameter.

Link to comment
Share on other sites


  • 5 weeks later...

Coll Fix! However, in my translation (Spanish) it was at the same address as you provided.

Howver, the hex array was in another position and doing calculations would give me a wrong offset.

Thanks!

Link to comment
Share on other sites

@go98: Yes, thanks for the cool tip.  I hadn't noticed this behavior until you pointed it out.  

I'm using the SndVol32.exe v4.90.3000 from WinME, that i probably installed via 98SE2ME.  The offsets from that file also don't match up with the ones from your post, so i wanted to add to the info you've given.  (I could also add before and after dis-assemblies of the small routine that is being patched in order to provide some context, but i don't know if that would be allowed here.  Maybe someone could let me know?)  

Ok, in my v4.90.3000 SndVol32.exe file, the byte series 56 6A 08 8B 74 24 0C 56 occurs at offset 1D25h (this marks the beginning of the routine).  6A 00 appears at offset 1D40h (27 bytes after the initial 56), and the B8 appears at 1D45h (5 bytes beyond that 6A).  As go98 said, change the 6A 00 to 90 90, and the B8 to 3C.  

Hope that helps someone.  (And always make a backup copy of the original file you are working on... just in case!) 

@MiKl: If you're comfortable with the DOS command line, there are a number of "touch"-type utilities that change the time/date stamp on files.  There are even some Windows GUI utilities like FileDate Changer by Nir Softer: http://www.nirsoft.net/utils/filedatech.html

- Doug B.
 

Link to comment
Share on other sites

I don't get that behavior here with sndvol.exe 4.10.1998 on 98SE. All the calls are original as mentioned in first post.

However I had edited the GUI many years ago to display a horizontal slider instead of the original vertical one.

Theoretically this shouldn't affect the behavior but M$ works in mysterious ways... :whistle:

 

If you want a hotkey-driven OSD volume application, check out VolOSD at my repository (see signature below). ;)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...