Tomsk Sysadmins Forum
Windows => Администрирование => Topic started by: Fedor on February 07, 2007, 16:11:08
-
Суть проблемы состоит в следующем, писалась база данных на одном компьютере в Delphi (ос Windows XP), в базе данных создавались отчёты с помощью мастрера отчётов. Потом с этой базой данных начали работать на другом компьютере, ос Windows XP, отчёты стали формироваться нечитаемыми символами, такие же символы стали отображаться в элементе Ttable. Пробывал запускать программу на разных компьютера под Windows XP, в некоторых корректно отображаются символы в других абракадабра.
Пробывал с кодовой страницей 1252 поэкспериментировать, результатов не дало.
Кто что посоветует по данному вопросу?
-
Суть проблемы состоит в следующем, писалась база данных на одном компьютере в Delphi (ос Windows XP), в базе данных создавались отчёты с помощью мастрера отчётов. Потом с этой базой данных начали работать на другом компьютере, ос Windows XP, отчёты стали формироваться нечитаемыми символами, такие же символы стали отображаться в элементе Ttable. Пробывал запускать программу на разных компьютера под Windows XP, в некоторых корректно отображаются символы в других абракадабра.
Пробывал с кодовой страницей 1252 поэкспериментировать, результатов не дало.
Кто что посоветует по данному вопросу?
Хоть бы написал что за движок БД используется.
-
Хоть бы написал что за движок БД используется.
СУБД Paradox
-
СУБД Paradox
Если всё это работает через BDE, то сравни настройки Native Drivers для Paradox на машинах.
-
Если всё это работает через BDE, то сравни настройки Native Drivers для Paradox на машинах.
Просто потом я попробывал без BDE Administrator (прописал программно путь к BD), тот же результат, даже если на машине не установлен BDE Administrator
-
Пробывал с кодовой страницей 1252 поэкспериментировать, результатов не дало.
Кто что посоветует по данному вопросу?
почему с 1252? обычно для работы с парадоксом ставят Pdox ANSI Cyrillic. гораздо реже Paradox Cyrr 866, если систему начали делать еще под досовым парадоксом.
bdeadmin.exe -> configuration -> drivers -> native -> paradox -> langdriver = Pdox ANSI Cyrillic
-
почему с 1252? обычно для работы с парадоксом ставят Pdox ANSI Cyrillic. гораздо реже Paradox Cyrr 866, если систему начали делать еще под досовым парадоксом.
bdeadmin.exe -> configuration -> drivers -> native -> paradox -> langdriver = Pdox ANSI Cyrillic
Дело в том что BDE Administrator не используется, программным путём ищется база данных в папке с программой, но на разных машинах бывают проблемы со шрифтами.
-
В свою бытность сисадмином в конторе ... приходилось общаться с гремучей смесью вроде Delphi+Fastreport+Oracle.
Наблюдал подобное.
1. Лечилось перебитием шаблонов отчётов (стираем текст и указывая шрифт, например Arial, и набираем снова то что было написано ранее )
2. Для особо тяжёлых случаев когда программеру влом поднять над клавой пальцы сделал вот такое (так называемая подстановка шрифтов):
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Helv"="MS Sans Serif"
"Tms Rmn"="MS Serif"
"Times"="Times New Roman"
"Helvetica"="Arial"
"MS Shell Dlg"="MS Sans Serif"
"Arial CE,238"="Arial,238"
"Arial Greek,161"="Arial,161"
"Arial Tur,162"="Arial,162"
"Courier New CE,238"="Courier New,238"
"Courier New Greek,161"="Courier New,161"
"Courier New Tur,162"="Courier New,162"
"Times New Roman CE,238"="Times New Roman,238"
"Times New Roman Greek,161"="Times New Roman,161"
"Times New Roman Tur,162"="Times New Roman,162"
"System,0"="System,204"
"Fixedsys,0"="Fixedsys,204"
"Small Fonts,0"="Small Fonts,204"
"MS Serif,0"="MS Serif,204"
"MS Sans Serif,0"="MS Sans Serif,204"
"Courier,0"="Courier New,204"
"Arial Cyr,0"="Arial,204"
"Courier New Cyr,0"="Courier New,204"
"Times New Roman Cyr,0"="Times New Roman,204"
"Tms Rmn,0"="MS Serif,204"
"Helv,0"="MS Sans Serif,204"
"MS Shell Dlg 2"="MS Sans Serif"
"Monotype.com"="Andale Mono"
@="Times New Roman,204"
"Arial Cyr,204"="Arial,204"
"Courier New Cyr,204"="Courier New,204"
"Times New Roman Cyr,204"="Times New Roman,204"
"Times New Roman,0"="Times New Roman,204"
"Times New Roman,204"="Times New Roman,204"
"Arial,0"="Arial,204"
"Arial,204"="Arial,204"
Проверено и работало на системах: NT 4.0 / w2k / WinXP
З.Ы. Символы выводятся правильно только используется шрифт в котором отсутствуют кириллические символы. Может и тебе поможет.
-
З.Ы. Символы выводятся правильно только используется шрифт в котором отсутствуют кириллические символы. Может и тебе поможет.
Прийдётся по ходу редактировать в Delphi, указывать другой шрифт и снова набирать инфу. Только не могу понять, почему на одних машинах корректно отображается на других коряво. Просто тут ещё одна проблема, в конторе на одной машине переставили винду, там было много самописных BD, данные хранилис в *.txt файлах, в общем та же проблема. Как писать BD чтобы она корретно отображалась по крайней мере в винде.
-
Прийдётся по ходу редактировать в Delphi, указывать другой шрифт и снова набирать инфу. Только не могу понять, почему на одних машинах корректно отображается на других коряво.
потому что не везде указал что дефолтовый чарсет кириллица, а не латиница. сравни ветки FontMapper в реестре.
-
потому что не везде указал что дефолтовый чарсет кириллица, а не латиница. сравни ветки FontMapper в реестре.
У меня кстати такой косяк начился когда винду другую поставил, сейчас на Win2K3. Какие тогда надо настойки в Delphi устанавливать по умолчанию, чтобы шрифты везде корректно отображались?
-
У меня кстати такой косяк начился когда винду другую поставил, сейчас на Win2K3. Какие тогда надо настойки в Delphi устанавливать по умолчанию, чтобы шрифты везде корректно отображались?
Delphi тут ни при чем.
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontMapper]
"ARIAL"=dword:000000cc
"DEFAULT"=dword:000000cc
-
Delphi тут ни при чем.
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontMapper]
"ARIAL"=dword:000000cc
"DEFAULT"=dword:000000cc
Не помогло, видно различия в винде такие, одна OSrus, другая русифицирована MUI, как тогда писать BD чтобы везде нормально отображались шрифты ?
-
Не помогло
эти настройки вступают в силу после перезагрузки.
видно различия в винде такие, одна OSrus, другая русифицирована MUI, как тогда писать BD чтобы везде нормально отображались шрифты ?
либо настраивать винду как было показано ранее, а такая проблема может возникнуть с любой буржуйской софтиной когда начнешь с кириллицей. другой вариант - явно указать в коде софтины чарсет шрифта. в этом случае приложение не будет работать там, где в системе не будет установлен соответствующий чарсет.
-
эти настройки вступают в силу после перезагрузки.
либо настраивать винду как было показано ранее, а такая проблема может возникнуть с любой буржуйской софтиной когда начнешь с кириллицей. другой вариант - явно указать в коде софтины чарсет шрифта. в этом случае приложение не будет работать там, где в системе не будет установлен соответствующий чарсет.
Как прописать в программе чтобы в реестре устанавливался нужный чарсет шрифта? Т.е. думаю программно записывать значения чарсет шрифта.
-
Как прописать в программе чтобы в реестре устанавливался нужный чарсет шрифта? Т.е. думаю программно записывать значения чарсет шрифта.
плохая идея. эта ветка реестра обычно открыта пользователю только на просмотр. или у тебя все пользователи работают под правами администратора? самый правильный способ - корректная настройка рабочих станций перед тем как они будут установлены пользователю, либо распространение этой настройки через групповые политики. если нет AD, то ручками на каждой машине, локально или по сети.
-
плохая идея. эта ветка реестра обычно открыта пользователю только на просмотр. или у тебя все пользователи работают под правами администратора? самый правильный способ - корректная настройка рабочих станций перед тем как они будут установлены пользователю, либо распространение этой настройки через групповые политики. если нет AD, то ручками на каждой машине, локально или по сети.
Кстати какие файлы нужно в програмку положить чтобы не устанавливать BDE Administrator, а просто програмку заделать в инстолятор и нужные файлы добавить туда же.
Пользователи работают под провами User, поправил локально.
-
Кстати какие файлы нужно в програмку положить чтобы не устанавливать BDE Administrator, а просто програмку заделать в инстолятор и нужные файлы добавить туда же.
Пользователи работают под провами User, поправил локально.
курить доки ...\BDE\bdedeploy.txt до полного просветления.