Навигация
  Главня
Статьи
-Сеть
--Безопасность
-Графика
--Photoshop
--Corel Draw
--Illustrator
-ОС
--Windows
--Linux
--Unix
-SEO
-Дизайн
--Web-Design
-Разное
-Программирование
--Delphy
--C/C++
--.NET
--PHP
--Pascal
--Perl
--Visual Basic
--Ассемблер
--Java
--Java Script
--ASP
Книги

Карта Сайта
Наши Сайты
Обратная связь
Новое на сайте
Статьи про любовь

 
Вход
 
Логин
Пароль
 

 
Найти
 

 
Партнёры
 

 
Статистика
 

 
Популярное
 

 
Календарь
 
«    Март 2008    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

 
Архив
  Сентябрь 2008 (4)
Июнь 2008 (4)
Май 2008 (12)
Апрель 2008 (49)
Март 2008 (51)
Февраль 2008 (73)
Январь 2008 (40)
Декабрь 2007 (58)
Ноябрь 2007 (61)
Октябрь 2007 (51)
Сентябрь 2007 (82)

 
Реклама
  Кулинарные рецепты на Cook-room.com - с пошаговыми фото

 
Казино
 

Интернет-казино Grand Casino произвело фурор в игорном мире. Одно из самых важных нововведений - наличие системы контроля честности всех азартных игр казино. Наличие контроля честности дает возможность полностью уйти в игру, не задумываясь о подтасовке или обмане. В Grand Casino можно пополнить счет и вывести выигрыш большим количеством способов:(SMS, E-gold, Rupay, Яндекс.Деньги, Webmoney,Кредитные карты,...). Теперь азартные игры на деньги стали доступнее. Предоставлены игры: Рулетка, Покер, Блэкджек, Видео Покер, Игровые автоматы, Кено.

   

Статьи » Программирование » C++ » Перевод программ под Windows

Для перевода программ под windows используются редакторы ресурсов, которых развелось достаточно много. Самые лучшие, на мой взгляд, resurs hacker и restorator. У каждой из них есть свои плюсы и минусы. С помощью программы resurs hacker Вы можете курсором мыши передвигать или растягивать окна и кнопки, а это Вам понадобится, так как переведя надпись кнопки на другой язык, она может быть больше и не вмещаться в размеры кнопки. Также можно изменять стили, создавать новые или удалять существующие ресурсы непосредственно в exe модуле или res файле. У программы restorator более удобное дерево ресурсов, есть возможность произвести удаление или замену системного файла после перезагрузки компьютера. Это удобно если файл используется windows. К сожалению, эта функция restorator не поддерживает длинные имена каталогов и файлов. Двух этих программ для русификации будет более чем достаточно. Не в счет программы для распаковки exe модулей, а также Вам может понадобится шестнадцатеричный редактор. Самые лучшие программы из этой области, на мой взгляд, winhex и qview. Шестнадцатеричный редактор будет нужен только в том случае, если определенный текст находится не в ресурсах, а в самом модуле программы. К сожалению, здесь нельзя вводить текст, который будет превышать оригинальный текст. Не забывайте об этом, иначе программа просто перестанет работать.

Программа может содержать различные ресурсы - avi (видео), bitmap (изображения), menu (меню), string (строковые ресурсы, то есть текст), icon (значки), dialog (диалоговые окна) и другие. Мы рассмотрим пример ресурса dialog, отображаемый в программе resurs hacker. Это всего лишь пример, здесь не указаны Стили, которые будут отображены в реальном ресурсе и разделены между собой вертикальной чертой (|). Комментарии выделены курсивом:

about dialog 138, 102, 276, 68;Размеры всего диалога
style (Стили);Стиль окна
caption "about...";Название окна
language lang_neutral, sublang_neutral;Язык диалога
font 8, "ms sans serif";Размер и тип используемого шрифта
{
control "©2002 by lenin inc", 8, static (Стили), 40, 14, 90, 32
control "all rights reserved", 9, static (Стили), 40, 19, 90, 32
control "&ok", 1, button (Стили), 218, 6, 50, 14
control "&cancel", 2, button (Стили), 218, 26, 50, 14
control 1, 3903, static (Стили), 10, 10, 18, 20
}

Для перевода на другой язык вам нужно будет заменять текст, находящийся в кавычках (" "). Если Ваш текст не помещается, растяните его курсором мыши в окне. Размер текста и кнопок можно также задать числами, которые находятся в конце строк.

Посмотрите на окончание самой последней из строк - Вы увидите четыре числа:

Первое - задает отступ элемента от правого края
Второе - задает отступ элемента от верхнего края
Третье - задает ширину элемента
Четвертое - задает высоту элемента
Символ & подчеркивает букву, расположенную после него. Подчеркнутая буква устанавливает "гарячую" клавишу, при нажатии на которую запускаеться соответствующий процесс. Ресурсы menu и string редактируються также, как и dialog - изменяется текст, находящийся в кавычках (" "). Посмотрите как выглядит ресурс меню:

toolbar menu
language lang_neutral, sublang_neutral;Язык меню
{
popup "&file"
{
menuitem "&open file\tctrl+o", 190
menuitem "&save file\tctrl+s", 151
menuitem "save file &as...\tshift+ctrl+s", 152
menuitem separator;Разделительная полоса
menuitem "&exit\talt+x", 143
}
}

После элемента \t указаны сочитания клавиш для быстрого доступа. Их не рекомендуеться изменять.

Все, что было сказано выше, в основном касается программ, написанных на api настоящими программистами, то есть без использования визуальных компонентов. Открыв программу, написанную с помощью визуальных компонентов, например, в delphi, Вы увидите структуру, в которой будут ресурсы типа rcdata. Чуть ниже представлен фрагмент подобного кода, который отображает окно "errors". К сожалению, само окно Вы не сможите увидеть в редакторе ресурсов. Ни один из указанных здесь редакторов ресурсов не отображает предпросмотр окон программ, написанных в delphi.

object errform: terrform \\Начало создания окна
left = 389
top = 337
width = 348 \\Ширина основного окна
height = 283 \\Высота основного окна
caption = 'errors' \\Заголовок окна
font.charset = default_charset
font.color = clwindowtext
font.height = -11
font.name = 'ms sans serif' \\Используемый шрифт
font.style = [ ]
position = podefaultposonly
onclose = formclose
onshow = formshow
pixelsperinch = 96
textheight = 13
object panel1: tpanel \\Начало создания панели
left = 0 \\Отступ слева
top = 0 \\Отступ справа
width = 340 \\Ширина панели
height = 25 \\Высота панели
align = altop
alignment = taleftjustify
bevelouter = bvnone
hint = 'message' \\Текст подсказки
caption = 'not found this files! run process again?'
taborder = 0
end \\Завершение создания панели
end \\Завершение создания окна
Здесь нужно изменять текст, находящийся между одинарными кавычками (' ').

Если при переводе Ваш текст не поместился в одну строку, добавьте конструкцию wordwrap = true. Это позволит расположить текст любой длины, причем количество строк будет определяться автоматически:

object panel1: tpanel \\Начало создания панели
left = 0 \\Отступ слева
top = 0 \\Отступ справа
width = 340 \\Ширина панели
height = 25 \\Высота панели
align = altop
alignment = taleftjustify
bevelouter = bvnone
hint = 'message' \\Текст подсказки
caption = 'not found this files! run process again?'
wordwrap = true \\Добавили новый параметр
taborder = 0
end \\Завершение создания панели

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

Все это достаточно просто, ведь текст в редакторе ресурсов виден и доступен для редактирования. Но что делать, если текст какого-то окна сообщения находиться не в ресурсах, а в внутри модуля программы? Вот тут нам и поможет шестнадцатеричный редактор. Итак, мы открываем программу, например, в winhex и находим структуру, которую хотим перевести. Возмем для примера текст all rights reserved, который спрятан внутри exe модуля.


Переводим его на русский язык так, чтобы наш текст не выходил за рамки оригинального текста и сохраняем.


И самое главное: не забывайте первое правило любого крякера - Делайте резервные копии!
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо зайти на сайт под своим именем.
Вы читаете: Статьи » Программирование » C++ » Перевод программ под Windows
Статьи по теме:
  • Добавление CSS
  • Расширяем возможности кнопок в Delphi
  • Что такое CSS
  • Выпадающие меню с помощью CSS
  • Основы позиционирования блоков
  •  (голосов: 2)
    Просмотров: 2290 :: Комментарии: (0) :: :: Напечатать

    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
     
    Design by PODPOLE