| Форум Beholder http://beholder.ru/bb/ | |
| Обсуждение BeholdTV 5.27 http://beholder.ru/bb/viewtopic.php?f=1&t=14399 |
Страница 6 из 12 |
| Автор: | televizor [ 18 дек 2015, 11:23 ] | ||||
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 | ||||
Заметьте, что при редактировании строки в списке каналов страшные кракозябры чудесным образом превращаются в красивые человеческие буквы. Ещё скриншоты.
|
|||||
| Автор: | televizor [ 18 дек 2015, 11:25 ] | ||
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 | ||
И ещё.
|
|||
| Автор: | f2065 [ 18 дек 2015, 12:57 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
Я в виртуалке с Win10 english его запустил таки - язык у винды правильно везде установлен, но бехолдер имеет аналогичную проблему во всех заголовках элементов диалогов. С виндой всё в порядке, никаких отличий у Win10 от Win8 в этом плане нет. Это баги бехолдера. Может какие-то компоненты делфи у него проблемные. |
|
| Автор: | Людмила [ 18 дек 2015, 13:29 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): Я в виртуалке с Win10 english его запустил таки - язык у винды правильно везде установлен, но бехолдер имеет аналогичную проблему во всех заголовках элементов диалогов. С виндой всё в порядке, никаких отличий у Win10 от Win8 в этом плане нет. Это баги бехолдера. Может какие-то компоненты делфи у него проблемные. Такое бывает из-за компилятора, если он double-word не понимает. Надо им компилятор проверить. |
|
| Автор: | BTVSoft [ 18 дек 2015, 15:38 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
Цитата: Это баги бехолдера. Ошибаетесь. Баг в WinAPI, в ANSI вариантах функций. ALL Чтобы остановить разные домыслы, информирую: В Windows 10 Eng сломан DEFAULT_CHARSET в WinAPI функциях TextOutA и DrawTextA. При этом Unicode варианты функций TextOutW и DrawTextW работают корректно. Соответственно любые VCL компоненты, использующие вывод текста посредством TextOutA и DrawTextA c DEFAULT_CHARSET имеют проблемы. Компилятор никакого отношения не имеет, проблема в WinAPI. Самое интересное, что баг проявляется только после установки онлайн-апдейтов на Windows 10 Eng. Сразу после установки Windows 10 Eng эти функции работают корректно. Приложения, использующие Unicode варианты функций xxxW проблем не имеют. Но это не означает что проблемы в Windows нет. |
|
| Автор: | Людмила [ 18 дек 2015, 16:23 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): В Windows 10 Eng сломан DEFAULT_CHARSET в WinAPI функциях TextOutA и DrawTextA. При этом Unicode варианты функций TextOutW и DrawTextW работают корректно. Соответственно любые VCL компоненты, использующие вывод текста посредством TextOutA и DrawTextA c DEFAULT_CHARSET имеют проблемы. Компилятор никакого отношения не имеет, проблема в WinAPI. Верим. А Microsoft в курсе? Цитата: Самое интересное, что баг проявляется только после установки онлайн-апдейтов на Windows 10 Eng. Сразу после установки Windows 10 Eng эти функции работают корректно. Сейчас поставлю 10240 LTSB, проверю. |
|
| Автор: | f2065 [ 18 дек 2015, 18:26 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): В Windows 10 Eng сломан DEFAULT_CHARSET в WinAPI функциях TextOutA и DrawTextA. При этом Unicode варианты функций TextOutW и DrawTextW работают корректно. Соответственно любые VCL компоненты, использующие вывод текста посредством TextOutA и DrawTextA c DEFAULT_CHARSET имеют проблемы. Компилятор никакого отношения не имеет, проблема в WinAPI. Я не поленился проверить. С удивлением обнаружил что описанный баг в TextOutA - не воспроизводится… Отлично выводятся русские буквы…Даже в нескольких разных местах пробовал рисовать - и просто на диалоговой форме, и на контролах, и в Onwerdraw CreatePopupMenu… Используется именно TextOutA. Behold TV 5.27 на этой же Win10-en проблему имеет… Вобщем не всё так просто. Может BeholdTV пытается настроить какие-то региональные параметры для своего процесса что и приводит к неожиданному эффекту в TextOutA. Но вот при типовом применении GetDC-TextOutA-ReleaseDC - никакого бага не обнаруживаю. |
|
| Автор: | BTVSoft [ 18 дек 2015, 18:39 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
f2065 OSD использует чистый WinAPI - CreateFontIndirect(A) и TextOut(A), при использовании DEFAULT_CHARSET - проблема есть с A функциями, с W - рисуется корректно. Если заменить DEFAULT_CHARSET на RUSSIAN_CHARSET - xxxA функции начинают работать корректно. Однако, DEFAULT_CHARSET должен отрабатывать автоматически, если в Windows установлена Russia для Non-unicode программ. Но этого не происходит. Сами подумайте, ни с одной версией Windows Eng проблем не было, при установке Win10 Eng также рисуется корректно. Сразу после обновления с Windows Update проблема всплывает. При этом в системе ничего не менялось, ни драйвера ни другой софт не устанавливался. Пока ищем красивые варианты решения. |
|
| Автор: | Людмила [ 18 дек 2015, 19:57 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): ...ни с одной версией Windows Eng проблем не было, при установке Win10 Eng также рисуется корректно. Сразу после обновления с Windows Update проблема всплывает. При этом в системе ничего не менялось, ни драйвера ни другой софт не устанавливался. Пока ищем красивые варианты решения. Вы даже не представляете, какое удовольствие читать такие посты! Спасибо! Не буду даже проверять с вновь устанавливаемой версией. Ждем-с! ;) |
|
| Автор: | televizor [ 18 дек 2015, 20:09 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): Пока ищем красивые варианты решения. Голосую за перевод всех текстов приложения в Unicode. Вам же потом меньше геморроя с дальнейшими "усовершенствованиями" от мелкомягких, которые вряд ли откажутся от политики "good enough" раньше, чем погибнут. |
|
| Автор: | f2065 [ 18 дек 2015, 21:09 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): OSD использует чистый WinAPI - CreateFontIndirect(A) и TextOut(A), при использовании DEFAULT_CHARSET - проблема есть с A функциями, с W - рисуется корректно. Если заменить DEFAULT_CHARSET на RUSSIAN_CHARSET - xxxA функции начинают работать корректно. Однако, DEFAULT_CHARSET должен отрабатывать автоматически, если в Windows установлена Russia для Non-unicode программ. Но этого не происходит. Всё равно на этих описаниях с нуля баг не воспроизводится… Очевидно есть ещё какие-то условия, компоненты делфи вероятно портят какие-то параметры своего создаваемого класса или делают какую-то недокументированную в MSDN фичу… писал(а): Сами подумайте, ни с одной версией Windows Eng проблем не было, при установке Win10 Eng также рисуется корректно. Сразу после обновления с Windows Update проблема всплывает. При этом в системе ничего не менялось, ни драйвера ни другой софт не устанавливался. Ну хорошо бы всё-же описать проблему так чтобы она легко воспроизводилась с нуля у посторонних программистов. Тогда можно было бы в микрософт багрепорты писать…
Пока ищем красивые варианты решения. |
|
| Автор: | BTVSoft [ 18 дек 2015, 22:59 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
f2065 Информация к размышлению: После "перещелкивания" параметра языка программ, не поддерживающих Unicode, в English USA и обратно в Russian (с перезагрузкой Windows), проблему как рукой сняло. Т.е. все вернулось как до Windows Update. Обратная сторона медали - теперь не на чем кейз воспроизвести. |
|
| Автор: | f2065 [ 18 дек 2015, 23:39 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
писал(а): После "перещелкивания" параметра языка программ, не поддерживающих Unicode, в English USA и обратно в Russian (с перезагрузкой Windows), проблему как рукой сняло. Т.е. все вернулось как до Windows Update. И этот способ у меня тоже не подтвердился. По крайней мере вот BhConfig имеет проблему во всех заголовках TGroupBox…Интересно подождать отзывов остальных пользователей |
|
| Автор: | Людмила [ 19 дек 2015, 00:26 ] |
| Заголовок сообщения: | Re: Обсуждение BeholdTV 5.27 |
Перещелкивание языка в BTV (Settings>Interface>Language Select>English/Russian/English) и перезагрузка ни к чему не приводит. Все ранее приведенные скриншоты полностью повторяются. Может, в какой другой программе нужно делать это "перещелкивание"? Или как-то по-другому? |
|
| Страница 6 из 12 | Часовой пояс: UTC + 3 часа |