Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Вниз

Руссификация MessageDlg   Найти похожие ветки 

 
Суслик ©   (2004-12-01 18:10) [0]

Добрый день.

Тема избитая, но для меня актуальная.

Обозначенную в теме сообщения проблему я всегда решал как пооолный ламер: менял consts.pas.

Поставив SP2 для Delphi6 я обнаружил, что модифицированный consts.pas не хочет "подсасываться" - говорит, что comobj was compiled with different version of consts.

Почитав документацию понял, что можно создать ресурс. Попробовал это сделать с помощью прилагаемомго к дельфи resource dll wizard.
Получилось.

Но в этом случае в dll попадают все ресурсные строки из проекта и (насколько я полял) dfm.

Вопрос: как мне сделать ресурсную dll (можно руками, т.е. без wizard), которая бы подменяла только несколько известных мне ресурсных строк?


 
MacroDenS ©   (2004-12-01 18:21) [1]

На фига тебе руссифицировать MessageDlg, когда есть MessageBox?


 
Суслик ©   (2004-12-01 18:30) [2]

У меня этих MessageDlg по программе (сейчас посчитал) более 3 тыс.
Замаюсь менять.

А все-таки, как подменить ресурсную строку?


 
GuAV ©   (2004-12-01 18:47) [3]

А если не менять, а кидать измененный в папку с проектом ?

http://www.delphimaster.ru/articles/const_rus/index.html


 
Суслик ©   (2004-12-01 18:53) [4]

не хочет, пробовал по всякому


 
VMcL ©   (2004-12-01 19:10) [5]

>>Суслик ©  (01.12.04 18:53) [4]

Может написать свою функцию(и) MessageDlgSuslik,  а потом просто Find and Replace in all projects?


 
Суслик ©   (2004-12-01 19:14) [6]


> Может написать свою функцию(и) MessageDlgSuslik,  а потом
> просто Find and Replace in all projects?

Этак я никогда голубого значка точно не получу :)))


 
VMcL ©   (2004-12-01 19:27) [7]

>>Суслик ©  (01.12.04 19:14) [6]

Э-э-э... почему? :-)


 
Суслик ©   (2004-12-01 19:44) [8]


> Э-э-э... почему? :-)

Ламерстов это :)

Настоящий мастер всегда должен уметь подменять ресурсные строки :))


 
sentinel ©   (2004-12-01 19:57) [9]

Так возьми да подмени. Открой свой экзешник редактором ресурсов и замени Yes на Да в строковых таблицах.


 
Fay ©   (2004-12-01 20:03) [10]

Скопируй себе consts.pas, добавь его к проекту и исправь такие строки :

 SMsgDlgWarning = "Warning";
 SMsgDlgError = "Error";
 SMsgDlgInformation = "Information";
 SMsgDlgConfirm = "Confirm";
 SMsgDlgYes = "&Да";
 SMsgDlgNo = "&No";
 SMsgDlgOK = "OK";
 SMsgDlgCancel = "Cancel";
 SMsgDlgHelp = "&Help";
 SMsgDlgHelpNone = "No help available";
 SMsgDlgHelpHelp = "Help";
 SMsgDlgAbort = "&Abort";
 SMsgDlgRetry = "&Retry";
 SMsgDlgIgnore = "&Ignore";
 SMsgDlgAll = "&All";
 SMsgDlgNoToAll = "N&o to All";
 SMsgDlgYesToAll = "Yes to &All";


И будет тебе Щястье 8)


 
jack128 ©   (2004-12-01 20:04) [11]

sentinel ©   (01.12.04 19:57) [9]
Этим предлагаешь после каждой перекомпиляции проеэкта заниматься?

С другой если написать программу для автоматичесткой замены ресурсных строк, то может за это как раз и дадут мастера :-))


 
Fay ©   (2004-12-01 20:05) [12]

Добавлять в проект, видимо, не обязательно 8)


 
sentinel ©   (2004-12-02 00:05) [13]


> jack128 ©   (01.12.04 20:04) [11]

:-)))


 
Суслик ©   (2004-12-02 10:38) [14]


>  [10] Fay ©   (01.12.04 20:03)

ти знаешь, не фига не компилиться.
Сообщение об ошибке - как в исходном вопросе.

Всем.
Собственно, наверное, подменить ресурсы лучше всего. Надо будет покопать в этом направлении.


 
Erik1 ©   (2004-12-02 10:46) [15]

Я с этой проблемой возился тоже довольно много, но у меня уже использовался чужой модуль, где был переопределен MessageBox. Вобщем я нехотел пользоватся диалогами Delphi, стандартные устраивали больше. Так что самое хорошее решение оказалось установить Hook и менять caption на кнопках. Думаю это и тебе подойдет.


 
Amoeba ©   (2004-12-02 10:47) [16]

Весь набор готовых русифицированных модулей со всеми строковыми константами есть на
http://polesoft.narod.ru
и
http://www.delphiplus.org в разделе Бесплатно|Русификация

Просто омещаешь их в отдельную папку и прописывешь ее в путях к библиотекам первой. И все в ажуре.


 
Суслик ©   (2004-12-02 11:38) [17]


> И все в ажуре.

не фига
дословное сообщение

unit Dialogs was compiled with different version of Consts.SMsgDlgWarning


 
Amoeba ©   (2004-12-02 12:22) [18]


> Суслик ©   (02.12.04 11:38) [17]

Странно. У меня ни малейших проблем не было.


 
Суслик ©   (2004-12-02 13:13) [19]


> Странно. У меня ни малейших проблем не было.

У меня тоже до наката сп2 никаких проблем не былО.

версия delphi какая и какой сервис пак?


 
Fay ©   (2004-12-02 13:20) [20]

>> unit Dialogs was compiled
Если знаешь, какой "unit", то попробуй его тоже сложить к себе...


 
Amoeba ©   (2004-12-02 13:36) [21]


> Суслик ©   (02.12.04 13:13) [19]

У меня D5 + Sp1


 
Manfred8   (2004-12-02 13:56) [22]

а если прибить dcu у unit Dialogs?


 
Суслик ©   (2004-12-02 15:31) [23]

попробую, но думаю, что какая нить другая сволочь перестанет компилиться.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.032 c
3-1100162755
PereZ
2004-11-11 11:45
2004.12.19
Компонент для DBF


1-1102282888
Alexey Romanskiy
2004-12-06 00:41
2004.12.19
Как запустить ярлык?


4-1099829125
SPeller
2004-11-07 15:05
2004.12.19
Combobox


1-1101925567
sloug
2004-12-01 21:26
2004.12.19
Listbox и Grid


14-1101837012
maxz
2004-11-30 20:50
2004.12.19
зарубежные софт-каталоги





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский