Winaero Tweaker is updated to version 0.1.0.1

I just released a new, minor update to Winaero Tweaker. I would like to explain what is new and why you need to update your version.


As you might have noticed, Winaero Tweaker incorporates my "Tiny Window Borders" app, which allowed you to change the window border size in Windows 7, Windows 8 and Windows 8.1.
winaero_tweaker_twb

While Tiny Window Borders is a 32-bit app, Winaero Tweaker includes both 32-bit and 64-bit versions and runs the relevant version depending on your OS bitness.
One issue I discovered after porting "Tiny Window Borders" is that the 64-bit API behaves incorrectly.

Note: The following information might be interesting for developers, and may be too technical for regular end users.

Winaero Tweaker uses the SystemParametersInfo function to obtain and set the border size. Windows Vista and above ship with an extended NONCLIENTMETRICS structure.
The additional iPaddedBorderWidth member defines the thickness of the padded border, in pixels. Its default value is 4 pixels. The iPaddedBorderWidth and iBorderWidth members are combined for both resizable and non-resizable windows in the Windows Aero desktop experience.

However, when you are using NONCLIENTMETRICS with SystemParametersInfo in Windows x64, it omits the iPaddedBorderWidth member! This causes incorrect application behavior. So, in this case iPaddedBorderWidth is always zero and the the border size is returned as iPaddedBorderWidth+iBorderWidth. This could be easily ignored, however, it also produces wrong behavior. The border applied with x64 NONCLIENTMETRICS will be set ONLY for x64 apps. x86 apps will still have the old border until you sign out from your Windows session. This is just weird.

So, to fix it, I coded a simple x86 wrapper, WinaeroWOW64.exe, which comes along with Winaero Tweaker and changes the borders instantly when you need it. It does not stay in memory so you will not even notice its presence.

These changes are included in the current release of Winaero Tweaker 0.1.0.1 and I strongly recommend you to upgrade the app. I hope this bit of information is useful to developers who encounter this same issue.

Download Winaero Tweaker.

17 thoughts on “Winaero Tweaker is updated to version 0.1.0.1

  1. Tony

    The program logo looks like the Winreview one.

    Like or Dislike: Thumb up 0 Thumb down 0

    Reply
    1. Sergey Tkachenko Post author

      it IS the winreview logo. :)

      Like or Dislike: Thumb up 0 Thumb down 0

      Reply
      1. Tony

        And the “is” is as IS (tank) or (that) is ?

        Like or Dislike: Thumb up 0 Thumb down 0

        Reply
        1. Sergey Tkachenko Post author

          I meant I have used the Winreview logo for the tweaker icon.
          You were right :)

          Like or Dislike: Thumb up 0 Thumb down 0

          Reply
  2. Tihiy

    That should be not x64 specific, but subsystem-version-in-PE-header-specific.

    Like or Dislike: Thumb up 1 Thumb down 0

    Reply
    1. Sergey Tkachenko Post author

      ohh?
      But why it works well from x86 process then?
      Also, I noticed some person complained in comments @MSDN about this issue too.

      Like or Dislike: Thumb up 0 Thumb down 0

      Reply
  3. throkr

    Hi Sergey,

    I downloaded v 0.1.0.1 last Tuesday pm, opened it just to see if my settings were detected correctly, didn’t change nothing and closed it.
    Since that time, no big changes happened on my machine, except the installation of the Windows Updates in the evening of the same day (Patchday).
    Now I wanted to open WT again and it doesn’t work anymore : after the UAC prompt it minimizes directly in the taskbar and nothing more. All I can do is a right-click on it to close it …
    – (Win 8.1.1 Pro x64) –

    Any ideas ???

    Thanks for your assistance !

    Like or Dislike: Thumb up 0 Thumb down 0

    Reply
    1. Sergey Tkachenko Post author

      Yep.
      I had the same issue. It is a bug in window size, I will fix it.
      Do the following:
      1. Close Winaero Tweaker.
      2. Go to registry editor and delete HKEY_CURRENT_USER\Software\Winaero.com\Winaero Tweaker
      3. Start Winaero Tweaker.

      Like or Dislike: Thumb up 1 Thumb down 0

      Reply
  4. throkr

    I forgot to mention something in my previous post :
    I went back on a disc image made just BEFORE installation of the Windows Updates and WT was working (still).
    I then went to a disc image made just AFTER installation of these updates and WT didn’t work anymore and reacted as described above …

    Thank you !

    Like or Dislike: Thumb up 0 Thumb down 2

    Reply
    1. Sergey Tkachenko Post author

      Please try to follow the instruction I posted to your previous comment.

      Like or Dislike: Thumb up 0 Thumb down 0

      Reply
  5. throkr

    Excellent : working flawlessly on both user accounts (Admin & Std User). :-)
    Thank you !

    Like or Dislike: Thumb up 0 Thumb down 0

    Reply
    1. Sergey Tkachenko Post author

      Thanks.
      I fixed this bug yesterday.

      Like or Dislike: Thumb up 1 Thumb down 0

      Reply
  6. throkr

    Hi Sergey,

    I have a question concerning “Aero Colors” : if I change the “Color Balance” setting, after a log out / reboot it always reverts to the previous setting ( = the one displayed when I opened Winaero Tweaker for the first time) …

    Am I missing something here ?

    Like or Dislike: Thumb up 0 Thumb down 0

    Reply
    1. Sergey Tkachenko Post author

      Probably a bug. I will look.

      Like or Dislike: Thumb up 0 Thumb down 0

      Reply
  7. throkr

    Hi Sergey,

    Here are some additional infos to my previous post (thought it might be useful …) :
    – Win 8.1.1 Pro x64

    – I don’t have synchronized Metro & Aero Colors but I also tried with the same color for both and the same issue came up.

    Thanks ! :)

    Like or Dislike: Thumb up 0 Thumb down 0

    Reply
  8. Keith

    I have a simple question. I noticed that there are 2 Winaero Tweaker executables. One in the main directory and one in the Windows 7 folder. Their size is near the same but they are slightly different. My OS is Windows 10. I opened the program with each executable and at a glance appears pretty much the same. I made no changes with either exe till I know which exe to run.

    I may be over-thinking, so by default I’d choose the exe in the main directory. But I’ve been wrong before.

    Thanks,
    Keith

    Like or Dislike: Thumb up 0 Thumb down 0

    Reply
    1. Sergey Tkachenko Post author

      Those executable files are exactly the same.
      Win7 version is compiled with .NET 3.5, which is pre-installed by default in this OS.
      The other file is compiled with .NET 4.0, which is pre-installed in Windows 8 and Windows 10.
      If you have .NET 3.5 installed in Windows 10, you can use Windows 7 version of Winaero Tweaker.

      Like or Dislike: Thumb up 1 Thumb down 0

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *