SHFB Log Encoding

May 7, 2012 at 7:43 PM

Hi, Eric
SHFB Build Output Window contains strings in the wrong encoding like this:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(847,9): warning MSB3644:‘Їа ў®з п бЎ®аЄ  ¤«п Ёда бвагЄвгал ".NETFramework,Version=v4.0" Ґ  ©¤Ґ . —в®Ўл ЁбЇа ўЁвм нвг ®иЁЎЄг, гбв ®ўЁвҐ SDK Ё«Ё Ї ЄҐв  ¤аҐб жЁЁ ¤«п нв®© ўҐабЁЁ Ёда бвагЄвгал, Ё«Ё Ё§¬ҐЁвҐ 楫Ґўго Ёда бвагЄвгаг ЇаЁ«®¦ҐЁп   ўҐабЁо, ¤«п Є®в®а®© гбв ®ў«Ґ SDK Ё«Ё Ї ЄҐв  ¤аҐб жЁЁ. “звЁвҐ, зв® бЎ®аЄЁ Ўг¤гв а §аҐиҐл Ё§ Ј«®Ў «м®Ј® Єни  бЎ®а®Є (GAC) Ё Ўг¤гв ЁбЇ®«м§®ў вмбп ў¬Ґбв® бЇа ў®зле бЎ®а®Є. Џ®н⮬㠮Ё ¬®Јгв ҐЇа ўЁ«м® ЁбЇ®«м§®ў вм ўлЎа го Ёда бвагЄвгаг ў Є зҐб⢥ 楫Ґў®©. [E:\SHFB\Work\GenerateRefInfo.proj]


File LastBuild.log contents:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(847,9): warning MSB3644: вЂ˜Р‡Р° Сћ®Р·­ Рї Р±РЋ®Р°Р„  ¤«Рї РЃ­РґР° Р±РІР°РіР„вгал ".NETFramework,Version=v4.0" ­Тђ ­ ©¤Тђ­ . —в®РЋР» ЁбЇа СћРЃРІРј РЅРІРі ®РёРЃРЋР„Рі, РіР±РІ ­®СћРЃРІТђ SDK РЃ«РЃ Р‡ Р„ТђРІ  ¤Р°ТђР± Р¶РЃРЃ ¤«Рї РЅРІ®© ўҐабЁЁ РЃ­РґР° Р±РІР°РіР„вгал, РЃ«РЃ РЃ§¬Тђ­РЃРІТђ Р¶Тђ«ТђСћРіРѕ РЃ­РґР° Р±РІР°РіР„вгаг ЇаЁ«®¦Тђ­РЃРї ­  ўҐабЁо, ¤«Рї Р„®РІ®Р°®© РіР±РІ ­®Сћ«Тђ­ SDK РЃ«РЃ Р‡ Р„ТђРІ  ¤Р°ТђР± Р¶РЃРЃ. “звЁвҐ, Р·РІ® Р±РЋ®Р°Р„РЃ РЋРі¤РіРІ Р° §Р°ТђРёТђ­Р» РЃ§ Р€«®РЋ «Рј­®Р€® Єни  Р±РЋ®Р°®Р„ (GAC) РЃ РЋРі¤РіРІ РЃР±Р‡®«Рј§®Сћ РІРјР±Рї Сћ¬ТђР±РІ® бЇа Сћ®Р·­Р»Рµ Р±РЋ®Р°®Р„. РЏ®РЅРІ®¬Рі ®­РЃ ¬®Р€РіРІ ­ТђР‡Р° СћРЃ«Рј­® РЃР±Р‡®«Рј§®Сћ РІРј ўлЎа ­­РіРѕ РЃ­РґР° Р±РІР°РіР„вгаг Сћ Р„ Р·ТђР±РІСћТђ Р¶Тђ«ТђСћ®©. [E:\SHFB\Work\GenerateRefInfo.proj]

Can you keep a log file in the correct encoding or some sort of Unicode?


May 8, 2012 at 12:33 AM

I think the log file is UTF8 by default.  The log window in the standalone GUI uses a rich text box.  I'm not sure if the encoding can be set on it.  In Visual Studio, the build output goes to the standard MS Builder logger and from there to the standard built-in output window.  I'm not sure if there's a way to alter the encoding for those either.



May 9, 2012 at 10:25 AM
Edited May 9, 2012 at 10:35 AM

I want to understand why the log file, which is encoded in UTF8, skips Russian lines in the correct and incorrect coding (File LastBuild.log):

Generating shared content files (ru-RU, Русский (Россия))...


Warn: BrandingComponent: ЋиЁЎЄ  Є®¬ЇЁ«пжЁЁ XSLT. at file:///E:/SHFB/Work/Output/MSHelpViewer_branding/branding-ru-ru.xslt 18 18 


Compressed 3 folders, 53 files.  Reduced size by 64я155 bytes (58%).

And how can we fix it?


May 9, 2012 at 8:30 PM

To be honest, I'm not sure I will be able to fix it since I don't have the capability to reproduce the issue and wouldn't know when the log encoding was right or wrong for any given foreign language.