Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы с кодировкой имен файлов, на WinServer2008 64bit 
V
    Опции темы
kami
Дата 25.2.2011, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



Доброго времени суток, дамы и господа!
Суть проблемы:
имею приложение, сделанное в D7, запускаю на WinServer 2008 64bit. При запуске:
1) приложение не может найти нужные файлы, если в пути (или имени) файла содержатся русские буквы (выяснил экспериментальным путем)
2) заголовок формы и вся текстовка - крякозябры. За исключением VT (ну, с ним все понятно - оно ж использует WideString).

Пункт 2 не критичен - приложение будет сервисом (но причину понять хотелось бы - кто знает, может у юзверей, которые сидят под Win2k/XP/Vista/Seven будут такие же проблемы)
По пункту 1 - вообще ничего не понимаю. Ну, ладно, отображение - не совпала кодировка, исправлению не подлежит (это ж все ресурсы перекодировать. Или нет?). Но вот имена и пути к файлам... Тем более, что преобразование AnsiString>VT.WideString и обратно работает без проблем...

Собственно - как можно исправить? (Переход на D2009 и выше уже рассматриваю). Админский доступ к серверу имею.
PM MAIL WWW   Вверх
Snowy
Дата 25.2.2011, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 31
Всего: 484



Панель управления - Язык и региональные стандарты - Дополнительно - Русский ?
PM MAIL   Вверх
kami
Дата 25.2.2011, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



Snowy, завтра проверю - из дома доступа к серверу не имею.
Как можно программно получить доступ к этой функции?
PM MAIL WWW   Вверх
CodeMonkey
Дата 25.2.2011, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 29
Всего: 89



Ещё надо учесть, что учётка службы <> учётке пользователя.

http://www.transl-gunsmoker.ru/2010/08/windows-2000.html
http://www.transl-gunsmoker.ru/2010/08/windows-xp2003.html

В общем, тебя ожидают длительные головные боли.

Как исправить программно - смотри на базе какой функции или переменной выполняются кривые перекодировки. 

http://www.transl-gunsmoker.ru/2010/11/%D0...0%B8%D1%8F.html
http://www.transl-gunsmoker.ru/2010/12/ansi-unicode.html

Попробуй руками вызывать W-функции, декодируя параметры сам.

В общем, лучше как можно быстрее убраться с D7 на D2009+.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
kami
Дата 26.2.2011, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



Цитата(Snowy @  25.2.2011,  21:14 Найти цитируемый пост)
Панель управления - Язык и региональные стандарты - Дополнительно - Русский ?

Увы - нет. Английский (США). На мой вопрос о перезагрузке сервера после установки "Русский (Россия)" покрутили пальцем у виска и сказали "ай-яй-яй, даже и не думай". Ну да ладно. Хоть админский доступ и есть, но лезть в это самостоятельно не буду - сервер не мой, права админа получил под честное слово "что не буду ерундой маяться и мешать системе глючить".


Цитата(CodeMonkey @  25.2.2011,  23:48 Найти цитируемый пост)
В общем, тебя ожидают длительные головные боли.

Это я уже понял :(
Решение уже принято - 
Цитата(CodeMonkey @  25.2.2011,  23:48 Найти цитируемый пост)
как можно быстрее убраться с D7 на D2009+.

Теперь бы еще грамотно убраться - куча AllocMem, Move, TStream.Write связанных с PChar и string в более чем 20к строк кода...
PM MAIL WWW   Вверх
CodeMonkey
Дата 26.2.2011, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 29
Всего: 89



(а некоторые ещё спрашивают - а нафига нам Unicode? и так всё работает smile )


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
kami
Дата 26.2.2011, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



CodeMonkey,  smile 
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0480 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.