Freigeben über


Bobba

Någon frågade mig vad det är för en liten brungrå bobba man ser i övre vänstra hörnet bl.a. på fliken Säkerhet i dialogrutan Internet-alternativ i Internet Explorer 6:

Bobba

Det är en bugg. Men inte vilken slags bugg som helst, utan en bugg som orsakas av mitt favoritlokaliseringsverktyg.

Den här fliken råkar ha en kontroll av typen NativeFontCtl*. Denna kontroll ska vara osynlig och borde därför ha storleken 0x0 DLU:er, vilket den också har i de filer vi har som bas när vi lokaliserar.

I mitt favoritlokaliseringsverktyg har jag en dialogruteeditor som påminner om den du kan se i Visual Studio. I denna editor kan jag flytta runt och ändra storlek på kontroller precis som jag vill. Om jag i den här editorn markerar en kontroll som har storleken 0x0, så ändras storlek automatiskt till 6x6. Jag vet inte varför, men detta är tydligen minimistorleken på alla kontroller, för man kan inte göra någon kontroll mindre än just 6x6 DLU:er (däremot kan man återställa de binärdata som finns i basfilen, så det går att få tillbaka kontrollen till 0x0).

Bobban du ser i den här dialogrutan uppstod alltså helt enkelt genom att någon råkade markera den här kontrollen och inte märkte att dess storlek ändrades. Lätt hänt, eftersom kontrollen inte har mycket till utseende och vi tidigare inte hade något enkelt sätt att upptäcka detta på. Nu i Vista har vi dock ett verktyg som rapporterar kontroller som är 0x0 i basfilen men större i den lokaliserade filen.

* https://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/faq/localization.asp