Winaero Tweaker is bijgewerkt naar versie 0.1.0.1
Ik heb zojuist een nieuwe, kleine update voor Winaero Tweaker uitgebracht. Ik wil u graag uitleggen wat er nieuw is en waarom u uw versie moet bijwerken.
Zoals je misschien hebt gemerkt, bevat Winaero Tweaker mijn "Kleine raamranden" app, waarmee u de grootte van de vensterrand in Windows 7, Windows 8 en Windows 8.1 kunt wijzigen.
Hoewel Tiny Window Borders een 32-bits app is, bevat Winaero Tweaker zowel 32-bits als 64-bits versies en voert het de relevante versie uit, afhankelijk van de bitheid van uw besturingssysteem.
Een probleem dat ik ontdekte na het overzetten van "Tiny Window Borders" is dat de 64-bits API zich niet goed gedraagt.
Opmerking: de volgende informatie kan interessant zijn voor ontwikkelaars en kan te technisch zijn voor gewone eindgebruikers.
Winaero Tweaker gebruikt de SysteemparametersInfo functie om de randgrootte te verkrijgen en in te stellen. Windows Vista en hoger worden geleverd met een uitgebreide NIET-CLIENTMETRIC structuur.
De aanvullende iPaddedBorderBreedte lid definieert de dikte van de opgevulde rand, in pixels. De standaardwaarde is 4 pixels. De iPaddedBorderWidth- en iBorderWidth-leden worden gecombineerd voor zowel aanpasbare als niet-aanpasbare vensters in de Windows Aero-desktopervaring.
Wanneer u echter NONCLIENTMETRICS gebruikt met SystemParametersInfo in Windows x64, het laat het iPaddedBorderWidth-lid weg! Dit veroorzaakt onjuist toepassingsgedrag. Dus in dit geval iPaddedBorderWidth is altijd nul en de grootte van de rand wordt geretourneerd als iPaddedBorderWidth+iBorderWidth. Dit kan gemakkelijk worden genegeerd, maar het veroorzaakt ook verkeerd gedrag. De rand die wordt toegepast met x64 NONCLIENTMETRICS wordt ingesteld ALLEEN voor x64-apps. x86-apps hebben nog steeds de oude rand totdat u zich afmeldt bij uw Windows-sessie. Dit is gewoon raar.
Dus om het te repareren heb ik een eenvoudige x86-wrapper gecodeerd, WinaeroWOW64.exe, die samen met Winaero Tweaker wordt geleverd en de randen onmiddellijk verandert wanneer je het nodig hebt. Het blijft niet in het geheugen, dus je zult niet eens merken dat het aanwezig is.
Deze wijzigingen zijn opgenomen in de huidige release van Winaero Tweaker 0.1.0.1 en ik raad u ten zeerste aan om de app te upgraden. Ik hoop dat dit stukje informatie nuttig is voor ontwikkelaars die hetzelfde probleem tegenkomen.
Winaero Tweaker downloaden.