Я думаю, что мне не хватает чего-то фундаментального.Пожалуйста, скажите мне, что это, если можете.
Я разработал небольшое приложение C ++ WinForms, используя VS2008.Так что он построен с использованием .NET 3.5 SP1.Мой ящик для разработки - Win7, если это имеет значение.
Значение по умолчанию свойства UseCompatibleTextRendering в элементах управления WinForms в этой версии VStudio равно false.И это не должно иметь значения для меня, я не думаю.У меня нет какого-либо пользовательского текста или элементов управления.
Приложение хорошо работает на моем компьютере с Win7.
Если я упакую его (перетаскивая .NET 3.5) и установлю егона одном из наших рабочих столов WinXP кнопки и метки выглядят не очень хорошо;текст отрублен в них.
Если установить для UseCompatibleTextRendering значение true, а затем запустить его на полях XP, текст поместится в кнопки и метки.
Мой вопрос: почему?В результате установки .Net 3.5 на окнах XP, поэтому приложение должно быть в состоянии найти и использовать правильную версию WinForms, верно?
Я должен заметить, что прежде чем я положу свое приложение + .NET 3.5 на эти коробки, у них вообще нет .NET.Они не получают автоматические обновления Microsoft;наш айтишник выпускает патчи и обновления.
[Подобные вещи случались и раньше с приложениями, которые я создаю ... они отлично смотрятся / работают на машинах Engineering, потому что мы поддерживаем их, и у них в основном есть самые современные вещи.Когда они запускаются на корпоративных блоках, они обычно не запускаются и им нужен установленный VCredist.]
Возвращаясь к рассматриваемому вопросу: текст выглядит лучше, если для UseCompatibleTextRendering установлено значение false, поэтому я бы предпочел оставить его таким, если смогу.Я хотел бы понять, что может отсутствовать в тех окнах XP, из-за которых текст не помещается.
Спасибо
S