diff --git a/Cheat Engine/bin/languages/ru_RU/CeShare.po b/Cheat Engine/bin/languages/ru_RU/CeShare.po index 84dc8197..d6e76d06 100644 --- a/Cheat Engine/bin/languages/ru_RU/CeShare.po +++ b/Cheat Engine/bin/languages/ru_RU/CeShare.po @@ -30,6 +30,10 @@ msgstr "Версиянезависимая" msgid "% Match" msgstr "% Совпадения" +#: frmCEShareCheatBrowser.Signed.Caption +msgid "Signed" +msgstr "Подписано" + #: frmCEShareCheatBrowser.btnLoadTable.Caption msgid " Load " msgstr "Загрузка" @@ -66,8 +70,7 @@ msgstr "Просмотр Комментариев" msgid "Login to see more options" msgstr "Войдите, чтобы увидеть больше вариантов" -#: frmCEShareCheatBrowser.miUpdateTable.Caption -#: frmCEShareUpdateOrNew_1.btnChoose.Caption +#: frmCEShareCheatBrowser.miUpdateTable.Caption frmCEShareUpdateOrNew_1.btnChoose.Caption msgid "Update table" msgstr "Обновить таблицу" @@ -100,33 +103,23 @@ msgid "CEShare community URL:" msgstr "URL сообщества CEShare:" #: ceshare_initiaISetup.CELabel2.Caption -msgid "" -"By entering a CEShare URL you will be able to upload and download Cheat " -"Tables from a ceshare server community" -msgstr "" -"Введя CEShare URL, вы сможете загружать и скачивать чит-таблицы из " -"сообщества серверов ceshare" +msgid "By entering a CEShare URL you will be able to upload and download Cheat Tables from a ceshare server community" +msgstr "Введя CEShare URL, вы сможете загружать и скачивать чит-таблицы из сообщества серверов ceshare" #: ceshare_initiaISetup.CELabel3.Caption msgid "" -"Disclaimer: These are third-party servers. They are not owned or maintained " -"by the Cheat Engine project, and no warranty or responsiblity regarding " -"their content is given. \n" +"Disclaimer: These are third-party servers. They are not owned or maintained by the Cheat Engine project, and no warranty or responsiblity regarding their content is given. \n" "\n" "Please contact the respective server owner for further inquiries." msgstr "" -"Отказ от ответственности: Это сторонние серверы. Они не принадлежат проекту " -"Cheat Engine и не обслуживаются им, а также не дают никаких гарантий и не " -"несут никакой ответственности за их содержание. \n" +"Отказ от ответственности: Это сторонние серверы. Они не принадлежат проекту Cheat Engine и не обслуживаются им, а также не дают никаких гарантий и не несут никакой " +"ответственности за их содержание. \n" "\n" -"Пожалуйста, свяжитесь с владельцем соответствующего сервера для получения " -"дополнительных сведений." +"Пожалуйста, свяжитесь с владельцем соответствующего сервера для получения дополнительных сведений." #: ceshare_initiaISetup.CELabel4.Caption msgid "Click cancel or leave empty if you don't wish to use this" -msgstr "" -"Нажмите кнопку «Отмена» или оставьте пустым, если вы не хотите использовать " -"это" +msgstr "Нажмите кнопку «Отмена» или оставьте пустым, если вы не хотите использовать это" #: ceshare_initiaISetup.CEButton1.Caption msgid "OK" @@ -174,13 +167,11 @@ msgstr "Разрешить всем изменять эту таблицу" #: frmCESharePublishCheat.cbPublic.Hint msgid "" -"When this is enabled will let EVERYONE be able to edit/replace your table. " -"So be careful with enabling this and understand that once someone else has " -"modified the table, you will not be able to delete it anymore" +"When this is enabled will let EVERYONE be able to edit/replace your table. So be careful with enabling this and understand that once someone else has modified the table, you " +"will not be able to delete it anymore" msgstr "" -"Когда эта опция включена, каждый сможет редактировать/заменять вашу " -"таблицу. Так что будьте осторожны с включением этой опции и поймите, что " -"как только кто-то другой изменит таблицу, вы больше не сможете её удалить" +"Когда эта опция включена, каждый сможет редактировать/заменять вашу таблицу. Так что будьте осторожны с включением этой опции и поймите, что как только кто-то другой изменит " +"таблицу, вы больше не сможете её удалить" #: frmCESharePublishCheat.btnPublish.Caption msgid "Publish" @@ -216,13 +207,16 @@ msgstr "Проверить наличие модов/читов для теку #: miRequestCheats.Caption msgid "Request and check other requests for mods/cheats for current process" -msgstr "" -"Запросить и проверить другие запросы на моды/читы для текущего процесса" +msgstr "Запросить и проверить другие запросы на моды/читы для текущего процесса" #: miLoginToSeeMoreOptions.Caption msgid "Publish/Update table" msgstr "Опубликовать/Обновить таблицу" +#: miViewAllTables.Caption +msgid "View all available tables" +msgstr "Просмотр всех доступных таблиц" + #: lblCEShareLabel.Caption msgid "CEShare community URL" msgstr "URL сообщества CEShare" @@ -237,14 +231,11 @@ msgstr "Разрешить" #: header.caption msgid "" -"This process needs a special identifier to set it apart from others with the " -"same name. To generate this identifier the below code is needed. Do you " -"agree with the execution of this code to generate the identifier?" +"This process needs a special identifier to set it apart from others with the same name. To generate this identifier the below code is needed. Do you agree with the execution " +"of this code to generate the identifier?" msgstr "" -"Этот процесс нуждается в специальном идентификаторе, чтобы отличить его от " -"других с тем же именем. Для генерации этого идентификатора необходим код, " -"приведённый ниже. Согласны ли вы с выполнением данного кода для генерации " -"идентификатора?" +"Этот процесс нуждается в специальном идентификаторе, чтобы отличить его от других с тем же именем. Для генерации этого идентификатора необходим код, приведённый ниже. " +"Согласны ли вы с выполнением данного кода для генерации идентификатора?" #: Error msgid "Error:" @@ -279,13 +270,8 @@ msgid "Logout when loading ceshare tables" msgstr "Выйти из системы при загрузке таблиц ceshare" #: ceshare_account-cbLogoutWhenLoadingTables.Hint -msgid "" -"When checked you will get logged out when loading a ceshare table. This to " -"prevent malicious tables from using your account" -msgstr "" -"Если флажок установлен, то вы выйдете из системы при загрузке таблицы " -"ceshare. Это предотвращает использование вашей учётной записи вредоносными " -"таблицами" +msgid "When checked you will get logged out when loading a ceshare table. This to prevent malicious tables from using your account" +msgstr "Если флажок установлен, то вы выйдете из системы при загрузке таблицы ceshare. Это предотвращает использование вашей учётной записи вредоносными таблицами" #: ceshare_permissions msgid "Are you sure you wish to change the owner?" @@ -339,13 +325,13 @@ msgstr "Пожалуйста, выберите чит-таблицу для об msgid "Invalid background update query list" msgstr "Неверный список запросов на обновление в фоновом режиме" +#: ceshare_publish_TLAN +msgid "This looks like an empty table. Are you sure?" +msgstr "Выглядит как пустая таблица. Вы уверены?" + #: ceshare_publish -msgid "" -"Are you sure you wish to let 'Everyone' overwrite your table in the ceshare " -"system ?" -msgstr "" -"Вы действительно хотите разрешить «Всем» перезаписать вашу таблицу в системе " -"ceshare?" +msgid "Are you sure you wish to let 'Everyone' overwrite your table in the ceshare system ?" +msgstr "Вы действительно хотите разрешить «Всем» перезаписать вашу таблицу в системе ceshare?" #: ceshare_publish msgid "Do you wish to sign this table?" @@ -364,12 +350,8 @@ msgid "Table Owner" msgstr "Владелец таблицы" #: ceshare_querycheats -msgid "" -"Sorry, but there are currently no tables for this target. Perhaps you can be " -"the first" -msgstr "" -"Извините, но в настоящее время нет таблиц для этой цели. Возможно, вы можете " -"быть первым" +msgid "Sorry, but there are currently no tables for this target. Perhaps you can be the first" +msgstr "Извините, но в настоящее время нет таблиц для этого процесса. У вас есть возможность стать первым" #: ceshare_requests msgid "Requests" @@ -378,3 +360,29 @@ msgstr "Запросы" #: ceshare_requests msgid "Score=" msgstr "Оценка=" + +#: ceshare_fulltablelist +msgid " and %d more tables..." +msgstr " и еще %d таблиц..." + +#: ceshare_fulltablelist +msgid "All tables" +msgstr "Все таблицы" + +#: ceshare_fulltablelist +msgid "Search:" +msgstr "Поиск:" + +#: ceshare_fulltablelist +msgid "Previous (25)" +msgstr "Предыдущие (25)" + +#: ceshare_fulltablelist +msgid "Next (25)" +msgstr "Следующие (25)" + +#: ceshare_querycheats_TCTI +msgid "The current table is trying to load obfuscated code. This often means mallicious intent as tables are supposed to be public. Do you wish to execute this lua code anyhow?" +msgstr "" +"Текущая таблица пытается загрузить обфусцированный код. Это часто означает злой умысел, поскольку таблицы должны быть общедоступными. Хотите ли вы выполнить этот код lua в " +"любом случае?" diff --git a/Cheat Engine/bin/languages/ru_RU/Java.po b/Cheat Engine/bin/languages/ru_RU/Java.po index 80ef4828..a642cbbf 100755 --- a/Cheat Engine/bin/languages/ru_RU/Java.po +++ b/Cheat Engine/bin/languages/ru_RU/Java.po @@ -1,292 +1,287 @@ -msgid "" -msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" -"Project-Id-Version: java.lua;javaclass.lua;javaClassEditor.lua RU\n" -"Language-Team: SER[G]ANT \n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"X-Generator: Poedit 2.0.2\n" - -#: java-AAF -msgid "Auto assembler failed:" -msgstr "Автоассемблер потерпел неудачу:" - -#: java-JEST -msgid "Java:eventserver terminated" -msgstr "Java: eventserver завершил работу" - -#: java-JD -msgid "Java:Disconnected" -msgstr "Java: Отключен" - -#: java-JUER -msgid "Java:Unexpected event received" -msgstr "Java: Получено неожиданное событие" - -#: java-JEHT -msgid "Java:Event handler terminating" -msgstr "Java:Завершение обработчика событий" - -#: java-IJS -msgid "Invalid java signature" -msgstr "Недействительная сигнатура java" - -#: java-ARTANS -msgid "Array return types are not supported" -msgstr "Возвращаемый массив не поддерживается" - -#: java-PCDNM -msgid "Parameter count does not match" -msgstr "Количество параметров не совпадает" - -#: java-SWNS -msgid "Scantype was not set" -msgstr "Тип поиска не был установлен" - -#: java-Class -msgid "Class" -msgstr "Класс" - -#: java-Method -msgid "Method" -msgstr "Метод" - -#: java-Position -msgid "Position" -msgstr "Позиция" - -#: java-MI -msgid "More info %s.%s(%d)" -msgstr "Дополнительная информация %s.%s(%d)" - -#: java-TDMATGV -msgid "The following methods accessed the given variable" -msgstr "Следующие методы получили доступ к данной переменной" - -#: java-results -msgid "results" -msgstr "результаты" - -#: java-OWWTJAILAS -msgid "java_find_what_writes only works when the jvmti agent is launched at start" -msgstr "java_find_what_writes работает, только если JVMTI агент запущен при старте" - -#: java-Generic -msgid " Generic=" -msgstr " Обобщения=" - -#: java-SC -msgid "superclass=" -msgstr "суперкласс=" - -#: java-II -msgid "---Implemented interfaces---" -msgstr "---Реализованные интерфейсы---" - -#: java-Fields -msgid "---Fields---" -msgstr "---Поля---" - -#: java-Methods -msgid "---Methods---" -msgstr "---Методы---" - -#: java-SFC -msgid "Search for class..." -msgstr "Найти класс..." - -#: java-SF -msgid "Search for..." -msgstr "Найти..." - -#: java-NewS -msgid "New Scan" -msgstr "Снова" - -#: java-FS -msgid "First Scan" -msgstr "Поиск" - -#: java-JVScanner -msgid "Java Variable Scanner" -msgstr "Сканер Java переменных" - -#: java-Value -msgid "Value" -msgstr "Значение" - -#: java-NextS -msgid "Next Scan" -msgstr "Отсев" - -#: java-Found -msgid "Found:" -msgstr "Найдено:" - -#: java-FWATV -msgid "Find what accesses this value" -msgstr "Найти обращения к этому значению" - -#: java-Search -msgid "Search" -msgstr "Найти" - -#: java-FC -msgid "Find Class" -msgstr "Найти Класс" - -#: java-Finddotdotdot -msgid "Find..." -msgstr "Найти..." - -#: java-EM -msgid "Edit method" -msgstr "Изменить метод" - -#: java-AJF -msgid "Activate java features" -msgstr "Активировать java функции" - -#: java-DJC -msgid "Dissect java classes" -msgstr "Анализ java классов" - -#: java-JVScan -msgid "Java variable scan" -msgstr "Сканер Java переменных" - -#: java-DCP -msgid "Debug child processes" -msgstr "Отладка дочерних процессов" - -#: java-JHDTI -msgid "The java handler failed to initialize" -msgstr "Не удалось инициализировать java обработчик" - -#: java-SJMIEITTP -msgid "Show java menu item even if the target process hasn't loaded jvm.dll (Used for the local setEnvironment option)" -msgstr "Показывать меню «Java», даже если процесс не загрузил jvm.dll (Используется для локальной опции setEnvironment)" - -#: javaclass-ICPTE -msgid "Invalid constant pool tag encountered: " -msgstr "Повстречался неверный тег пула констант: " - -#: javaclass-Tag -msgid " (tag=" -msgstr " (тег=" - -#: javaclass-NAVC -msgid "Not a valid classfile" -msgstr "Недействительный файл класса" - -#: javaclasseditor-ICNI -msgid " is currently not implemented" -msgstr " в настоящее время не реализована" - -#: javaclasseditor-WCNBUW -msgid "wide can not be used with " -msgstr "ширина не может использоваться с " - -#: javaclasseditor-IAOPPF -msgid "Invalid amount of parameters provided for " -msgstr "Недопустимое количество параметров, предусмотренных для " - -#: javaclasseditor-TL -msgid "The label " -msgstr "Метка " - -#: javaclasseditor-INYD -msgid "is not yet defined" -msgstr "ещё не определена" - -#: javaclasseditor-TIICNI -msgid "This instruction is currently not implemented" -msgstr "Данная инструкция в настоящее время не реализована" - -#: javaclasseditor-UI -msgid "unknown instruction:" -msgstr "неизвестная инструкция:" - -#: javaclasseditor-YCORI -msgid "You can only replace instructions on an instruction boundary" -msgstr "Вы можете заменять инструкции только на границе инструкции" - -#: javaclasseditor-StartIndex -msgid "si=" -msgstr "StartIndex" - -#: javaclasseditor-Offset -msgid " offset=" -msgstr " смещение=" - -#: javaclasseditor-IL -msgid "Insert line" -msgstr "Вставить строку" - -#: javaclasseditor-ITJAC -msgid "Input the java assembly code you wish to insert at line " -msgstr "Введите ассемблерный код, который вы хотите вставить в строку " - -#: javaclasseditor-EL -msgid "Edit line" -msgstr "Редактировать строку" - -#: javaclasseditor-DNL -msgid "Define new label" -msgstr "Определить новую метку" - -#: javaclasseditor-GALFL -msgid "Give a labelname for line " -msgstr "Задайте имя метки для строки " - -#: javaclasseditor-TIAALWTN -msgid "There is already a label with this name" -msgstr "Метка с таким именем уже существует" - -#: javaclasseditor-OBSNBS -msgid "old bsize=%d new bsize=%d" -msgstr "старый размер в байтах=%d новый размер в байтах=%d" - -#: javaclasseditor-OSNS -msgid "old size=%d new size=%d" -msgstr "старый размер=%d новый размер=%d" - -#: javaclasseditor-Method -msgid "Method: " -msgstr "Метод: " - -#: javaclasseditor-MS -msgid "Max Stack" -msgstr "Макс. стек" - -#: javaclasseditor-ML -msgid "Max Locals" -msgstr "Макс. локальных переменных" - -#: javaclasseditor-SC -msgid "Save changes" -msgstr "Сохранить изменения" - -#: javaclasseditor-Index -msgid "Index" -msgstr "" - -#: javaclasseditor-BI -msgid "ByteIndex" -msgstr "" - -#: javaclasseditor-Label -msgid "Label" -msgstr "Метка" - -#: javaclasseditor-Exception -msgid "Exception" -msgstr "Исключение" - -#: javaclasseditor-Instruction -msgid "Instruction" -msgstr "Инструкция" - -#: javaclasseditor-DL -msgid "Define label" -msgstr "Определить метку" +#: java-AAF +msgid "Auto assembler failed:" +msgstr "Автоассемблер потерпел неудачу:" + +#: java-JEST +msgid "Java:eventserver terminated" +msgstr "Java: сервер событий завершил работу" + +#: java-JD +msgid "Java:Disconnected" +msgstr "Java: Отключен" + +#: java-JUER +msgid "Java:Unexpected event received" +msgstr "Java: Получено неожиданное событие" + +#: java-JEHT +msgid "Java:Event handler terminating" +msgstr "Java:Завершение обработчика событий" + +#: java-IJS +msgid "Invalid java signature" +msgstr "Недействительная сигнатура java" + +#: java-ARTANS +msgid "Array return types are not supported" +msgstr "Возвращаемый массив не поддерживается" + +#: java-PCDNM +msgid "Parameter count does not match" +msgstr "Количество параметров не совпадает" + +#: java-SWNS +msgid "Scantype was not set" +msgstr "Тип поиска не был установлен" + +#: java-Class +msgid "Class" +msgstr "Класс" + +#: java-Method +msgid "Method" +msgstr "Метод" + +#: java-Position +msgid "Position" +msgstr "Позиция" + +#: java-MI +msgid "More info %s.%s(%d)" +msgstr "Дополнительная информация %s.%s(%d)" + +#: java-TDMATGV +msgid "The following methods accessed the given variable" +msgstr "Следующие методы получили доступ к данной переменной" + +#: java-results +msgid "results" +msgstr "результаты" + +#: java-OWWTJAILAS +msgid "java_find_what_writes only works when the jvmti agent is launched at start" +msgstr "java_find_what_writes работает, только если JVMTI агент запущен при старте" + +#: java-Generic +msgid " Generic=" +msgstr " Обобщения=" + +#: java-SC +msgid "superclass=" +msgstr "суперкласс=" + +#: java-II +msgid "---Implemented interfaces---" +msgstr "---Реализованные интерфейсы---" + +#: java-Fields +msgid "---Fields---" +msgstr "---Поля---" + +#: java-Methods +msgid "---Methods---" +msgstr "---Методы---" + +#: java-SFC +msgid "Search for class..." +msgstr "Найти класс..." + +#: java-SF +msgid "Search for..." +msgstr "Найти..." + +#: java-NewS +msgid "New Scan" +msgstr "Снова" + +#: java-FS +msgid "First Scan" +msgstr "Поиск" + +#: java-JVScanner +msgid "Java Variable Scanner" +msgstr "Сканер переменных Java" + +#: java-Value +msgid "Value" +msgstr "Значение" + +#: java-NextS +msgid "Next Scan" +msgstr "Отсев" + +#: java-Found +msgid "Found:" +msgstr "Найдено:" + +#: java-FWATV +msgid "Find what accesses this value" +msgstr "Выяснить, что обращается к этому значению" + +#: java-Search +msgid "Search" +msgstr "Найти" + +#: java-FC +msgid "Find Class" +msgstr "Найти Класс" + +#: java-Finddotdotdot +msgid "Find..." +msgstr "Найти..." + +#: java-EM +msgid "Edit method" +msgstr "Изменить метод" + +#: java-AJF +msgid "Activate java features" +msgstr "Активировать java функции" + +#: java-DJC +msgid "Dissect java classes" +msgstr "Анализ java классов" + +#: java-JVScan +msgid "Java variable scan" +msgstr "Сканирование переменных Java" + +#: java-DCP +msgid "Debug child processes" +msgstr "Отладка дочерних процессов" + +#: java-JHDTI +msgid "The java handler failed to initialize" +msgstr "Не удалось инициализировать java обработчик" + +#: java-SJMIEITTP +msgid "Show java menu item even if the target process hasn't loaded jvm.dll (Used for the local setEnvironment option)" +msgstr "Показывать меню «Java», даже если процесс не загрузил jvm.dll (Используется для локальной опции setEnvironment)" + +#: javaclass-ICPTE +msgid "Invalid constant pool tag encountered: " +msgstr "Повстречался неверный тег пула констант: " + +#: javaclass-Tag +msgid " (tag=" +msgstr " (тег=" + +#: javaclass-NAVC +msgid "Not a valid classfile" +msgstr "Недействительный файл класса" + +#: javaclasseditor-ICNI +msgid " is currently not implemented" +msgstr " в настоящее время не реализована" + +#: javaclasseditor-WCNBUW +msgid "wide can not be used with " +msgstr "ширина не может использоваться с " + +#: javaclasseditor-IAOPPF +msgid "Invalid amount of parameters provided for " +msgstr "Недопустимое количество параметров, предусмотренных для " + +#: javaclasseditor-TL +msgid "The label " +msgstr "Метка " + +#: javaclasseditor-INYD +msgid "is not yet defined" +msgstr "ещё не определена" + +#: javaclasseditor-TIICNI +msgid "This instruction is currently not implemented" +msgstr "Данная инструкция в настоящее время не реализована" + +#: javaclasseditor-UI +msgid "unknown instruction:" +msgstr "неизвестная инструкция:" + +#: javaclasseditor-YCORI +msgid "You can only replace instructions on an instruction boundary" +msgstr "Вы можете заменять инструкции только на границе инструкции" + +#: javaclasseditor-StartIndex +msgid "si=" +msgstr "StartIndex" + +#: javaclasseditor-Offset +msgid " offset=" +msgstr " смещение=" + +#: javaclasseditor-IL +msgid "Insert line" +msgstr "Вставить строку" + +#: javaclasseditor-ITJAC +msgid "Input the java assembly code you wish to insert at line " +msgstr "Введите ассемблерный код, который вы хотите вставить в строку " + +#: javaclasseditor-EL +msgid "Edit line" +msgstr "Редактировать строку" + +#: javaclasseditor-DNL +msgid "Define new label" +msgstr "Определить новую метку" + +#: javaclasseditor-GALFL +msgid "Give a labelname for line " +msgstr "Задайте имя метки для строки " + +#: javaclasseditor-TIAALWTN +msgid "There is already a label with this name" +msgstr "Метка с таким именем уже существует" + +#: javaclasseditor-OBSNBS +msgid "old bsize=%d new bsize=%d" +msgstr "старый размер в байтах=%d новый размер в байтах=%d" + +#: javaclasseditor-OSNS +msgid "old size=%d new size=%d" +msgstr "старый размер=%d новый размер=%d" + +#: javaclasseditor-Method +msgid "Method: " +msgstr "Метод: " + +#: javaclasseditor-MS +msgid "Max Stack" +msgstr "Макс. стек" + +#: javaclasseditor-ML +msgid "Max Locals" +msgstr "Макс. локальных переменных" + +#: javaclasseditor-SC +msgid "Save changes" +msgstr "Сохранить изменения" + +#: javaclasseditor-Index +msgid "Index" +msgstr "" + +#: javaclasseditor-BI +msgid "ByteIndex" +msgstr "" + +#: javaclasseditor-Label +msgid "Label" +msgstr "Метка" + +#: javaclasseditor-Exception +msgid "Exception" +msgstr "Исключение" + +#: javaclasseditor-Instruction +msgid "Instruction" +msgstr "Инструкция" + +#: javaclasseditor-DL +msgid "Define label" +msgstr "Определить метку" + +#: java-JI +msgid "Java Info" +msgstr "Информация о Java" diff --git a/Cheat Engine/bin/languages/ru_RU/SaveSessions.po b/Cheat Engine/bin/languages/ru_RU/SaveSessions.po index 32930ccb..c95dd82b 100755 --- a/Cheat Engine/bin/languages/ru_RU/SaveSessions.po +++ b/Cheat Engine/bin/languages/ru_RU/SaveSessions.po @@ -1,19 +1,19 @@ -SS-OaPF -msgid "Open a process first" -msgstr "Сначала откройте процесс" - -#: SS-CESF -msgid "Cheat Engine Scan files" -msgstr "Файлы сканирования Cheat Engine" - -#: SS-OaPFaDaS -msgid "Open a process first and do a scan" -msgstr "Сначала откройте процесс и произведите сканирование" - -#: SS-SSS -msgid "Save scan session" -msgstr "Сохранить сессию поиска" - -#: SS-LSS -msgid "Load scan session" -msgstr "Загрузить сессию поиска" +#:SS-OaPF +msgid "Open a process first" +msgstr "Сначала откройте процесс" + +#: SS-CESF +msgid "Cheat Engine Scan files" +msgstr "Файлы сканирования Cheat Engine" + +#: SS-OaPFaDaS +msgid "Open a process first and do a scan" +msgstr "Сначала откройте процесс и произведите сканирование" + +#: SS-SSS +msgid "Save scan session" +msgstr "Сохранить сессию поиска" + +#: SS-LSS +msgid "Load scan session" +msgstr "Загрузить сессию поиска" \ No newline at end of file diff --git a/Cheat Engine/bin/languages/ru_RU/VersionCheck.po b/Cheat Engine/bin/languages/ru_RU/VersionCheck.po index eccd6263..bc967c33 100755 --- a/Cheat Engine/bin/languages/ru_RU/VersionCheck.po +++ b/Cheat Engine/bin/languages/ru_RU/VersionCheck.po @@ -1,48 +1,39 @@ -msgid "" -msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" -"Project-Id-Version: versioncheck.lua RU\n" -"Language-Team: SER[G]ANT \n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"X-Generator: Poedit 2.0.2\n" - -#: VC-U2CVICNEL -msgid "Unable to check version (Invalid content, not enough lines)" -msgstr "Не удалось проверить версию (Недействительное содержимое, не хватает строк)" - -#: VC-U2CVIC -msgid "Unable to check version (Invalid content)" -msgstr "Не удалось проверить версию (Недействительное содержимое)" - -#: VC-CFNV -msgid "Check for new version" -msgstr "Проверить наличие новой версии" - -#: VC-NCA -msgid "Cheat Engine %s is available at www.cheatengine.org. Go there now?" -msgstr "Cheat Engine %s доступен на www.cheatengine.org. Перейти на него сейчас?" - -#: VC-UP2D -msgid "You are up to date. The latest version is %s" -msgstr "Обновление не требуется. Последняя версия %s" - -#: VC-WTF -msgid "Unable to check version (Can't connect)" -msgstr "Не удалось проверить версию (Не удаётся подключиться)" - -#: VC-UPDATETO -msgid "Update to %s" -msgstr "Обновить до %s" - -#: VC-UPDATETO -msgid "In how many days should I notify you again?" -msgstr "Через сколько дней я снова должен вас уведомить?" - -#: VC-SETTINGS-TEXT -msgid "Check for updates when Cheat Engine starts" -msgstr "Проверять наличие обновлений при запуске Cheat Engine" - -#: VC-INTERVAL -msgid "Interval(days):" -msgstr "Интервал(в днях):" +#: VC-U2CVICNEL +msgid "Unable to check version (Invalid content, not enough lines)" +msgstr "Не удалось проверить версию (Недействительное содержимое, не хватает строк)" + +#: VC-U2CVIC +msgid "Unable to check version (Invalid content)" +msgstr "Не удалось проверить версию (Недействительное содержимое)" + +#: VC-CFNV +msgid "Check for new version" +msgstr "Проверить наличие новой версии" + +#: VC-NCA +msgid "Cheat Engine %s is available at www.cheatengine.org. Go there now?" +msgstr "Cheat Engine %s доступен на www.cheatengine.org. Перейти на него сейчас?" + +#: VC-UP2D +msgid "You are up to date. The latest version is %s" +msgstr "Обновление не требуется. Последняя версия %s" + +#: VC-WTF +msgid "Unable to check version (Can't connect)" +msgstr "Не удалось проверить версию (Не удаётся подключиться)" + +#: VC-UPDATETO +msgid "Update to %s" +msgstr "Обновить до %s" + +#: VC-UPDATETO +msgid "In how many days should I notify you again?" +msgstr "Через сколько дней я снова должен вас уведомить?" + +#: VC-SETTINGS-TEXT +msgid "Check for updates when Cheat Engine starts" +msgstr "Проверять наличие обновлений при запуске Cheat Engine" + +#: VC-INTERVAL +msgid "Interval(days):" +msgstr "Интервал(в днях):" \ No newline at end of file diff --git a/Cheat Engine/bin/languages/ru_RU/autosave.po b/Cheat Engine/bin/languages/ru_RU/autosave.po new file mode 100644 index 00000000..d40a178c --- /dev/null +++ b/Cheat Engine/bin/languages/ru_RU/autosave.po @@ -0,0 +1,39 @@ +#: autosave-AioC +msgid "Another instance of Cheat Engine has crashed and it created an autosave. Autosave disabled until you go to settings and click ok" +msgstr "Другой экземпляр Cheat Engine потерпел крах и создал автосохранение. Автосохранение будет отключено, пока вы не перейдёте в настройки и не нажмёте «Подтвердить»" + +#: autosave-Ftoa +msgid "Failure to obtain a location to save the autosave data" +msgstr "Не удалось получить расположение для сохранения данных автосохранения" + +#: autosave-UR +msgid "Unknown Reason" +msgstr "Неизвестная причина" + +#: autosave-Ftat +msgid "Failure to autosave table : " +msgstr "Сбой автосохранения таблицы : " + +#: autosave-Ftas +msgid "Failure to autosave state : " +msgstr "Сбой автосохранения состояния: " + +#: autosave-Ftla +msgid "Failure to load autosave at %s . Error: %s" +msgstr "Сбой при загрузке автосохранения в %s . Ошибка: %s" + +#: autosave-Tssb +msgid "The saved state belongs to a different autosave version that is not currently implemented" +msgstr "Сохранённое состояние относится к другой версии автосохранения, которая в данный момент не реализована" + +#: autosave-ASI +msgid "Auto Save Interval (In seconds. 0 is disabled)" +msgstr "Интервал автосохранения(В секундах. 0 - отключен)" + +#: autosave-AS +msgid "Auto Save" +msgstr "Автосохранение" + +#: autosave-CEdn +msgid "Cheat Engine did not properly close last time. Do you wish to restore your work?" +msgstr "Cheat Engine не закрылся должным образом в прошлый раз. Вы хотите восстановить работу?" diff --git a/Cheat Engine/bin/languages/ru_RU/cheatengine-x86_64.po b/Cheat Engine/bin/languages/ru_RU/cheatengine-x86_64.po index 669a8cc9..4cb768f8 100755 --- a/Cheat Engine/bin/languages/ru_RU/cheatengine-x86_64.po +++ b/Cheat Engine/bin/languages/ru_RU/cheatengine-x86_64.po @@ -1,15 +1,15 @@ msgid "" msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" -"Project-Id-Version: Cheat Engine 7.2 RU\n" -"Language-Team: SER[G]ANT \n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"X-Generator: Poedit 2.4.1\n" +"Project-Id-Version: Cheat Engine 7.5.2 RU\n" "POT-Creation-Date: \n" "PO-Revision-Date: \n" "Last-Translator: \n" +"Language-Team: SER[G]ANT \n" +"Language: ru_RU\n" "MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.4.2\n" #: aboutunit.rsareyousureyouwanttolaunchdbvm msgid "Are you sure you want to launch DBVM? You seem to be running in 32-bit, so don't really need it that badly (Except for ultimap and cloaked operations)" @@ -21,7 +21,7 @@ msgstr "Вы действительно думали, что нашли бы т #: aboutunit.rslaunchdbvmwasnotassigned msgid "launchdbvm was not assigned" -msgstr "launchdbvm не был определён" +msgstr "launchdbvm не был назначен" #: aboutunit.rsthismeansthatyourecurrentlynotrunningdbvm msgid "This means that you're currently not running dbvm, but that your system is capable of running it" @@ -37,11 +37,11 @@ msgstr "Для использования дополнительных наст #: aboutunit.rsyoursystemdoesnotsupportdbvm msgid "Your system does not support DBVM. Perhaps it is already inside a VM" -msgstr "Ваша система не поддерживает DBVM. " +msgstr "Ваша система не поддерживает DBVM. Возможно, она уже находится внутри виртуальной машины" #: aboutunit.rsyoursystemisrunningdbvmversion -msgid "Your system is running DBVM version %s" -msgstr "На вашей системе запущена DBVM v%s" +msgid "Your system is running DBVM version %s (%.0n bytes free (%d pages))" +msgstr "На вашей системе запущена DBVM %s (%.0n байт свободно (%d страниц))" #: aboutunit.rsyoursystemsupportsdbvm msgid "Your system supports DBVM" @@ -104,6 +104,7 @@ msgid "Change Description" msgstr "Изменить описание" #: addresslist.rschangevalue +msgctxt "addresslist.rschangevalue" msgid "Change Value" msgstr "Изменить значение" @@ -130,7 +131,7 @@ msgstr "<скрипт>" #: addresslist.rssortonclick msgid "Sort on click" -msgstr "Сортировать по клику" +msgstr "Сортировка по клику" #: addresslist.rsthevaluecouldnotbeparsed msgid "The value %s could not be parsed" @@ -164,7 +165,7 @@ msgstr "Cheat Engine не удалось попасть в конфигурац #: advancedoptionsunit.rsaoerrorwhiletryingtocreatethesharedkeystructureetc msgid "Error while trying to create the shared key structure! (Which efficiently renders this whole feature useless)" -msgstr "Ошибка при попытке создания общей ключевой структуры! (Что делает эту функцию бесполезной)" +msgstr "Ошибка при cоздании структуры общего ключа! (Что делает эту функцию бесполезной)" #: advancedoptionsunit.rsaoyoucanonlyloadexefiles msgctxt "advancedoptionsunit.rsaoyoucanonlyloadexefiles" @@ -190,12 +191,12 @@ msgstr "Новое название" #: advancedoptionsunit.rspaused msgid "paused" -msgstr "остановлен" +msgstr "приостановлен" #: advancedoptionsunit.rspausethegame msgctxt "advancedoptionsunit.rspausethegame" msgid "Pause the game" -msgstr "Остановить процесс игры" +msgstr "Приостановить процесс игры" #: advancedoptionsunit.rsresumethegame msgid "Resume the game" @@ -206,6 +207,10 @@ msgctxt "advancedoptionsunit.rsthememoryatthisaddresscouldntbewritten" msgid "The memory at this address couldn't be written" msgstr "Нельзя записать в память по этому адресу" +#: advancedoptionsunit.straddanyhow +msgid "Add anyhow? (It will break restore and undo if overlapping entries get modified)" +msgstr "Добавить в любом случае?(Это прервёт восстановление и отмену, если будут изменены перекрывающиеся записи)" + #: advancedoptionsunit.straddressalreadyinthelist msgctxt "advancedoptionsunit.straddressalreadyinthelist" msgid "This address is already in the list" @@ -237,17 +242,18 @@ msgid "The memory at this address couldn't be written" msgstr "Нельзя записать в память по этому адресу" #: advancedoptionsunit.strfindwhatcodeaccesses +msgctxt "advancedoptionsunit.strfindwhatcodeaccesses" msgid "Find out what addresses this code accesses" -msgstr "Найти адреса, к которым обращается эта инструкция" +msgstr "Выяснить, к каким адресам обращается этот код" #: advancedoptionsunit.strfindwhatcodereads msgid "Find out what addresses this code reads from" -msgstr "Найти адреса, из которых читает эта инструкция" +msgstr "Выяснить, с каких адресов считывает этот код" #: advancedoptionsunit.strfindwhatcodewrites msgctxt "advancedoptionsunit.strfindwhatcodewrites" msgid "Find out what addresses this code writes to" -msgstr "Найти адреса, по которым записывает эта инструкция" +msgstr "Выяснить, по каким адресам записывает этот код" #: advancedoptionsunit.strnamececode msgid "What name do you want to give this code?" @@ -259,11 +265,11 @@ msgstr "Этот адрес не читаем" #: advancedoptionsunit.strnotthesame msgid "The memory at this address isn't what it should be! Continue?" -msgstr "Область памяти по этому адресу не та, что должна быть! Продолжить?" +msgstr "Память по этому адресу не та, что должна быть! Продолжить?" #: advancedoptionsunit.strnotwhatitshouldbe msgid "The memory at this address is'nt what it should be! Continue?" -msgstr "Область памяти по этому адресу не та, что должна быть! Продолжить?" +msgstr "Память по этому адресу не та, что должна быть! Продолжить?" #: advancedoptionsunit.strpartofopcodeinthelist msgid "At least one of these bytes is already in the list" @@ -275,7 +281,7 @@ msgstr "Выберите исполняемый файл Direct-3D игры" #: assemblerarm.rscannotbeencoded msgid " can not be encoded using 8 bits and double rotate" -msgstr " не может быть закодировано с использованием 8 бит и двойного поворота" +msgstr " не может быть закодировано с использованием 8-битного и двойного вращения" #: assemblerarm.rsdistanceistoobig msgid "Distance is too big" @@ -287,7 +293,7 @@ msgstr "Неверный регистр назначения" #: assemblerarm.rsinvalidfirstoperandregister msgid "Invalid first operand register" -msgstr "Неверный регистр операнда" +msgstr "Неверный регистр первого операнда" #: assemblerarm.rsinvalidopcode msgid "Invalid opcode" @@ -352,7 +358,7 @@ msgstr "Значение " #: assemblerarm.rsthisinstructionclassdoesnotallow msgid "This instruction class does not allow a register based shift" -msgstr "Этот класс инструкции не поддерживает сдвиговой регистр" +msgstr "Этот класс инструкций не позволяет выполнять сдвиг на основе регистра" #: assemblerarm.rstodochangethistoa12byteinstruction msgid "Todo: Change this to a 12 byte instruction: LDR/STR [PC,#16] - B PC - DD offset" @@ -370,6 +376,14 @@ msgstr "Не понятно, что вы имели в виду, написав msgid "Invalid" msgstr "Недопустимо" +#: assemblerunit.rsinvalid64bitvaluefor32bitfield +msgid "" +"The value %.16x can not be encoded using a 32-bit signed value. But if you meant %.16x then that's ok and you should have provided it like that in the first place. Is it ok to change it to this?\n" +"(This is the only time asked and will be remembered until you restart CE)" +msgstr "" +"Значение %.16x не может быть закодировано с использованием 32-разрядного значения со знаком. Но если вы имели в виду %.16x, то всё в порядке, и вы должны были указать его именно так. Можно ли изменить его на это?\n" +"(Это вопрос задаётся всего один раз, а ответ будет запомнен до перезапуска Cheat Engine)" + #: assemblerunit.rsinvalidaddress msgctxt "assemblerunit.rsinvalidaddress" msgid "Invalid address" @@ -393,8 +407,8 @@ msgid "Negative registers can not be encoded" msgstr "Негативные регистры не могут быть закодированы" #: assemblerunit.rsoffsettoobig -msgid "offset too big" -msgstr "смещение слишком большое" +msgid "This instruction can not be assembled because the distance between the current address and addressed address is too big. Try placing the address in a register first and use that" +msgstr "Эта инструкция не может быть ассемблирована, потому что расстояние между текущим и адресованным адресом слишком велико. Попробуйте сначала поместить адрес в регистр и использовать его" #: assemblerunit.rstheassemblertriedtosetaregistevaluethatistoohigh msgid "The assembler tried to set a register value that is too high" @@ -447,7 +461,7 @@ msgstr "«%s» не может быть найден" #: autoassembler.rscouldnotbeinjected msgid "%s could not be injected" -msgstr "Нельзя выполнить инъекцию «%s»" +msgstr "Не удалось внедрить «%s»" #: autoassembler.rsdefinealreadydefined msgid "Define %s already defined" @@ -458,8 +472,16 @@ msgid "Error in line %s (%s) :%s" msgstr "Ошибка в строке %s (%s): %s" #: autoassembler.rsfailurealloc -msgid "Failure allocating memory near %.8x" -msgstr "Неудачное выделение памяти около %.8x" +msgid "Failure allocating memory near %.8x for variable named %s" +msgstr "Не удалось выделить память около %.8x для переменной с именем %s" + +#: autoassembler.rsfailureassembling +msgid "Failure assembling %s at %.8x" +msgstr "Не удалось ассемблировать %s по адресу %.8x" + +#: autoassembler.rsfailuregettingoriginalinstruction +msgid "Failure getting the instruction at %x" +msgstr "Не удалось получить инструкцию по адресу %x" #: autoassembler.rsfailuretoallocatememory msgid "Failure to allocate memory" @@ -509,17 +531,25 @@ msgstr "метка «%s» не определена в скрипте" msgid "The {$TRY} at line %d has no matching {$EXCEPT}" msgstr "{$TRY} в строке %d не совпадает с {$EXCEPT}" +#: autoassembler.rsnearbyallocationerror +msgid "Nearby allocation error" +msgstr "Ошибка близкого распределения" + +#: autoassembler.rsnearbyallocationerrormessagequestion +msgid "This script uses nearby allocation but it is impossible to allocate nearby %x. Please rewrite the script to function without nearby allocation. Try executing the script anyhow and allocate on a region outside reach of 2GB? (The target will crash if the script was not designed with this failure in mind)" +msgstr "Этот скрипт использует ближайшую память для распределения, но невозможно распределить близко от % x. Пожалуйста, перепишите скрипт, чтобы он функционировал без близкого распределения. Попытаться выполнить скрипт в любом случае и выделить регион за пределами 2 ГБ? (Процесс аварийно завершит работу, если скрипт не был разработан с учётом этой ошибки)" + #: autoassembler.rsneedtousekernelmodereadwriteprocessmemory msgid "You need to use kernelmode read/writeprocessmemory if you want to use KALLOC" msgstr "Если вы хотите воспользоваться KALLOC, вам нужно использовать read/writeprocessmemory режима ядра" #: autoassembler.rsnopreferedrangeallocwarning msgid "None of the ALLOC statements specify a prefered address. Did you take into account that the JMP instruction is going to be 14 bytes long?" -msgstr "Ни в одной из функций ALLOC не указан предпочтительный адрес. Вы учли, что инструкция JMP будет иметь длину 14 байт?" +msgstr "Ни один из источников ALLOC не указывает предпочтительный адрес. Вы учли, что длина инструкции JMP будет составлять 14 байт?" #: autoassembler.rsnotallinstructionscouldbeinjected msgid "Not all instructions could be injected" -msgstr "Не все инструкции пригодны к инъекции" +msgstr "Не все инструкции могут быть внедрены" #: autoassembler.rssorrybutwithoutthedriverkallocwillnotfunction msgid "Sorry, but without the driver KALLOC will not function" @@ -533,6 +563,10 @@ msgstr "Ошибка синтаксиса" msgid "Syntax error. FullAccess(address,size)" msgstr "Ошибка синтаксиса. FullAccess(адрес,размер)" +#: autoassembler.rstheaddressincreatethreadandwaitisnotvalid +msgid "The address in createthreadandwait(%s) is not valid" +msgstr "Недопустимый адрес в createthreadandwait(%s)" + #: autoassembler.rstheaddressincreatethreadisnotvalid msgid "The address in createthread(%s) is not valid" msgstr "Недопустимый адрес в createthread(%s)" @@ -551,7 +585,7 @@ msgstr "Байты по адресу %s не те, что ожидались" #: autoassembler.rsthecodeinjectionwassuccessfull msgid "The code injection was successfull" -msgstr "Инъекция кода прошла успешно" +msgstr "Внедрение кода прошло успешно" #: autoassembler.rsthefiledoesnotexist msgid "The file %s does not exist" @@ -583,7 +617,7 @@ msgstr "Этот спецификатор адреса не допустим" #: autoassembler.rsthiscodecanbeinjectedareyousure msgid "This code can be injected. Are you sure?" -msgstr "Вы уверены, что хотите выполнить инъекцию кода?" +msgstr "Этот код можно внедрить. Вы уверены?" #: autoassembler.rsthisinstructioncantbecompiled msgid "This instruction can't be compiled" @@ -679,8 +713,8 @@ msgid "You havn't specified a enable section" msgstr "В скрипте отсутствует секция [ENABLE]" #: bigmemallochandler.rsallocerror -msgid "VirtualAlloc failed. You probably don't have enough system memory free. Either install more RAM, or increase the maximum allowed paging size" -msgstr "Сбой VirtualAlloc. Вероятно у вас недостаточно свободной оперативной памяти. Или установите больше оперативной памяти на ваш компьютер, или увеличьте файл подкачки до максимально доступного размера" +msgid "VirtualAlloc failed to allocate %d bytes. You probably don't have enough system memory free. Either install more RAM, or increase the maximum allowed paging size" +msgstr "VirtualAlloc не удалось выделить %d байт. Вероятно у вас недостаточно свободной оперативной памяти. Или установите больше оперативной памяти на ваш компьютер, или увеличьте файл подкачки до максимально доступного размера" #: bigmemallochandler.rsbmavirtualallocfailedyouprobablydonthaveenoughtvirtualmemoryfreeetc msgid "VirtualAlloc failed. You probably don't have enough virtual memory free. Use the 64-bit version instead" @@ -743,6 +777,10 @@ msgctxt "cefuncproc.rsapplicationskey" msgid "Applications key" msgstr "AppsKey" +#: cefuncproc.rsasktorestartforadmin +msgid "%s requires administrator rights. Relaunch CE using admin rights?" +msgstr "%s требует права администратора. Перезапустить Cheat Engine, используя права администратора?" + #: cefuncproc.rsbackspace msgctxt "cefuncproc.rsbackspace" msgid "Backspace" @@ -751,7 +789,7 @@ msgstr "BckSp" #: cefuncproc.rsbreak msgctxt "cefuncproc.rsbreak" msgid "Break" -msgstr "Break" +msgstr "Прерывание" #: cefuncproc.rscapslock msgctxt "cefuncproc.rscapslock" @@ -760,7 +798,7 @@ msgstr "CapsLock" #: cefuncproc.rscefpdllinjectionfailedsymbollookuperror msgid "Dll injection failed: symbol lookup error" -msgstr "Инъекция dll не удалась: ошибка поиска символа" +msgstr "Внедрение dll не удалось: ошибка поиска символа" #: cefuncproc.rscefpicantgettheprocesslistyouarepropablyuseinwindowsntetc msgctxt "cefuncproc.rscefpicantgettheprocesslistyouarepropablyuseinwindowsntetc" @@ -782,7 +820,7 @@ msgstr "Не удалось выполнить функцию dll" #: cefuncproc.rsfailedinjectingthedll msgid "Failed injecting the DLL" -msgstr "Не удалось выполнить инъекцию DLL" +msgstr "Не удалось внедрить dll" #: cefuncproc.rsfailedtoallocatememory msgid "Failed to allocate memory" @@ -794,7 +832,7 @@ msgstr "Не удалось запустить загрузчик dll" #: cefuncproc.rsfailedtoinjectthedllloader msgid "Failed to inject the dll loader" -msgstr "Не удалось выполнить инъекцию загрузчика dll" +msgstr "Не удалось внедрить загрузчик dll" #: cefuncproc.rsgetprocaddressnotfound msgid "GetProcAddress not found" @@ -894,11 +932,15 @@ msgstr "Space" #: cefuncproc.rstheinjectionthreadtooklongerthan10secondstoexecute msgid "The injection thread took longer than 10 seconds to execute. Injection routine not freed" -msgstr "Выполнение инъекции заняло больше времени, чем отведённые 10 секунд. Процедура инъекции не освобождается" +msgstr "Выполнение потока внедрения заняло больше времени, чем отведённые 10 секунд. Процедура внедрения не освобождена" + +#: cefuncproc.rsthiscantakesometime +msgid "This can take some time if you are missing the PDB's and CE will look frozen. Are you sure?" +msgstr "Это может занять некоторое время, если у вас нет PDB-файла символов, а Cheat Engine будет выглядеть подвисшим. Вы уверены?" #: cefuncproc.rsunknownerrorduringinjection msgid "Unknown error during injection" -msgstr "Во время инъекции произошла неизвестная ошибка" +msgstr "Во время внедрения произошла неизвестная ошибка" #: cefuncproc.rsuparrow msgctxt "cefuncproc.rsuparrow" @@ -927,21 +969,17 @@ msgstr "Ошибка при отправке данных: " #: celazysocket.rstimeoutwhilereceivingdata msgid "Timeout while receiving data" -msgstr "Тайм-аут при получении данных" +msgstr "Превышено время ожидания получения данных" #: celazysocket.rstimeoutwhilesendingdata msgid "Timeout while sending data" -msgstr "Тайм-аут при отправке данных" +msgstr "Превышено время ожидания отправки данных" #: changeoffsetunit.rsthisisnotanvalidvalue msgctxt "changeoffsetunit.rsthisisnotanvalidvalue" msgid "This is not an valid value" msgstr "Недопустимое значение" -#: cheatengine.rstrainerusesdriver -msgid "This trainer can load and use a device driver. Run it ? (Answering no will prevent you from using this trainer)" -msgstr "Этот тренер может загрузить и использовать драйвер устройства. Запустить его? (Ответ «Нет» не позволит вам использовать этот трейнер)" - #: customtypehandler.rsacustomfunctiontypewithnamealreadyexists msgid "A custom function type with name %s already exists" msgstr "Пользовательский тип функции с именем «%s» уже существует" @@ -1011,6 +1049,10 @@ msgstr "Не удалось запустить DBVM: функция Intel-VT б msgid "DBK32 error" msgstr "Ошибка DBK32" +#: dbk32functions.rsdbkblockedduetovulnerabledriverblocklist +msgid "Failure starting dbk because the vulnerable driver blocklist is enabled and dbk has been added to it. Want to know how to disable this?" +msgstr "Не удалось запустить dbk из-за того, что включен «Список заблокированных уязвимых драйверов» и в него добавлен dbk. Хотите узнать, как это отключить?" + #: dbk32functions.rsdbkerror msgid "DBK Error" msgstr "Ошибка DBK" @@ -1021,11 +1063,11 @@ msgstr "Ошибка драйвера" #: dbk32functions.rsfailuretoconfigurethedriver msgid "Failure to configure the driver" -msgstr "Не удалось сконфигурировать драйвер" +msgstr "Не удалось настроить драйвер" #: dbk32functions.rsfailuretoconfiguretheultimapdriver msgid "Failure to configure the ultimap driver" -msgstr "Сбой настройки драйвера ultimap" +msgstr "Не удалось настроить драйвер ultimap" #: dbk32functions.rsinvalidmsraddress msgid "Invalid MSR address:" @@ -1045,19 +1087,19 @@ msgstr "Пожалуйста, запустите 64-битную версию Ch #: dbk32functions.rsthedrivercouldntbeopened msgid "The driver couldn't be opened! It's not loaded or not responding. Luckely you are running dbvm so it's not a total waste. Do you wish to force load the driver?" -msgstr "Драйвер не открывается. Он не загружается или не отвечает. К счастью, DBVM запущен, так что это не пустая трата времени. Вы хотите принудительно загрузить драйвер?" +msgstr "Не удалось открыть драйвер! Он не загружен или не отвечает. К счастью, DBVM запущена, так что это не пустая трата времени. Вы хотите принудительно загрузить драйвер?" #: dbk32functions.rsthedrivercouldntbeopenedtryagain msgid "The driver couldn't be opened! It's not loaded or not responding. I recommend to reboot your system and try again" -msgstr "Драйвер не открывается. Он не загружается или не отвечает. Рекомендуется перезагрузить вашу систему и попробовать снова" +msgstr "Не удалось открыть драйвер! Он не загружен или не отвечает. Рекомендуется перезагрузить вашу систему и попробовать снова" #: dbk32functions.rsthedriverfailedtosuccessfullyinitialize msgid "The driver failed to successfully initialize. Some functions may not completely work" -msgstr "Драйвер не удалось успешно инициализировать. Некоторые функции могут работать не полностью" +msgstr "Не удалось инициализировать драйвер. Некоторые функции могут работать не полностью" #: dbk32functions.rsthedriverthatiscurrentlyloaded msgid "The driver that is currently loaded belongs to a different version of Cheat Engine. Please unload this driver or reboot." -msgstr "Драйвер, который загружен в данный момент, принадлежит другой версии Cheat Engine. Пожалуйста, выгрузите его или перезагрузитесь." +msgstr "Загруженный в данный момент драйвер относится к другой версии Cheat Engine. Пожалуйста, выгрузите его или перезагрузитесь." #: dbk32functions.rstheservicecouldntgetopened msgid "The service couldn't get opened and also couldn't get created. Check if you have the needed rights to create a service, or call your system admin (Who'll probably beat you up for even trying this). Untill this is fixed you won't be able to make use of the enhancements the driver gives you" @@ -1068,7 +1110,7 @@ msgid "The ultimap service couldn't get opened and also couldn't get created. ( msgstr "Служба Ultimap не открывается и не создаётся. (Нет прав администратора?)" #: dbk32functions.rsyouaremissingthedriver -msgid "You are missing the driver. Try reinstalling cheat engine, and try to disable your anti-virus before doing so." +msgid "You are missing the driver. Try reinstalling Cheat Engine, and try to disable your anti-virus before doing so." msgstr "У вас отсутствует драйвер. Попробуйте переустановить Cheat Engine, отключив перед этим ваш антивирус." #: dbk64secondaryloader.rserrorwhiletryingtoloadthedriveratpart @@ -1081,7 +1123,7 @@ msgstr "ModuleLoader не удалось сопоставить dbk64.sys в п #: dbk64secondaryloader.rsseemslikedbvmisntloadedafterall msgid "seems like dbvm isn't loaded after all" -msgstr "кажется, DBVM всё-таки не загрузился" +msgstr "кажется, DBVM всё-таки не загрузилась" #: dbk64secondaryloader.rssuccessthedriverhasbeenloaded msgid "Success. The driver has been loaded thanks to dbvm" @@ -1091,17 +1133,29 @@ msgstr "Успех. Драйвер был загружен благодаря DB msgid "The driver failed to initialize" msgstr "Не удалось инициализировать драйвер" +#: dbvmdebuggerinterface.rsdbvmfunctionneedsdbvm +msgid "Sorry, but you need DBVM for DBVM level debugging" +msgstr "Извините, но вам нужна DBVM для отладки на уровне DBVM" + +#: dbvmdebuggerinterface.rsdbvmlevelnotfor32bit +msgid "DBVM level debug does not work on the 32-bit CE" +msgstr "Отладка на уровне DBVM не работает в 32-битном Cheat Engine" + +#: frmdbvmloadmanual.caption +msgid "Manual load DBVM" +msgstr "Ручная загрузка DBVM" + #: dbvmloadmanual.rschecking msgid "" msgstr "<Проверка>" #: dbvmloadmanual.rscpu msgid "CPU " -msgstr "ЦП " +msgstr "ЦПУ " #: dbvmloadmanual.rscpualreadyrunningdbvm msgid "This cpu is already running DBVM" -msgstr "На этом ЦП уже запущена DBVM" +msgstr "На этом процессоре уже запущена DBVM" #: dbvmloadmanual.rsloaded msgid "Loaded:" @@ -1113,7 +1167,7 @@ msgstr "Не загружен" #: debugeventhandler.rsdebughandleaccessviolationdebugeventnow msgid "Debug HandleAccessViolationDebugEvent now" -msgstr "Теперь отладьте HandleAccessViolationDebugEvent" +msgstr "Отладка HandleAccessViolationDebugEvent" #: debugeventhandler.rsspecialcase msgid "Special case" @@ -1136,7 +1190,11 @@ msgstr "Изменить регулярное выражение" #: debuggertypedefinitions.rsdbvmbreakpoint msgctxt "debuggertypedefinitions.rsdbvmbreakpoint" msgid "DBVM Breakpoint" -msgstr "DBVM брейкпоинт" +msgstr "DBVM Брейкпоинт" + +#: debuggertypedefinitions.rsdbvmnativebreakpoint +msgid "DBVM-Level Breakpoint" +msgstr "Брейкпоинт уровня DBVM" #: debuggertypedefinitions.rsexceptionbreakpoint msgid "Exception Breakpoint" @@ -1151,6 +1209,7 @@ msgid "Find code access" msgstr "Найти обращение к коду" #: debuggertypedefinitions.rshardwarebreakpoint +msgctxt "debuggertypedefinitions.rshardwarebreakpoint" msgid "Hardware Breakpoint" msgstr "Аппаратный" @@ -1167,6 +1226,7 @@ msgid "On Write" msgstr "На Чтение" #: debuggertypedefinitions.rssoftwarebreakpoint +msgctxt "debuggertypedefinitions.rssoftwarebreakpoint" msgid "Software Breakpoint" msgstr "Программный" @@ -1189,10 +1249,10 @@ msgstr "Используются все отладочные регистры. #: debughelper.rsasktoenablenx msgid "" "For execute page exceptions the target process must support No-Execute page support. Currently this process doesn't have this enabled, but if you think the process itself does support it you can enable it.\n" -"Do you wish to enable No-Execute support for this process?\n" +"Do you wish to enable No-Execute support for this process?" msgstr "" -"Для выполнения страничного исключения процесс цели должен поддерживать функцию «No Execute» На данный момент, в этом процессе данная функция не включена, но если вы думаете, что он её поддерживает, то вы можете её включить\n" -"Вы хотите включить поддержку «No Execute» для этого процесса?\n" +"Для выполнения страничного исключения выбранный процесс должен поддерживать функцию «No Execute» На данный момент, в этом процессе данная функция не включена, но если вы думаете, что он её поддерживает, то вы можете её включить\n" +"Вы хотите включить поддержку «No Execute» для этого процесса?" #: debughelper.rsbreakpointerror msgid "Breakpoint error:" @@ -1214,6 +1274,10 @@ msgstr "Вызван из основного потока" msgid "Data execution prevention is not enabled in this process and can not be enabled" msgstr "Предотвращение выполнения данных не включено в этом процессе и не может быть включено" +#: debughelper.rscreateprocessfailed +msgid "CreateProcess failed:%s" +msgstr "Не удалось создать процесс: %s" + #: debughelper.rsdebuggerattachaborted msgid "Debugger attach aborted" msgstr "Присоединение отладчика прервано" @@ -1221,7 +1285,7 @@ msgstr "Присоединение отладчика прервано" #: debughelper.rsdebuggerattachtimeout msgctxt "debughelper.rsdebuggerattachtimeout" msgid "Debugger attach timeout" -msgstr "Время на подсоединение отладчика истекло" +msgstr "Превышено время ожидания присоединения отладчика" #: debughelper.rsdebuggercrash msgid "Debugger Crash" @@ -1257,7 +1321,7 @@ msgstr "Не удалось включить «No Execute» и заблокир #: debughelper.rsfailuregettingdepinformation msgid "Failure getting DEP information for this process. No Execute Breakpoint support" -msgstr "Невозможно получить информацию о функции предотвращения выполнения данных для этого процесса. Отсутствует поддержка выполнения брейкпоинтов" +msgstr "Не удалось получить информацию о функции предотвращения выполнения данных для этого процесса. Отсутствует поддержка выполнения брейкпоинтов" #: debughelper.rslastlocation msgid " (Last location:" @@ -1291,11 +1355,10 @@ msgstr "Упс, похоже, что процесс не поддерживае #: debughelper.rsthedebuggerattachhastimedout msgid "" "The debugger attach is taking a while. This is normal when there are many symbols or the system is slow so please be patient. But if you don't have the time to wait or the program has crashes to desktop, then you can cancel this wait. Beware though that you may have to restart the target process if you do wish to debug anyhow.\n" -"Do you wish to wait longer?\n" +"Do you wish to wait longer?" msgstr "" -"Присоединение отладчика займёт время. Это нормально, когда существует много символов или система работает медленно, так что будьте терпеливы. Но если у вас нет времени на ожидание или программа аварийно завершается, то вы можете отменить это ожидание. Однако имейте в виду, что это не остановит процесс присоединения, происходящий в данный момент в процессе цели, поэтому вам может потребоваться перезапуск процесса цели, если вы всё равно захотите отладить его (и он всё равно может застыть на несколько мгновений, в ожидании символов).\n" -"(Это окно исчезнет автоматически после завершения присоединения. Закрыть его вручную равнозначно нажатию кнопки отмены)\n" -"Вы хотите подождать подольше?\n" +"Присоединение отладчика займёт время. Это нормально, когда существует много символов или система работает медленно, так что будьте терпеливы. Но если не желаете ждать или программа вылетает на рабочий стол, то вы можете отменить это ожидание. Однако имейте в виду, что вам, возможно, придется перезапустить выбранный процесс, если вы все же захотите отладить его.\n" +"Вы хотите подождать подольше?" #: debughelper.rsthefollowingaddressesexecute msgid "The following codes execute %s" @@ -1321,6 +1384,10 @@ msgstr "Нечитаемый адрес" msgid "Unreadable memory. Unable to set software breakpoint" msgstr "Нечитаемая память. Не удалось установить программный брейкпоинт" +#: debughelper.rsvmwareisrunningiptbad +msgid "VMWare seems to be running. It's known that some versions of vmware will cause a BSOD in combination with intel IPT. Do you still want to use intel IPT?" +msgstr "Кажется запущена VMware. Известно, что некоторые версии VMware вызывают BSOD в сочетании с Intel IPT. Вы всё ещё хотите использовать Intel IPT?" + #: debughelper.rsyes msgctxt "debughelper.rsyes" msgid "Yes" @@ -1366,6 +1433,14 @@ msgctxt "disassemblerviewunit.rscopy" msgid "Copy" msgstr "Копировать" +#: disassemblerviewunit.rsdebugsymbolsarebeingloaded +msgid "Debug symbols are being loaded (%d %% (%s))" +msgstr "Выполняется загрузка отладочных символов (%d %% (%s))" + +#: disassemblerviewunit.rsextendeddebuginfoisloaded +msgid "Extended debug info is being loaded (%d %%)" +msgstr "Выполняется загрузка расширенной отладочной информации (%d %%)" + #: disassemblerviewunit.rsopcode msgid "Opcode" msgstr "Инструкция" @@ -1376,11 +1451,11 @@ msgstr "Сначала откройте процесс" #: disassemblerviewunit.rsstructuresarebeingparsed msgid "Structures are being parsed" -msgstr "Идёт анализ структур" +msgstr "Выполняется разбор структур" #: disassemblerviewunit.rssymbolsarebeingloaded msgid "Symbols are being loaded (%d %%)" -msgstr "Символы загружаются (%d %%)" +msgstr "Выполняется загрузка символов (%d %%)" #: dissectcodethread.rsinvaliddissectcodefile msgid "Invalid dissect code file" @@ -1400,8 +1475,8 @@ msgid "done" msgstr "готово" #: dissectcodeunit.rspleaseselectsomethingtoscan -msgid "Please select something to scan" -msgstr "Пожалуйста, выберите что-то для начала сканирования" +msgid "Please select something to scan or enter a custom range" +msgstr "Пожалуйста, выберите что-то для сканирования или укажите пользовательский диапазон" #: dissectcodeunit.rsstart msgctxt "dissectcodeunit.rsstart" @@ -1414,6 +1489,7 @@ msgid "Stop" msgstr "Остановить" #: dotnettypes.rsdnt2byte +msgctxt "dotnettypes.rsdnt2byte" msgid "2 Byte" msgstr "2 Байта" @@ -1422,6 +1498,7 @@ msgid "2 Byte (Signed)" msgstr "2 Байта (Знаковое)" #: dotnettypes.rsdnt4byte +msgctxt "dotnettypes.rsdnt4byte" msgid "4 Byte" msgstr "4 Байта" @@ -1449,11 +1526,11 @@ msgstr "bool" #: dotnettypes.rsdntbyte msgctxt "dotnettypes.rsdntbyte" msgid "Byte" -msgstr "1 Байт" +msgstr "Байт" #: dotnettypes.rsdntbytesigned msgid "Byte (Signed)" -msgstr "1 Байт (Знаковое)" +msgstr "Байт (Знаковое)" #: dotnettypes.rsdntchar msgid "char" @@ -1463,14 +1540,6 @@ msgstr "символ" msgid "Class" msgstr "Класс" -#: dotnettypes.rsdntcmod_opt -msgid "CMOD_OPT" -msgstr "CMOD_OPT" - -#: dotnettypes.rsdntcmod_reqd -msgid "CMOD_REQD" -msgstr "CMOD_REQD" - #: dotnettypes.rsdntdouble msgctxt "dotnettypes.rsdntdouble" msgid "Double" @@ -1489,14 +1558,6 @@ msgstr "Float" msgid "Function Pointer" msgstr "Указатель функции" -#: dotnettypes.rsdntgenericinst -msgid "GenericInst" -msgstr "GenericInst" - -#: dotnettypes.rsdntinternal -msgid "Internal" -msgstr "Internal" - #: dotnettypes.rsdntmax msgid "MAX" msgstr "MAX" @@ -1505,17 +1566,13 @@ msgstr "MAX" msgid "Modifier" msgstr "Модификатор" -#: dotnettypes.rsdntmvar -msgid "MVar" -msgstr "MVar" - #: dotnettypes.rsdntobject msgid "Object" msgstr "Объект" #: dotnettypes.rsdntpinned msgid "Pinned" -msgstr "Pinned" +msgstr "Закрепленный" #: dotnettypes.rsdntpointer msgctxt "dotnettypes.rsdntpointer" @@ -1524,13 +1581,14 @@ msgstr "Указатель" #: dotnettypes.rsdntreference msgid "Reference" -msgstr "Reference" +msgstr "Ссылка" #: dotnettypes.rsdntsentinel msgid "Sentinel" msgstr "Sentinel" #: dotnettypes.rsdntsigned +msgctxt "dotnettypes.rsdntsigned" msgid "Signed" msgstr "Знаковое" @@ -1541,7 +1599,7 @@ msgstr "Строка" #: dotnettypes.rsdntszarray msgid "SZ Array" -msgstr "SZ Array" +msgstr "Размер массива" #: dotnettypes.rsdnttypedbyref msgid "Typed By Ref" @@ -1581,42 +1639,42 @@ msgid "bcrypt could not be used" msgstr "bcrypt не может быть использован" #: feces.rscheatenginesignaturefiles -msgid "Cheat engine signature files" +msgid "Cheat Engine signature files" msgstr "Файлы подписи Cheat Engine" #: feces.rscouldnotopenthealgorithmprovider -msgid "Could not open the algorithm provider" -msgstr "Не удалось открыть поставщика алгоритма" +msgid "Could not open the algorithm provider. Load the table as if it's signature is valid?" +msgstr "Не удалось открыть поставщика алгоритмов. Загрузить таблицу так, как будто её подпись действительна?" #: feces.rsfailedcreatinghasalgorithmprovider msgctxt "feces.rsfailedcreatinghasalgorithmprovider" msgid "Failed creating has algorithm provider" -msgstr "Неудачное создание поставщика алгоритма" +msgstr "Не удалось создать поставщика алгоритмов" #: feces.rsfailedcreatinghasalgorithmprovider2 msgctxt "feces.rsfailedcreatinghasalgorithmprovider2" msgid "Failed creating has algorithm provider" -msgstr "Неудачное создание поставщика алгоритма" +msgstr "Не удалось создать поставщика алгоритмов" #: feces.rsfailedcreatinghash msgid "Failed creating hash" -msgstr "Неудачное создание хэша" +msgstr "Не удалось создать хэш" #: feces.rsfailedcreatinghash2 msgid "Failed creating hash 2" -msgstr "Неудачное создание хэша 2" +msgstr "Не удалось создать хэш 2" #: feces.rsfailedgettingtheobjectlength msgid "Failed getting the object length" -msgstr "Неудачное получение длины объекта" +msgstr "Не удалось получить длину объекта" #: feces.rsfailedhashingtable msgid "Failed hashing table" -msgstr "Неудачное хеширование таблицы" +msgstr "Не удалось хешировать таблицу" #: feces.rsfailedhashingtable2 msgid "Failed hashing table 2" -msgstr "Неудачное хеширование таблицы 2" +msgstr "Не удалось хешировать таблицу 2" #: feces.rsfailedtofinishthehash msgid "Failed to finish the hash" @@ -1639,7 +1697,7 @@ msgid "Failed to get the signature size" msgstr "Не удалось получить размер подписи" #: feces.rsfailedtoloadcheatenginepublickey -msgid "Failed to load cheat engine public key" +msgid "Failed to load Cheat Engine public key" msgstr "Не удалось загрузить открытый ключ Cheat Engine" #: feces.rsfailedtoloadprivatekey @@ -1654,6 +1712,10 @@ msgstr "Не удалось загрузить открытый ключ таб msgid "The provided public key is invalid(Not signed by the Cheat Engine guy). Remove the signature section to load this table" msgstr "Предоставленный открытый ключ недействителен. Удалите секцию подписи, чтобы загрузить эту таблицу" +#: feces.rsispasswordcorrect +msgid "Is the password correct?" +msgstr "Правильный ли пароль?" + #: feces.rsnopublickey msgid "This table's signature does not contain a PublicKey element" msgstr "Подпись этой таблицы не содержит элемент PublicKey" @@ -1663,28 +1725,28 @@ msgid "This table's signature does not contain a SignedHash element" msgstr "Подпись этой таблицы не содержит элемент SignedHash" #: feces.rsselectyourcheatenginesignaturefile -msgid "Select your cheat engine signature file" +msgid "Select your Cheat Engine signature file" msgstr "Выберите ваш файл подписи Cheat Engine" #: feces.rsthistablehasbeenmodified msgid "This table has been modified. To load this table, remove the signature part with an editor (And check the file for suspicious things while you're at it)" -msgstr "Данная таблица была изменена. Чтобы загрузить эту таблицу, удалите часть с подписью при помощи редактора (заодно проверьте файл на наличие подозрительных вещей)" +msgstr "Данная таблица была изменена. Чтобы загрузить эту таблицу, удалите фрагмент с подписью при помощи редактора (заодно проверьте файл на наличие подозрительных вещей)" #: fileaccess.rsnogetnamedsecurityinfo msgid "no GetNamedSecurityInfo" -msgstr "GetNamedSecurityInfo не назначен" +msgstr "нет GetNamedSecurityInfo" #: fileaccess.rsnogetsecurityinfo msgid "no GetSecurityInfo" -msgstr "GetSecurityInfo не назначен" +msgstr "нет GetSecurityInfo" #: fileaccess.rsnosetentriesinacl msgid "no SetEntriesInAcl" -msgstr "GetSecurityInfo не назначен" +msgstr "нет GetSecurityInfo" #: fileaccess.rsnosetnamedsecurityinfo msgid "no SetNamedSecurityInfo" -msgstr "GetSecurityInfo не назначен" +msgstr "нет GetSecurityInfo" #: filemapping.rsdoesnotexist msgid "%s does not exist" @@ -1696,7 +1758,7 @@ msgstr "Неудачное создание надлежащего вида" #: filemapping.rsmappingfailed msgid "Mapping failed" -msgstr "Сбой маппинга" +msgstr "Сбой сопоставления" #: findwindowunit.rsnothingfound msgid "Nothing found" @@ -1708,20 +1770,24 @@ msgstr "Указанный диапазон недопустим" #: formaddresschangeunit.rsacaddoffset msgid "Add Offset" -msgstr "Добавить смещение" +msgstr "+Смещение" #: formaddresschangeunit.rsacaddoffsethint msgid "Click: Add New Offset. Ctrl+Click: Add New Offset to the opposite location" -msgstr "Клик: Добавить новое смещение. Ctrl+Клик: Добавить новое смещение в противоположное место" +msgstr "" +"Клик: Добавляет новое смещение(в конец цепочки)\n" +"Ctrl+Клик: Добавляет новое смещение в противоположном месте(в начало цепочки)" #: formaddresschangeunit.rsacremoveoffset msgctxt "formaddresschangeunit.rsacremoveoffset" msgid "Remove Offset" -msgstr "Убрать смещение" +msgstr "-Смещение" #: formaddresschangeunit.rsacremoveoffsethint msgid "Click: Remove Offset. Ctrl+Click: Remove Offset from the opposite location" -msgstr "Клик: Удалить смещение. Ctrl+Клик: Удалить смещение из противоположного расположения" +msgstr "" +"Клик: Удаляет смещение(из конца цепочки)\n" +"Ctrl+Клик: Удаляет смещение из противоположного места(из начала цепочки)" #: formaddresschangeunit.rsaddressofpointer msgid "Address of pointer" @@ -1770,6 +1836,7 @@ msgid "Region" msgstr "Регион" #: formaddtocodelist.rsregiontoadd +msgctxt "formaddtocodelist.rsregiontoadd" msgid "Region to add" msgstr "Добавляемый регион" @@ -1779,7 +1846,7 @@ msgstr "Вы действительно хотите удалить эти за #: formchangedaddresses.rschangedaddressesby msgid "Accessed addresses by %x" -msgstr "Адреса, по которым осуществлялся доступ по %x" +msgstr "Адреса, к которым обращался %x" #: formchangedaddresses.rsclose msgctxt "formchangedaddresses.rsclose" @@ -1788,11 +1855,11 @@ msgstr "Закрыть" #: formchangedaddresses.rscodeaccessesaddresses msgid "The following %d addresses have been accessed by the code you selected" -msgstr "Доступ к следующим %d адресам осуществлялся по выбранному вами коду" +msgstr "К следующим %d адресам обращался выбранный вами код" #: formchangedaddresses.rscodeaccessessingleaddress msgid "This address has been accessed by the code you selected" -msgstr "Доступ к этому адресу осуществлялся по выбранному вами коду" +msgstr "К этому адресу обращался выбранный вами код" #: formchangedaddresses.rsdeleteaddresses msgid "Delete addresses" @@ -1804,7 +1871,7 @@ msgstr "Пожалуйста, назначьте группу хотя бы не #: formchangedaddresses.rsenterluaformula msgid "Enter a Lua formula to use to filter. E.g RCX==0x2301adc0. Empty for no filter" -msgstr "Введите формулу Lua для фильтрации. Например, RCX==0x2301adc0. Если пусто, то без фильтрации." +msgstr "Введите формулу Lua для фильтрации. Например, RCX==0x2301adc0. Если пусто, то без фильтрации" #: formchangedaddresses.rsfilter msgctxt "formchangedaddresses.rsfilter" @@ -1819,6 +1886,15 @@ msgstr "Задайте новое значение" msgid "Invalid groups" msgstr "Недопустимые группы" +#: formchangedaddresses.rsneedsiptfindwhat +msgctxt "formchangedaddresses.rsneedsiptfindwhat" +msgid "" +"The debugger did not collect any IPT data. This may be due to the Intel PT feature not being enabled in settings/malfunctioning, or that the option to also log the trace in \"find what...\" results was disabled. Do you wish to enable this for this debugging session? You will need to recollect this information again though.\n" +"(This is for this session only. If you wish to always turn it on from the start, go to settings->debugger options, and enable \"Use Intel-PT feature\" and the suboption for recording elements in \"find what ...\" routines)" +msgstr "" +"Отладчик не собрал никаких данных IPT. Это может быть связано с тем, что функция Intel-PT не включена в настройках/неисправна или опция, которая так же регистрирует трассировку в результатах «Выяснить...», была отключена. Хотите ли вы включить её для данного сеанса отладки? Вам нужно будет снова собрать эту информацию.\n" +"(Это касается только этого сеанса. Если вы хотите, чтобы она всегда была с самого начала, перейдите в «Настройки->Параметры отладчика» и включите «Использовать функцию Intel-PT при включённом отладчике» и подопцию для записи элементов в процедурах «Выяснить…»)" + #: formchangedaddresses.rsnoaddressesleftforgroup msgid "There are no addresses left for group %d" msgstr "Нет адресов для группы %d" @@ -1866,6 +1942,15 @@ msgstr "При последнем сканировании число бит р msgid "Well done, you found a easter egg!" msgstr "Отлично! Вы нашли пасхалку!" +#: formfoundcodelistextraunit.rsneedsiptfindwhat +msgctxt "formfoundcodelistextraunit.rsneedsiptfindwhat" +msgid "" +"The debugger did not collect any IPT data. This may be due to the Intel PT feature not being enabled in settings/malfunctioning, or that the option to also log the trace in \"find what...\" results was disabled. Do you wish to enable this for this debugging session? You will need to recollect this information again though.\n" +"(This is for this session only. If you wish to always turn it on from the start, go to settings->debugger options, and enable \"Use Intel-PT feature\" and the suboption for recording elements in \"find what ...\" routines)" +msgstr "" +"Отладчик не собрал никаких данных IPT. Это может быть связано с тем, что функция Intel-PT не включена в настройках/неисправна или опция, которая так же регистрирует трассировку в результатах «Выяснить...», была отключена. Хотите ли вы включить её для данного сеанса отладки? Вам нужно будет снова собрать эту информацию.\n" +"(Это касается только этого сеанса. Если вы хотите, чтобы она всегда была с самого начала, перейдите в «Настройки->Параметры отладчика» и включите «Использовать функцию Intel-PT при включённом отладчике» и подопцию для записи элементов в процедурах «Выяснить…»)" + #: formfoundcodelistextraunit.rsprobablebasepointer msgid "Probable base pointer =%s" msgstr "Вероятный базовый указатель =%s" @@ -1970,7 +2055,7 @@ msgstr "готово" #: formmemoryregionsunit.rsdoyouwanttousethecopyonwritebit msgid "Do you want to use the COPY-ON-WRITE bit?" -msgstr "Вы хотите использовать бит копирования при записи?" +msgstr "Вы хотите использовать бит «копирование при записи»?" #: formmemoryregionsunit.rsexecute msgctxt "formmemoryregionsunit.rsexecute" @@ -1999,7 +2084,7 @@ msgstr "Свободный" #: formmemoryregionsunit.rsguard msgid "Guard" -msgstr "Защищаемый" +msgstr "Защищённы" #: formmemoryregionsunit.rsimage msgctxt "formmemoryregionsunit.rsimage" @@ -2008,7 +2093,7 @@ msgstr "Образ" #: formmemoryregionsunit.rsmapped msgid "Mapped" -msgstr "Проецируемый" +msgstr "Сопоставленный" #: formmemoryregionsunit.rsmemoryregions msgctxt "formmemoryregionsunit.rsmemoryregions" @@ -2033,6 +2118,7 @@ msgid "Private" msgstr "Закрытый" #: formmemoryregionsunit.rsread +msgctxt "formmemoryregionsunit.rsread" msgid "Read" msgstr "Чтение" @@ -2046,12 +2132,17 @@ msgstr "Резервный" #: formmemoryregionsunit.rstherearealreadymemoryfileswiththisnamedoyouwanttod msgid "There are already memoryfiles with this name. Do you want to delete them? (choosing no will add the file(s) to empty slots)" -msgstr "Файл с таким же названием уже существует. Хотите его удалить? (если выберите «Нет», файл будет сохранён с таким же названием, но с немного другим расширением)" +msgstr "Файл с таким названием уже существует. Хотите его удалить? (если выберите «Нет», файл(ы) буден добавлен в пустые ячейки)" #: formmemoryregionsunit.rsthereisnofreeslot msgid "There is no free slot" msgstr "Нет свободных слотов" +#: formmemoryregionsunit.rswritecombine +msgctxt "formmemoryregionsunit.rswritecombine" +msgid "Write Combine" +msgstr "Объединённая запись" + #: formmemoryregionsunit.rswritecopy msgctxt "formmemoryregionsunit.rswritecopy" msgid "Write Copy" @@ -2073,6 +2164,7 @@ msgid "8 Bytes" msgstr "8 Байт" #: formsettingsunit.rsallcustomtypes +msgctxt "formsettingsunit.rsallcustomtypes" msgid "All Custom Types" msgstr "Все пользовательские типы" @@ -2083,7 +2175,7 @@ msgstr "Массив байт" #: formsettingsunit.rsattachtoforegroundprocess msgid "Attach to current foreground process" -msgstr "Присоединиться к текущему приоритетному процессу" +msgstr "Присоединиться к текущему процессу переднего плана" #: formsettingsunit.rsbinary msgctxt "formsettingsunit.rsbinary" @@ -2093,7 +2185,7 @@ msgstr "Двоичный" #: formsettingsunit.rsbyte msgctxt "formsettingsunit.rsbyte" msgid "Byte" -msgstr "1 Байт" +msgstr "Байт" #: formsettingsunit.rscancelthecurrentscan msgid "Cancel the current scan" @@ -2114,7 +2206,7 @@ msgstr "Параметры отладчика" #: formsettingsunit.rsdebugrun msgid "Debug->Run" -msgstr "Отладка->Запустить" +msgstr "Отладка->Выполнить" #: formsettingsunit.rsdecreasedvalue msgid "Decreased Value" @@ -2132,7 +2224,7 @@ msgstr "Дополнительно" #: formsettingsunit.rsfailmmregistry msgid "Failure getting the Memory Management registry key" -msgstr "Не удалось получить ключ реестра «Memory Managements»" +msgstr "Не удалось получить ключ реестра «Memory Management»" #: formsettingsunit.rsfailuretoopenregistry msgid "Failure to open the registry entry" @@ -2172,6 +2264,10 @@ msgstr "Простаивающий" msgid "Increased Value" msgstr "Значение увеличилось" +#: formsettingsunit.rsinvalidsymbolsynctimer +msgid "The provided value for the symbol sync timer is invalid" +msgstr "Указано недопустимое значение таймера синхронизации символов" + #: formsettingsunit.rsisnotavalidinterval msgid "%s is not a valid interval" msgstr "%s не является допустимым интервалом" @@ -2191,11 +2287,6 @@ msgctxt "formsettingsunit.rslowest" msgid "Lowest" msgstr "Низший" -#: formsettingsunit.rsluaoptions -msgctxt "formsettingsunit.rsluaoptions" -msgid "Lua" -msgstr "Lua" - #: formsettingsunit.rsnewlanguageset msgid "New language set" msgstr "Новый язык задан" @@ -2228,7 +2319,7 @@ msgid "Plugins" msgstr "Плагины" #: formsettingsunit.rspopuphidecheatengine -msgid "Popup/Hide cheat engine" +msgid "Popup/Hide Cheat Engine" msgstr "Всплытие/Скрытие Cheat Engine" #: formsettingsunit.rsrequiresdbvm @@ -2250,7 +2341,7 @@ msgstr "Подписание" #: formsettingsunit.rsspectreregistrychanged msgid "The registry keys has been changed accordingly. Reboot your system to make it take effect" -msgstr "Ключи реестра были изменены. Перезагрузите вашу систему, чтобы изменения вступили в силу" +msgstr "Ключи реестра были изменены. Перезагрузите вашу систему, чтобы изменения вступили в силу" #: formsettingsunit.rsspectrerestore msgid "Your protection has been restored. Please restart your system to make it take effect" @@ -2259,15 +2350,20 @@ msgstr "Ваша защита была восстановлена. Пожалу #: formsettingsunit.rsspectrewarning msgid "" "WARNING! Making kernelmode possible will slightly increase the speed of your system, BUT it will make you vulnerable to Spectre attacks\n" -"Are you ok with this? (You can later re-enable this protection)\n" +"Are you ok with this? (You can later re-enable this protection)" msgstr "" -"ПРЕДУПРЕЖДЕНИЕ! Создание возможности отладки ядра немного увеличит скорость вашей системы, но сделает вас уязвимым к атаке с применением эксплойта «Spectre»\n" -"Вы нормально к этому относитесь?\n" +"ПРЕДУПРЕЖДЕНИЕ! Включение режима ядра немного увеличит скорость вашей системы, но это сделает вас подверженным для атак аппаратных уязвимостей «Spectre»\n" +"Вы нормально к этому относитесь? (Позже вы сможете повторно включить эту защиту)" #: formsettingsunit.rsspeedhackspeed msgid "Speedhack speed" msgstr "Спидхак - скорость" +#: formsettingsunit.rssymbols +msgctxt "formsettingsunit.rssymbols" +msgid "Symbols" +msgstr "Символы" + #: formsettingsunit.rstext msgctxt "formsettingsunit.rstext" msgid "Text" @@ -2279,7 +2375,7 @@ msgstr "Размер буфера поиска должен быть больш #: formsettingsunit.rsthevalueforthekeypollintervalisinvalid msgid "the value for the keypoll interval (%s is invalid" -msgstr "%s не является допустимым значением для интервала опроса клавиш" +msgstr "%s не является допустимым значением для интервала опроса клавиш" #: formsettingsunit.rsthevalueforthewaitbetweenhotkeypressesisinvalid msgid "the value for the wait between hotkey presses (%s is invalid" @@ -2313,7 +2409,7 @@ msgstr "Значение не изменилось" #: formsettingsunit.rsundolastscan msgid "Undo last scan" -msgstr "Возврат предыдущего отсева" +msgstr "Отменить последний поиск" #: formsettingsunit.rsunknowninitialvalue msgid "Unknown Initial Value" @@ -2355,6 +2451,40 @@ msgstr "Неопределённая ошибка" msgid "Percentage shown" msgstr "Процент показа" +#: frmautoinjectunit.rs14bytejmp +msgctxt "frmautoinjectunit.rs14bytejmp" +msgid "14 Byte JMP (>2GB Distance)" +msgstr "14-байтовый JMP (Расстояние <2 ГБ)" + +#: frmautoinjectunit.rs5bytejmp +msgctxt "frmautoinjectunit.rs5bytejmp" +msgid "5 Byte JMP (<2GB Distance)" +msgstr "5-байтовый JMP (Расстояние <2 ГБ)" + +#: frmautoinjectunit.rsaaaobtemplate_author +msgid "Author" +msgstr "Автор" + +#: frmautoinjectunit.rsaaaobtemplate_blabla +msgid "This script does blah blah blah" +msgstr "Этот скрипт делает бла-бла-бла" + +#: frmautoinjectunit.rsaaaobtemplate_date +msgid "Date" +msgstr "Дата" + +#: frmautoinjectunit.rsaaaobtemplate_game +msgid "Game" +msgstr "Игра" + +#: frmautoinjectunit.rsaaaobtemplate_version +msgid "Version" +msgstr "Версия" + +#: frmautoinjectunit.rsaadescribeallocatedmemory +msgid "this is allocated memory, you have read,write,execute access" +msgstr "это выделенная память, у вас есть доступ на чтение, запись и выполнение" + #: frmautoinjectunit.rsareyousureyouwanttoclose msgid "Are you sure you want to close %s ?" msgstr "Вы уверены, что хотите закрыть %s ?" @@ -2373,7 +2503,7 @@ msgstr "Cheat Engine GNU Ассемблирование (*.CEGA)|*.CEGA|Все #: frmautoinjectunit.rscodeinjecttemplate msgid "Code inject template" -msgstr "Шаблон инъекции кода" +msgstr "Шаблон внедрения кода" #: frmautoinjectunit.rscodeneedsenableanddisable msgid "The code needs an [ENABLE] and a [DISABLE] section if you want to use this script as a table entry" @@ -2383,13 +2513,21 @@ msgstr "Скрипт должен содержать секции [ENABLE] и [D msgid "Code relocation template" msgstr "Шаблон перемещения кода" +#: frmautoinjectunit.rsdescribethatthiscodewilldisablethescript +msgid "code from here till the end of the code will be used to disable the cheat" +msgstr "код отсюда и до конца кода будет использоваться для отключения чита" + +#: frmautoinjectunit.rsdescribethatthiscodewillenablethescript +msgid "code from here to '[DISABLE]' will be used to enable the cheat" +msgstr "код отсюда и до '[DISABLE]' будет использоваться для включения чита" + #: frmautoinjectunit.rsendaddresslastbytesareincludedifnecesary msgid "End address (last bytes are included if necessary)" msgstr "Конечный адрес" #: frmautoinjectunit.rserrorcouldnotfinduniqueaobtriedcode msgid "ERROR: Could not find unique AOB, tried code \"" -msgstr "ОШИБКА: Не удалось найти уникальный массив байт. Испытанный код «" +msgstr "ОШИБКА: Не удалось найти уникальный массив байт. Опробованный код «" #: frmautoinjectunit.rserrorinscript msgid "Error in script %s : %s" @@ -2401,7 +2539,7 @@ msgstr "Ошибка в скрипте : %s" #: frmautoinjectunit.rseverythingok msgid "Everything ok" -msgstr "Всё в порядке" +msgstr "Всё хорошо" #: frmautoinjectunit.rsexecutescript msgid "Execute script" @@ -2413,11 +2551,11 @@ msgstr "Не удалось выделить память для скрипта" #: frmautoinjectunit.rsfailedcreatingcallingstubforscriptlocatedataddress msgid "Failed creating calling stub for script located at address " -msgstr "Неудачное создание вызывающей заглушки для скрипта, расположенного по адресу " +msgstr "Не удалось создать заглушку вызова для скрипта, расположенного по адресу " #: frmautoinjectunit.rsfailedtoaddtotablenotallcodeisinjectable msgid "Failed to add to table. Not all code is injectable" -msgstr "Не удалось добавить в таблицу. Не весь код пригоден к инъекции" +msgstr "Не удалось добавить в таблицу. Не весь код пригоден к внедрению" #: frmautoinjectunit.rsfailedwritingthescripttotheprocess msgid "failed writing the script to the process" @@ -2431,14 +2569,22 @@ msgstr "Не удалось загрузить undercdll" msgid "GNU Assembler Script" msgstr "Скрипт GNU Ассемблера" +#: frmautoinjectunit.rslessthan2gbdistance +msgid "<2GB Distance" +msgstr "Расстояние <2 ГБ" + #: frmautoinjectunit.rsluafilter msgid "LUA Script (*.LUA)|*.LUA|All Files ( *.* )|*.*" -msgstr "LUA Скрипт (*.LUA)|*.LUA|Все файлы ( *.* )|*.*" +msgstr "LUA скрипт (*.LUA)|*.LUA|Все файлы ( *.* )|*.*" #: frmautoinjectunit.rsluascript msgid "LUA Script" msgstr "LUA Скрипт" +#: frmautoinjectunit.rsmorethan2gbdistance +msgid ">2GB Distance" +msgstr "Расстояние >2 ГБ" + #: frmautoinjectunit.rsnewnamequestion msgid "What should the new name be?" msgstr "Каким должно быть новое имя?" @@ -2447,16 +2593,24 @@ msgstr "Каким должно быть новое имя?" msgid "" "Not all code is injectable.\n" "%s\n" -"Are you sure you want to edit it to this?\n" +"Are you sure you want to edit it to this?" msgstr "" -"Не весь код пригоден к инъекции.\n" +"Не весь код пригоден к внедрению.\n" "%s\n" -"Вы уверены, что не хотите отредактировать его?\n" +"Вы уверены, что не хотите отредактировать его?" #: frmautoinjectunit.rsonwhataddressdoyouwantthejump msgid "On what address do you want the jump?" msgstr "На каком адресе вы хотите установить переход?" +#: frmautoinjectunit.rsoriginalcode +msgid "Original code" +msgstr "Оригинальный код" + +#: frmautoinjectunit.rsplaceyourcodehere +msgid "place your code here" +msgstr "поместите свой код здесь" + #: frmautoinjectunit.rsrenametab msgid "Rename tab" msgstr "Переименовать вкладку" @@ -2479,7 +2633,7 @@ msgstr "Thumb инструкции ещё не реализованы" #: frmautoinjectunit.rswhatidentifierdoyouwanttouse msgid "What do you want to name the symbol for the injection point?" -msgstr "Какое название вы хотите дать символу, указывающему на место инъекции?" +msgstr "Какое название вы хотите дать символу для места внедрения?" #: frmautoinjectunit.rswritecode msgid "Write code" @@ -2490,6 +2644,7 @@ msgid "Found %d" msgstr "Найдено %d" #: frmbranchmapperunit.rssaveresultstofile +msgctxt "frmbranchmapperunit.rssaveresultstofile" msgid "Save results to file" msgstr "Сохранить результаты в файл" @@ -2545,13 +2700,14 @@ msgstr "Список адресов (%d)" #: frmcodefilterunit.rsassemblyscanpleasewait msgid "Assembly Scan. Please wait" -msgstr "Поиск инструкций. Пожалуйста, подождите" +msgstr "Поиск ассемблерного кода. Пожалуйста, подождите" #: frmcodefilterunit.rscancel msgid "Cancel List Refresh" msgstr "Отменить обновление" #: frmcodefilterunit.rscodefilter +msgctxt "frmcodefilterunit.rscodefilter" msgid "Code Filter" msgstr "Фильтр кода" @@ -2590,6 +2746,18 @@ msgctxt "frmcodefilterunit.rsyes" msgid "Yes" msgstr "Да" +#: frmcr3switcherunit.rsdbvmcr3log +msgid "DBVM CR3 Log" +msgstr "Журнал DBVM CR3" + +#: frmcr3switcherunit.rsdescribedbvmroutine +msgid "DBVM will record all CR3 values it encounters up to 512 unique ones). How long should it wait? (In seconds)" +msgstr "DBVM будет записывать все встречающиеся значения CR3 (до 512 уникальных). Как долго она должна ждать? (В секундах)" + +#: frmcr3switcherunit.rslongwaitwarning +msgid "Are you sure you wish to wait %d seconds?" +msgstr "Вы уверены, что хотите подождать %d секунд?" + #: frmdebugsymbolstructurelistunit.rstherearestructuresinthislist msgid "There are %d structures in this list" msgstr "В этом списке %d структур(ы)" @@ -2609,6 +2777,7 @@ msgid "scan error" msgstr "ошибка сканирования" #: frmdissectwindowunit.rsdissectwindows +msgctxt "frmdissectwindowunit.rsdissectwindows" msgid "Dissect Windows" msgstr "Анализ окон" @@ -2656,7 +2825,7 @@ msgstr "Стандартное" #: frmexetrainergeneratorunit.rsfailureonwriting msgid "failure on writing" -msgstr "ошибка при записи" +msgstr "сбой при записи" #: frmexetrainergeneratorunit.rsfailureopeningthetrainerforresourceupdates msgid "Failure opening the trainer for resource updates. Make sure you do not watch the creation" @@ -2667,6 +2836,7 @@ msgid "Fastest" msgstr "Быстрое" #: frmexetrainergeneratorunit.rsgenerate +msgctxt "frmexetrainergeneratorunit.rsgenerate" msgid "Generate" msgstr "Создать" @@ -2683,6 +2853,7 @@ msgid "(Invalid icon type)" msgstr "(Недопустимый тип иконки)" #: frmexetrainergeneratorunit.rsmax +msgctxt "frmexetrainergeneratorunit.rsmax" msgid "Max" msgstr "Максимум" @@ -2714,7 +2885,7 @@ msgstr "Не удалось обновить информацию о ресур #: frmfilepatcherunit.rsfilepatcher msgid "File Patcher: " -msgstr "Патчер файла: " +msgstr "Исправитель файла: " #: frmfillmemoryunit.rsfmregiontoolarge msgid "Region too large" @@ -2727,12 +2898,12 @@ msgstr "Пожалуйста, заполните допустимое значе #: frmfillmemoryunit.rspleasefillinavalidfromaddress msgctxt "frmfillmemoryunit.rspleasefillinavalidfromaddress" msgid "Please fill in a valid 'From' address" -msgstr "Пожалуйста, заполните допустимый адрес в поле «От»" +msgstr "Пожалуйста, заполните действительный адрес в поле «От»" #: frmfillmemoryunit.rspleasefillinavalidtoaddress msgctxt "frmfillmemoryunit.rspleasefillinavalidtoaddress" msgid "Please fill in a valid 'To' address" -msgstr "Пожалуйста, заполните допустимый адрес в поле «До»" +msgstr "Пожалуйста, заполните действительный адрес в поле «До»" #: frmfindstaticsunit.rsfsstructorarray msgid "struct or array" @@ -2753,6 +2924,7 @@ msgid "Stop" msgstr "Остановить" #: frmfindstaticsunit.strstopping +msgctxt "frmfindstaticsunit.strstopping" msgid "Stopping..." msgstr "Остановка..." @@ -2815,19 +2987,27 @@ msgstr "Добавить" #: frmgroupscanalgoritmgeneratorunit.rsgsgblocksizemustbeprovided msgid "blocksize must be provided" -msgstr "должен быть предоставлен размер блока" +msgstr "необходимо указать размер блока" #: frmgroupscanalgoritmgeneratorunit.rsgsgshouldbeatleast msgid "Should be at least %d" -msgstr "Должен быть как минимум %d" +msgstr "Должно быть не менее %d" #: frmgroupscanalgoritmgeneratorunit.rspickedhint msgid "When checked this element will get added to the addresslist. Note: If all checkboxes are disabled, ALL elements will be added" msgstr "Если галочка установлена, то этот элемент добавиться в список адресов. Примечание: Если сняты все галочки, то будут добавлены ВСЕ элементы" +#: frmgroupscanalgoritmgeneratorunit.rsrange +msgid "Range" +msgstr "Диапазон" + +#: frmgroupscanalgoritmgeneratorunit.rssstaticddynamiceexecutable +msgid "S=Static D=Dynamic E=Executable" +msgstr "S=Статичный D=Динамический E=Исполняемый" + #: frmgroupscanalgoritmgeneratorunit.rswildcard msgid "Skip nr of bytes:" -msgstr "Не учитывать тип:" +msgstr "Пропустить число байт:" #: frmidtunit.rsidt16bitinterruptgate msgid "16-bit interrupt gate" @@ -2859,7 +3039,7 @@ msgstr "шлюз задачи" #: frmidtunit.rsidtunkownidt msgid "unknown IDT" -msgstr "неизвестная ТДП" +msgstr "неизвестная таблица векторов прерываний (IDT)" #: frmloadmemoryunit.rsloadintomemory msgid "Load %s into memory" @@ -2937,7 +3117,7 @@ msgstr "Адрес : %s масштабирование : %s" #: frmmemoryviewexunit.rsfillintheaddressyouwanttogoto msgctxt "frmmemoryviewexunit.rsfillintheaddressyouwanttogoto" msgid "Fill in the address you want to go to" -msgstr "Заполните адрес, по которому вы хотите перейти" +msgstr "Введите адрес, по которому вы хотите перейти" #: frmmemoryviewexunit.rsgotoaddress msgctxt "frmmemoryviewexunit.rsgotoaddress" @@ -2960,6 +3140,7 @@ msgid "Conditional jump color" msgstr "Цвет условного перехода" #: frmmemviewpreferencesunit.rsdcbreakpoint +msgctxt "frmmemviewpreferencesunit.rsdcbreakpoint" msgid "Breakpoint" msgstr "Брейкпоинт" @@ -3002,6 +3183,10 @@ msgctxt "frmmemviewpreferencesunit.rshexadecimalcolor" msgid "Hexadecimal color" msgstr "Цвет 16-ричных значений" +#: frmmemviewpreferencesunit.rshexedit +msgid "Hexedit" +msgstr "Редактирование" + #: frmmemviewpreferencesunit.rsnormalcolor msgid "Normal color" msgstr "Обычный цвет" @@ -3023,7 +3208,7 @@ msgstr "Цвет безусловного перехода" #: frmmergepointerscanresultsettingsunit.rscopiesthesourceptrfilestotheworkingfolder msgid "Copies the source .ptr.# files to the working folder of the main PTR" -msgstr "Копирование исходных .ptr.# файлов в рабочую папку" +msgstr "Копирование исходных .ptr.# файлов в рабочую папку основного PTR" #: frmmergepointerscanresultsettingsunit.rslinksdirectlytothepathsofthesourceptrfiles msgid "" @@ -3038,9 +3223,13 @@ msgid "" "Moves the source .ptr.# files to the working folder of the main PTR\n" "Note: This destroys the source" msgstr "" -"Перемещение исходных .ptr.# файлов в рабочую папку\n" +"Перемещение исходных .ptr.# файлов в рабочую папку основного PTR\n" "Примечание: это разрушит первоисточник" +#: frmmodifyregistersunit.rsfailuresettingdbvmchangeregonbp +msgid "Failure setting a DBVM ChangeRegOnBP breakpoint" +msgstr "Не удалось установить DBVM ChangeRegOnBP брейкпоинт" + #: frmmodifyregistersunit.rsmodifyregisterssat msgid "Modify registers(s) at %s" msgstr "Изменить регистр(ы) у %s" @@ -3060,7 +3249,7 @@ msgstr "Не найден" #: frmpointerrescanconnectdialogunit.rscouldnotberesolved msgctxt "frmpointerrescanconnectdialogunit.rscouldnotberesolved" msgid " could not be resolved" -msgstr " не разрешён" +msgstr " не удалось разрешить" #: frmpointerrescanconnectdialogunit.rshost msgctxt "frmpointerrescanconnectdialogunit.rshost" @@ -3069,7 +3258,7 @@ msgstr "хост:" #: frmpointerscanconnectdialogunit.rshostcouldnotberesolved msgid "host: %s could not be resolved" -msgstr "хост: %s не разрешён" +msgstr "хост: %s не удалось разрешить" #: frmpointerscanconnectdialogunit.rsuseloadedpointermap msgid "Use loaded pointermap:" @@ -3108,15 +3297,15 @@ msgstr "Идентификатор Потока:" #: frmregistersunit.rslabelregisterhint msgid "" "DoubleClick: Browse this memory region.\n" -"Right Mouse Click: Register Value will be copied to Clipboard and Context Menu will open.\n" +"Right Mouse Click: Register Value will be copied to Clipboard and Context Menu will open." msgstr "" -"Двойной клик: Просмотр этого региона памяти\n" -"Клик правой кнопки мыши: Значение регистра будет скопировано в буфер обмена и откроется контекстное меню.\n" +"Двойной клик: Просмотр этого региона памяти.\n" +"Клик правой кнопкой мыши: Значение регистра будет скопировано в буфер обмена и откроется контекстное меню." #: frmregistersunit.rsnodescription msgctxt "frmregistersunit.rsnodescription" msgid "No Description" -msgstr "Нет описания" +msgstr "Без описания" #: frmrescanpointerunit.rsadd msgctxt "frmrescanpointerunit.rsadd" @@ -3139,7 +3328,7 @@ msgstr "Убрать" #: frmrescanpointerunit.rsrpentertheipaddressestonotifyexplicitly msgctxt "frmrescanpointerunit.rsrpentertheipaddressestonotifyexplicitly" msgid "Enter the IP addresses to notify explicitly" -msgstr "Введите IP-адреса для уведомления" +msgstr "Введите IP-адреса для явного уведомления" #: frmrescanpointerunit.rsrpfirstoffset msgid "First offset" @@ -3179,7 +3368,7 @@ msgstr "Новая карта указателей" #: frmresumepointerscanunit.rsrpsentertheipaddressestonotifyexplicitly msgctxt "frmresumepointerscanunit.rsrpsentertheipaddressestonotifyexplicitly" msgid "Enter the IP addresses to notify explicitly" -msgstr "Введите IP-адреса для уведомления" +msgstr "Введите IP-адреса для явного уведомления" #: frmresumepointerscanunit.rsrpsiplist msgctxt "frmresumepointerscanunit.rsrpsiplist" @@ -3196,7 +3385,7 @@ msgid "%s is not a valid address" msgstr "%s не является допустимым адресом" #: frmsavememoryregionunit.rsnostartaddress -msgid "If you don't include the header data you'll have to specify the startaddress yourself when loading the file(That means Cheat Engine wont fill in the startaddress text field when loaded for you)" +msgid "If you don't include the header data you'll have to specify the startaddress yourself when loading the file(That means Cheat Engine won't fill in the startaddress text field when loaded for you)" msgstr "Если вы не включите данные заголовка, вам нужно будет самостоятельно указать начальный адрес при загрузке файла. (Обычно Cheat Engine заполняет начальный адрес в текстовое поле за вас)" #: frmsavememoryregionunit.rsnotallthememorywasreadablein @@ -3231,7 +3420,7 @@ msgstr " Функции: " #: frmsnapshothandlerunit.rsshlockandaddtostructuredissect msgctxt "frmsnapshothandlerunit.rsshlockandaddtostructuredissect" msgid "Lock and add to structure dissect" -msgstr "Заблокировать и добавить в анализ структуры" +msgstr "Фиксировать и добавить в анализ структуры" #: frmsnapshothandlerunit.rsshnewwindow msgctxt "frmsnapshothandlerunit.rsshnewwindow" @@ -3260,7 +3449,7 @@ msgstr "Время до окончания" #: frmstackviewunit.rslockandaddtostructuredissect msgctxt "frmstackviewunit.rslockandaddtostructuredissect" msgid "Lock and add to structure dissect" -msgstr "Заблокировать и добавить в анализ структуры" +msgstr "Фиксировать и добавить в анализ структуры" #: frmstackviewunit.rsnewwindow msgctxt "frmstackviewunit.rsnewwindow" @@ -3274,7 +3463,7 @@ msgstr "Выберите окно анализа структуры, в кото #: frmstackviewunit.rssvthisstackviewwindowhasallocatedstacksnapshotsetc msgid "This stackview window has allocated stack snapshots in the target process. Do you wish to free them?" -msgstr "Данное окно выделило множество снимков в указанном процессе. Вы хотите освободить их?" +msgstr "Это окно представления стека выделило снимки стека выбранного процесса. Вы хотите освободить их?" #: frmstackviewunit.rsthestructureslistisbroken msgctxt "frmstackviewunit.rsthestructureslistisbroken" @@ -3458,11 +3647,11 @@ msgstr "Недопустимый файл указателя структуры" #: frmstructurecompareunit.rsspslock msgctxt "frmstructurecompareunit.rsspslock" msgid "Lock" -msgstr "Заблокировать" +msgstr "Фиксировать" #: frmstructurecompareunit.rsspsneednewce msgid "You'll need a newer CE version to open this file" -msgstr "Для открытия этого файла вам нужна новая версия Cheat Engine" +msgstr "Чтобы открыть этот файл, вам понадобится более новая версия Cheat Engine" #: frmstructurecompareunit.rsspsnoerror msgid "No error" @@ -3505,7 +3694,7 @@ msgstr "ФУУУУУ" #: frmstructurecompareunit.rsspsunlock msgid "Unlock (%.8x-%.8x)" -msgstr "Разблокировать (%.8x-%.8x)" +msgstr "Снять фиксацию (%.8x-%.8x)" #: frmstructurecompareunit.rsspsunotyetimplemented msgctxt "frmstructurecompareunit.rsspsunotyetimplemented" @@ -3556,14 +3745,23 @@ msgctxt "frmstructurelinkerunit.strisnotavalidaddress" msgid "%s is not a valid address" msgstr "%s не является допустимым адресом" +#: frmstructures2elementinfounit.rsmustselectstructure +msgid "For a nested structure you must select a predefined structure" +msgstr "Для вложенной структуры необходимо выбрать предопределенную структуру" + #: frmstructures2elementinfounit.rss2eiifyoucontinuetheoldlocallydefinedtype msgid "If you continue the old locally defined type %s will be deleted. Continue? (Tip: You can make this type into a global type so it can be re-used over again)" -msgstr "Если вы продолжите, то старый локально определенный тип %s будет удалён. Продолжить? (Совет: Вы можете превратить этот тип в общий, таким образом, он может быть использован снова)" +msgstr "Если вы продолжите, то старый локально определённый тип %s будет удалён. Продолжить? (Совет: Вы можете превратить этот тип в общий, таким образом, он может быть использован снова)" #: frmstructures2elementinfounit.rss2eilocalstruct msgid "Local struct:" msgstr "Локальная структура:" +#: frmstructures2elementinfounit.rsundefined +msgctxt "frmstructures2elementinfounit.rsundefined" +msgid "Undefined" +msgstr "Неопределенная" + #: frmstructuresconfigunit.rshighlighted msgctxt "frmstructuresconfigunit.rshighlighted" msgid "Highlighted" @@ -3579,6 +3777,7 @@ msgid "Guess Field Types" msgstr "Угадать типы полей" #: frmstructuresnewstructureunit.rssize +msgctxt "frmstructuresnewstructureunit.rssize" msgid "Size:" msgstr "Размер:" @@ -3660,18 +3859,31 @@ msgstr "Каким должно быть новое значение этого msgid "Write" msgstr "Запись" +#: frmtracerunit.rsdbvmbreakandtraceneedsdbvm +msgid "DBVM Break and Trace needs DBVM. Loading DBVM can potentially cause a system freeze. Are you sure?" +msgstr "DBVM Прерывание и Трассировка требует DBVM. Загрузка DBVM потенциально может привести к зависанию системы. Вы уверены?" + #: frmtracerunit.rssearch msgctxt "frmtracerunit.rssearch" msgid "Search" msgstr "Поиск" +#: frmtracerunit.rstracer +msgctxt "frmtracerunit.rstracer" +msgid "Tracer" +msgstr "Трассировщик" + #: frmtracerunit.rstypetheluaconditionyouwanttosearchforexampleeax0x1 msgid "" "Type the (LUA) condition you want to search for (Example: EAX==0x1234) \n" -"Also available: referencedAddress (integer), referencedBytes (bytetable), instruction (string)\n" +"Also available: referencedAddress (integer), referencedBytes (bytetable), instruction (string)" msgstr "" -"Введите условие (LUA), которое вы хотите найти(Пример: EAX == 0x1234)\n" -"Также доступно: referencedAddress (целое число), referencedBytes (байты), instruction (строка).\n" +"Введите условие (LUA), которое вы хотите найти (Пример: EAX==0x1234)\n" +"Также доступно: referencedAddress (целое число), referencedBytes (bytetable), инструкция (строка)" + +#: frmtracerunit.rswaitingfortracetostart +msgid "Waiting for trace to start" +msgstr "Ожидание запуска трассировки" #: frmultimap2unit.rscantbeparsed msgid "\" can't be parsed" @@ -3679,11 +3891,11 @@ msgstr "» не может быть проанализирован" #: frmultimap2unit.rsclosingwillfreeallcollecteddata msgid "Closing will free all collected data. Continue? (Tip: You can minimize this window instead)" -msgstr "Закрытие освободит все собранные данные. Продолжить? (Совет: Вместо этого вы можете просто свернуть окно)" +msgstr "Закрытие освободит все собранные данные. Продолжить? (Совет: Вместо этого вы можете просто свернуть это окно)" #: frmultimap2unit.rscpu msgid "CPU" -msgstr "ЦП" +msgstr "ЦПУ" #: frmultimap2unit.rsdasherror msgid " -error" @@ -3716,7 +3928,7 @@ msgstr " не является допустимым диапазоном" #: frmultimap2unit.rsmaxamountofrangesreachedforyourcpu msgid "Max amount of ranges reached for your CPU. Clear one first" -msgstr "Достигнуто максимальное количество диапазонов для вашего процессора" +msgstr "Достигнуто максимальное количество диапазонов для вашего процессора. Сначала очистите один из них" #: frmultimap2unit.rsmodulelist msgid "Module list" @@ -3734,10 +3946,10 @@ msgstr "На паузе" #: frmultimap2unit.rsprocessingdata msgid "" "Processing\n" -"Data\n" +"Data" msgstr "" "Обработка\n" -"Данные\n" +"Данные" #: frmultimap2unit.rsputbetweentomarsasanautostoprange msgid "(Put between *'s to mark as an auto stop range)" @@ -3749,7 +3961,7 @@ msgstr "Диапазоны: (Пусто для всех) (Макс. %d)" #: frmultimap2unit.rsrangesneeddbvminwindows10 msgid "To use ranges with Ultimap2 in windows 10, you must hide the fact that you use ranges from it. To be able to do that DBVM needs to be running. There is a chance running DBVM can crash your system and make you lose your data(So don't forget to save first). Do you want to run DBVM?" -msgstr "Для успешного использования диапазонов с Ultimap2 в Windows 10 вы должны скрыть этот факт. Для этого нужно запустить DBVM. Правда существует шанс, что запуск DBVM может привести к краху системы и потере не сохранённых данных(Так что, не забудьте сначала сохраниться). Вы хотите запустить DBVM?" +msgstr "Для успешного использования диапазонов с Ultimap2 в Windows 10 вы должны скрыть факт их использования. Для этого нужно запустить DBVM. Правда существует шанс, что запуск DBVM может привести к краху системы и потере не сохранённых данных(Так что, не забудьте сначала сохраниться). Вы хотите запустить DBVM?" #: frmultimap2unit.rsrecording2 msgid "Recording" @@ -3783,6 +3995,15 @@ msgstr "Предоставленный вами диапазон являетс msgid "The size has to be 12KB or higher" msgstr "Размер должен быть 12 Кбайт или больше" +#: frmultimap2unit.rsthread +msgctxt "frmultimap2unit.rsthread" +msgid "Thread" +msgstr "Поток" + +#: frmultimap2unit.rsyoumustselectabuffersize +msgid "You must select a buffersize" +msgstr "Вы должны выбрать размер буфера" + #: frmultimapunit.rsremovehotkey msgid "Remove hotkey (%s)" msgstr "Убрать горячую клавишу (%s)" @@ -3830,7 +4051,7 @@ msgstr "Этой функции нужно как минимум 200 байт д #: frmultimapunit.rsuuthiswillbringbackallfoundinstructions msgid "This will bring back all found instructions. Continue?" -msgstr "Это вернет все найденные инструкции. Продолжить?" +msgstr "Это вернёт все найденные инструкции. Продолжить?" #: frmultimapunit.rsuuthiswillresetthecallcountoffunctionbackto0 msgid "This will reset the callcount of functions back to 0. This can not be undone. Continue?" @@ -3846,7 +4067,7 @@ msgstr "<Не распознан>" #: gnuassembler.rsbyteswhile msgid " bytes while " -msgstr " байт, в то время как ожидалось " +msgstr " байт, в то время как " #: gnuassembler.rsconfigureavalidbinutilssetupfirst msgid "Configure a valid binutils setup first" @@ -3891,7 +4112,15 @@ msgstr " занимает " #: gnuassembler.rswhereexpected msgid " where expected" -msgstr " байт" +msgstr " ожидалось" + +#: groupscancommandparser.rsarangecantbeawildcard +msgid "A range can't be a wildcard" +msgstr "Диапазон не может быть подстановочным знаком" + +#: groupscancommandparser.rsarangetypeneedsarangeforvalue +msgid "A range type needs a range for value" +msgstr "Для типа «Диапазон» требуется указать диапазон значений" #: groupscancommandparser.rsgscpcustomtypenotrecognized msgid "Custom type not recognized: " @@ -3907,9 +4136,10 @@ msgstr "Подстановочные знаки/Незаполненные по #: guisafecriticalsection.rscriticalsectionleavewithoutenter msgid "Criticalsection leave without enter" -msgstr "Без входа в критическую секцию" +msgstr "Критическая секция оставлена без входа" #: hexviewunit.rsaddress +msgctxt "hexviewunit.rsaddress" msgid "address" msgstr "адрес" @@ -3922,6 +4152,7 @@ msgid "Big fucking error" msgstr "Чертовски большая ошибка" #: hexviewunit.rsbytes +msgctxt "hexviewunit.rsbytes" msgid "bytes" msgstr "байт" @@ -3944,7 +4175,7 @@ msgstr "Выполнение/Запись/Копирование" #: hexviewunit.rsguarded msgid "Guarded" -msgstr "Защищаемая" +msgstr "Защищённый" #: hexviewunit.rsinvalidbytesperseperatorvalue msgid "Invalid BytesPerSeperator value:%s" @@ -3997,13 +4228,17 @@ msgstr "Выглядит как обычная строка. Вы хотите #: hexviewunit.rswritecombine msgctxt "hexviewunit.rswritecombine" msgid "Write Combine" -msgstr "Комбинированная запись" +msgstr "Объединённая запись" #: hexviewunit.rswritecopy msgctxt "hexviewunit.rswritecopy" msgid "Write Copy" msgstr "Запись/Копирование" +#: hotkeys.rsdeactivateonrelease +msgid "Deactivate on release" +msgstr "Деактивировать при отпускании" + #: hotkeys.rsdecreasevaluewith msgid "Decrease value with:" msgstr "Уменьшить значение на:" @@ -4036,6 +4271,10 @@ msgstr "ID горячей клавиши=%s" msgid "Increase value with:" msgstr "Увеличить значение на:" +#: hotkeys.rsrestoretooriginalonrelease +msgid "Restore to original on release" +msgstr "Восстановление в исходное состояние при отпускании" + #: hotkeys.rssetvalueto msgid "Set value to:" msgstr "Установить значение:" @@ -4049,14 +4288,15 @@ msgid "" "The text to speak\n" "{Description} = The description of the hotkey\n" "{MRDescription} = The description field of the memory record\n" -"{MRValue} = The value of the memory record\n" +"{MRValue} = The value of the memory record" msgstr "" "Произносимый текст\n" "{Description} = Описание горячей клавиши\n" "{MRDescription} = Поле с описанием записи в память\n" -"{MRValue} = Значение, записываемое в память\n" +"{MRValue} = Значение, записываемое в память" #: hotkeys.rstogglefreeze +msgctxt "hotkeys.rstogglefreeze" msgid "Toggle freeze" msgstr "Заморозить/Разморозить" @@ -4096,6 +4336,14 @@ msgstr "Неизвестное расширение файла" msgid "DBKDebug_StartDebugging failed" msgstr "Сбой DBKDebug_StartDebugging" +#: kerneldebuggerinterface.rskernelmodeneedsdbvm +msgid "You can't use kerneldebug in 64-bit without DBVM" +msgstr "Вы не можете использовать отладку ядра в 64-разрядной версии без DBVM" + +#: libcepack.askpermission +msgid "Extract %s to %s?" +msgstr "Извлечь %s в %s?" + #: luacaller.rsautoassemblercallbackluafunctionerror msgid "AutoAssemblerCallback: Lua Function error(" msgstr "AutoAssemblerCallback: Ошибка Lua функции(" @@ -4141,7 +4389,7 @@ msgstr "createfoundlist нуждается в объекте memscan в каче #: luahandler.rscheatengineisbeingafag msgid "Cheatengine is being a fag" -msgstr "Cheat Engine не испытывает желание делать то, что вы хотите" +msgstr "Cheat Engine напряженно трудится" #: luahandler.rsconditionalbreakpointerror msgid "Conditional breakpoint error" @@ -4228,6 +4476,10 @@ msgctxt "luahandler.rspluginaddress" msgid "Plugin Address" msgstr "Расположение плагина" +#: luahandler.rsscriptcorruptedvar +msgid "%s has corrupted the global %s variable. Many scripts will fail to load now" +msgstr "%s повредил глобальную переменную %s. Многие скрипты теперь не будут загружаться" + #: luahandler.rsthistypeisnotsupportedhere msgid "This type is not supported here" msgstr "Этот тип не поддерживается" @@ -4254,6 +4506,10 @@ msgctxt "luaobject.rsthistypeofmethod" msgid "This type of method:" msgstr "Этот тип метода:" +#: luastructure.rsinvalidindex +msgid "Invalid index" +msgstr "Недопустимый индекс" + #: luastructurefrm.rsgroup1 msgctxt "luastructurefrm.rsgroup1" msgid "Group 1" @@ -4275,30 +4531,25 @@ msgstr "Числа" msgid "Lua Files (*.lua, *.lpr)|*.lua;*.lpr" msgstr "Файлы Lua (*.lua, *.lpr)|*.lua;*.lpr" -#: luasyntax.syns_langlua -msgctxt "luasyntax.syns_langlua" -msgid "Lua" -msgstr "Lua" - #: luatablefile.rscreatetablefilerequiresatleastoneparameter msgid "createTableFile requires at least one parameter" msgstr "для createTableFile требуется по крайней мере один параметр" #: luatablefile.rserrorraisedwithmessage msgid " error raised with message: " -msgstr " вызвана ошибка с сообщением: " +msgstr " возникла ошибка с сообщением: " #: luatablefile.rstabledileentryalreadyexistsforfilename msgid "Table file entry already exists for filename: " msgstr "Запись файла таблицы уже существует для файла: " #: luathread.rserrorinnativethreadcalled -msgid "Error in native thread called " -msgstr "Ошибка в собственном потоке вызвала " +msgid "Error in thread called " +msgstr "Ошибка в потоке, под названием " #: luathread.rsinnativecode msgid " in native code:" -msgstr " в собственном коде:" +msgstr " в машинном коде::" #: luathread.rsinvalidfirstparameterforcreatenativethread msgid "Invalid first parameter for createNativeThread" @@ -4317,10 +4568,6 @@ msgctxt "mainunit.rsand" msgid "and" msgstr "и" -#: mainunit.rsaprilfools -msgid "April fools!!!!" -msgstr "Первоапрельский дурак!!!!" - #: mainunit.rsareyousure msgctxt "mainunit.rsareyousure" msgid "Are you sure?" @@ -4341,7 +4588,7 @@ msgstr "Вы уверены, что хотите стереть все данн #: mainunit.rsatleastxx msgid "at least xx%" -msgstr "как минимум xx%" +msgstr "не менее xx%" #: mainunit.rsautoassembleedit msgid "Auto Assemble edit: %s" @@ -4355,6 +4602,10 @@ msgstr "между %" msgid "brings Cheat Engine to front" msgstr "переносит Cheat Engine на передний план" +#: mainunit.rsbusy +msgid "" +msgstr "<занят>" + #: mainunit.rscancel msgctxt "mainunit.rscancel" msgid "Cancel" @@ -4373,23 +4624,23 @@ msgstr "Изменить значение" msgid "Which language do you wish to use?" msgstr "Какой язык вы хотите использовать?" +#: mainunit.rsclearingmeansslowness +msgid "Clearing the assigned memory for this process will cause it to obtain all the memory it needs again which can cause a temporary slowdown in the target. Make sure the value you're interested in gets accessed once before you scan. Continue?" +msgstr "Очистка выделенной памяти для этого процесса приведёт к тому, что он снова получит всю необходимую память, что может привести к его временному замедлению. Перед сканированием убедитесь, что к интересующему вас значению был получен доступ. Продолжить?" + #: mainunit.rsclearrecentfiles msgid "Empty Recent Files List" -msgstr "Очистить список последних файлов" +msgstr "Очистить список недавних файлов" #: mainunit.rscomparetosavedscan msgctxt "mainunit.rscomparetosavedscan" msgid "Compare to first/saved scan" -msgstr "Сравнение с первым/сохранённым результатом поиска" +msgstr "Сравнить с первым/сохранённым результатом поиска" #: mainunit.rscomparingto msgid "Comparing to %s" msgstr "Сравнение с %s" -#: mainunit.rscomparingtof -msgid "Comparing to first scan results" -msgstr "Сравнение с результатом первого поиска" - #: mainunit.rscurrentprocess msgid "Current process" msgstr "Текущий процесс" @@ -4441,6 +4692,11 @@ msgstr "Редактировать" msgid "Edit addresses" msgstr "Редактирование адресов" +#: mainunit.rsenablespeedhack +msgctxt "mainunit.rsenablespeedhack" +msgid "Enable Speedhack" +msgstr "Включить спидхак" + #: mainunit.rsexpired msgid "EXPIRED" msgstr "Истёк срок действия лицензии" @@ -4465,21 +4721,29 @@ msgstr "Не удалось установить привилегии загру msgid "Failure setting the SeTcbPrivilege privilege. Debugging may be limited." msgstr "Не удалось установить привилегии SeTcbPrivilege. Отладка может быть ограничена." +#: mainunit.rsfileinuse +msgid "" +msgstr "<Файл используется>" + #: mainunit.rsfindoutwhataccessesthispointer msgid "Find out what accesses this pointer" -msgstr "Найти инструкции, обращающиеся к этому указателю" +msgstr "Выяснить, что обращается к этому указателю" #: mainunit.rsfindoutwhatwritesthispointer msgid "Find out what writes this pointer" -msgstr "Найти инструкции, записывающие по этому указателю" +msgstr "Выяснить, что записывает по этому указателю" #: mainunit.rsfindwhataccessestheaddresspointedatbythispointer msgid "Find what accesses the address pointed at by this pointer" -msgstr "Найти инструкции, обращающиеся к указываемому указателем адресу" +msgstr "Выяснить, что обращается к адресу, на который указывает этот указатель" #: mainunit.rsfindwhatwritestheaddresspointedatbythispointer msgid "Find what writes the address pointed at by this pointer" -msgstr "Найти инструкции, записывающие по указываемому указателем адресу" +msgstr "Выяснить, что записывает по адресу, на который указывает этот указатель" + +#: mainunit.rsfirst +msgid "First" +msgstr "Первое" #: mainunit.rsforcetermination msgid "Force termination" @@ -4523,10 +4787,6 @@ msgctxt "mainunit.rshexadecimal" msgid "Hexadecimal" msgstr "Шестнадцатеричное" -#: mainunit.rshrmpfbecauseiminagoodmoodillletyougothistimebutdon -msgid "Hrmpf... Because I'm in a good mood i'll let you go this time. But don't do it again you filthy pirate" -msgstr "Хмм... Сейчас я в хорошем настроении, поэтому в этот раз я тебя отпущу. Но не делай так больше, мерзкий пират" - #: mainunit.rsinvalidscanfolder msgid "%s is not accessible like it should. Please configure a proper location in the settings" msgstr "%s недоступна. Пожалуйста, укажите её правильное расположение в настройках" @@ -4551,10 +4811,6 @@ msgstr "%s не является допустимым названием xml ф msgid "Language" msgstr "Язык" -#: mainunit.rslicenseexpired -msgid "Your license to use Cheat Engine has expired. You can buy a license to use cheat engine for 1 month for $200, 6 months for only $1000 and for 1 year for only $1800. If you don't renew your license Cheat Engine will be severely limited in it's abilities. (e.g: Next scan has been disabled)" -msgstr "Ваша лицензия на использование Cheat Engine истекла. Для дальнейшего использования программы вы можете приобрести лицензию на 1 месяц за $200, на 6 месяцев за $1000 или на 1 год всего за $1800. Если вы не продлите вашу лицензию, то Cheat Engine будет работать в ограниченном режиме. (например: кнопка «Отсев» будет отключена)" - #: mainunit.rsloadtheassociatedtable msgid "Load the associated table? (%s)" msgstr "Загрузить ассоциированную таблицу? (%s)" @@ -4568,12 +4824,13 @@ msgid "Modified" msgstr "Модифицирован" #: mainunit.rsmugenerategroupscancommand +msgctxt "mainunit.rsmugenerategroupscancommand" msgid "Generate groupscan command" msgstr "Генерация группового поиска" -#: mainunit.rsnone -msgid "" -msgstr "<нет>" +#: mainunit.rsnetworkoption +msgid "Network option :" +msgstr "Сетевой параметр :" #: mainunit.rsoverlay msgid "overlay " @@ -4583,11 +4840,25 @@ msgstr "оверлей " msgid " part " msgstr " часть " +#: mainunit.rspleasewait +msgctxt "mainunit.rspleasewait" +msgid "" +msgstr "<Обработка>" + #: mainunit.rsprevious msgctxt "mainunit.rsprevious" msgid "Previous" msgstr "Прежнее" +#: mainunit.rspreviousvaluelist +msgid "Previous value list" +msgstr "Список прежних значений" + +#: mainunit.rsprocessing +msgctxt "mainunit.rsprocessing" +msgid "" +msgstr "<Обработка>" + #: mainunit.rsremoveselectedaddress msgid "Remove selected address" msgstr "Удалить выбранный адрес" @@ -4616,7 +4887,7 @@ msgstr "Процедура DBVM поиска требует запуска са #: mainunit.rsrequiresept msgid "This function requires that your CPU supports 'Intel Extended Page Table (EPT) or AMD Nested Paging' which your CPU lacks" -msgstr "Эта функция требует процессора поддерживающего «Расширенную таблицу страниц (EPT)» или «Вложенный пейджинг(NP)»" +msgstr "Эта функция требует процессора, поддерживающего «Расширенную Таблицу Страниц (EPT)» или «Вложенная Виртуализацию (NPT)»" #: mainunit.rsrestoreandshow msgid "Restore and show" @@ -4647,19 +4918,24 @@ msgstr "Поиск" msgid "Scan error:%s" msgstr "Ошибка поиска: %s" -#: mainunit.rsscanresult -msgid "Scanresult" -msgstr "Scanresult" +#: mainunit.rsselectthesavedresult +msgid "Select the saved results you wish to use" +msgstr "Выберите сохранённые результаты, которые вы хотите использовать" #: mainunit.rsselectthesavedscanresultfromthelistbelow msgid "Select the saved scan result from the list below" msgstr "Выберите сохранённый результат поиска из списка ниже" +#: mainunit.rsselectthesavedscanresulttodeletefromthelistbelow +msgid "Select the saved scan result to delete from the list below" +msgstr "Выберите сохранённый результат сканирования для удаления из списка ниже" + #: mainunit.rssetchangehotkeys msgid "Set/Change hotkeys" msgstr "Назначить/Изменить горячие клавиши" #: mainunit.rssethotkeys +msgctxt "mainunit.rssethotkeys" msgid "Set hotkeys" msgstr "Назначить горячие клавиши" @@ -4685,17 +4961,13 @@ msgstr "показывается" msgid "Terminating scan..." msgstr "Завершение поиска..." -#: mainunit.rsthankyoufortryingoutcheatenginebecauseithasexpired -msgid "Thank you for trying out Cheat Engine. Because it has expired Cheat Engine will now close. Is that ok with you?" -msgstr "Спасибо, что опробовали Cheat Engine. Т.к. пробный период истёк, то Cheat Engine сейчас закроется. С вами всё в порядке?" - #: mainunit.rstheprocessisntfullyopenedindicatingainvalidprocess msgid "The process isn't fully opened. Indicating a invalid ProcessID. You still want to find out the EPROCESS? (BSOD is possible)" msgstr "Процесс открыт не полностью. Указан недопустимый идентификатор процесса. Вы всё ещё хотите узнать EPROCESS? (возможен BSOD)" #: mainunit.rsthereareoneormoreautoassemblerentriesorcodechanges msgid "There are one or more auto assembler entries or code changes enabled in this table. Do you want them disabled? (without executing the disable part)" -msgstr "В текущей таблице включен как минимум один скрипт автоассемблера или изменяющий код (см. «Дополнительные возможности»). Вы хотите их отключить? (Без выполнения условий их отключения)" +msgstr "В текущей таблице включен как минимум один скрипт автоассемблера или изменяющий код (см. «Дополнительные возможности»). Вы хотите их отключить? (Без выполнения кода их отключения)" #: mainunit.rstherecordwithdescriptionhasasinterpretableaddresst msgid "The record with description '%s' has as interpretable address '%s'. The recalculation will change it to %s. Do you want to edit it to the new address?" @@ -4718,7 +4990,7 @@ msgid "Do you want to try out the tutorial?" msgstr "Вы хотите пройти учебное руководство?" #: mainunit.rsunabletoscanfixyourscansettings -msgid "Unable to scan. Fix your scan settings and restart cheat engine" +msgid "Unable to scan. Fix your scan settings and restart Cheat Engine" msgstr "Сканирование невозможно. Исправьте ваши настройки поиска и перезапустите Cheat Engine" #: mainunit.rsunrandomizerinfo @@ -4737,10 +5009,6 @@ msgstr "Значение %" msgid " was clicked at positon " msgstr " был кликнут в позиции " -#: mainunit.rswhatareyousayingyouregoingtocontinueusingceillegal -msgid "WHAT!!! Are you saying you're going to continue using CE ILLEGALLY??? If you say yes, i'm going to mail the cops to get you and send you to jail!!!" -msgstr "ЧТО?!!! Вы хотите сказать, что и дальше будете нелегально использовать Cheat Engine??? Если вы ответите «Да», то я напишу заявление в полицию, чтобы они вас поймали и отправили за решётку!" - #: mainunit.rswhatdoyouwantthegroupnametobe msgid "What do you want the groupname to be?" msgstr "Какое название вы хотите дать этой группе?" @@ -4755,7 +5023,7 @@ msgstr "Какое название вы хотите дать этой вкла #: mainunit.rswidth msgid " - width=" -msgstr " - ширина=" +msgstr " -ширина=" #: mainunit.rsyouarelowondiskspaceonthefolderwherethescanresults msgid "You are low on diskspace on the folder where the scanresults are stored. Scanning might fail. Are you sure you want to continue?" @@ -4829,16 +5097,16 @@ msgid "Delete these addresses" msgstr "Удалить эти адреса" #: mainunit.strdisablecheat -msgid "Disable cheat" -msgstr "Отключить чит" +msgid "Disable Cheat" +msgstr "Отключить Чит" #: mainunit.strdontbother msgid "Don't even bother. Cheat Engine uses the main thread to receive messages when the scan is done, freeze it and CE will crash!" msgstr "Даже не беспокойтесь. Cheat Engine использует основной поток для приёма информации об окончании процесса поиска. Если вы заморозите его, то Cheat Engine аварийно завершится!" #: mainunit.strenablecheat -msgid "Enable cheat" -msgstr "Включить чит" +msgid "Enable Cheat" +msgstr "Включить Чит" #: mainunit.strerror msgctxt "mainunit.strerror" @@ -4880,7 +5148,7 @@ msgstr "скроет все окна" #: mainunit.strhideforeground msgid "will hide the foreground window" -msgstr "скроет активное окно" +msgstr "скроет окно переднего плана" #: mainunit.strinfoabouttable msgid "Info about this table:" @@ -4900,7 +5168,7 @@ msgstr "Вы выбрали один или более указателей. И #: mainunit.strnewyear msgid "And what are your good intentions for this year? ;-)" -msgstr "Хорошо ли вы вели себя в этом году? ;-)" +msgstr "И каковы ваши благие намерения на этот год? ;-)" #: mainunit.strnotavalidbinarynotation msgid " is not a valid binary notation!" @@ -4908,7 +5176,7 @@ msgstr " недопустимая двоичная запись!" #: mainunit.strnotavalidnotation msgid "This is not a valid notation" -msgstr "Недопустимая запись" +msgstr "Недопустимое обозначение" #: mainunit.strnotavalidvalue msgctxt "mainunit.strnotavalidvalue" @@ -4925,7 +5193,7 @@ msgstr "Введённый вами текст отличается по раз #: mainunit.strnotthesamesize2 msgid "Not the same size!" -msgstr "Размер отличается!" +msgstr "Не тот размер!" #: mainunit.stropcodechanged msgctxt "mainunit.stropcodechanged" @@ -4980,7 +5248,7 @@ msgstr "Текст" #: mainunit.strselectedaddressisapointer msgid "The selected address is a pointer. Are you sure? (the base pointer will get the address)" -msgstr "Выбранный адрес является указателем. Вы уверены? (будет изменён адрес базового указателя)" +msgstr "Выбранный адрес является указателем. Вы уверены? (базовый указатель получит адрес)" #: mainunit.strsethotkey msgid "Set a hotkey" @@ -5004,11 +5272,11 @@ msgstr "Разморозить все адреса в этом списке" #: mainunit.strunhideall msgid "will bring all windows back" -msgstr "возвратит все окна" +msgstr "вернёт все окна обратно" #: mainunit.strunhideforeground msgid "will bring the foreground window back" -msgstr "возвратит активное окно" +msgstr "вернёт окно переднего плана обратно" #: mainunit.strunknownextension msgctxt "mainunit.strunknownextension" @@ -5028,6 +5296,10 @@ msgstr "Окну не удалось скрыться" msgid "Merry christmas and happy new year" msgstr "Весёлого Рождества и счастливого Нового Года" +#: mainunit2.rsdbvmmissedentries +msgid "Missed %d entries due to a too small buffer or slow copy operation" +msgstr "Пропущено %d записей из-за слишком малого буфера или медленной операции копирования" + #: mainunit2.rsenabledisablespeedhack msgid "Enable/Disable speedhack." msgstr "Включить/Выключить спидхак." @@ -5050,7 +5322,11 @@ msgstr "Выберите инструкцию из списка для полу #: mainunit2.rsusethegameapplicationforawhile msgid "Use the game/application for a while and make the address you're watching change. The list will be filled with addresses that contain code that change the watched address." -msgstr "Укажите адрес, за которым вы хотите проследить, и поиграйте некоторое время. Список будет заполнен адресами инструкций, взаимодействующих с наблюдаемым адресом." +msgstr "Попользуйтесь игрой/приложением некоторое время и сделайте так, чтобы адрес, за которым вы следите, изменился. Список будет заполнен адресами инструкций, взаимодействующих с наблюдаемым адресом." + +#: mainunit2.rswonthaveanyeffectuntilyouopenanewprocess +msgid "(Won't have any effect until you (re)open a process)" +msgstr "(Не будет иметь никакого эффекта, пока вы не (пере)откроете процесс)" #: mainunit2.straddresshastobereadable msgid "The address has to be readable if you want to use this function" @@ -5127,6 +5403,7 @@ msgid "This function only works in Windows 2000+ (perhaps also NT but not tested msgstr "Эта функция работает только на Windows 2000+ (возможно и на NT)" #: mainunit2.strnewscan +msgctxt "mainunit2.strnewscan" msgid "New Scan" msgstr "Нов. поиск" @@ -5168,7 +5445,7 @@ msgstr "Неизвестное значение" #: mainunit2.strvaluebetween msgid "Value between..." -msgstr "Диапазон" +msgstr "Значение между..." #: manualmoduleloader.rsmmlallocationerror msgid "Allocation error" @@ -5196,7 +5473,7 @@ msgstr "не удалось создать OpenGL окно" #: memdisplay.rsondatareturnedatoosmallmemoryregion msgid "OnData returned a too small memory region. It should have returned false instead" -msgstr "OnData возвратил слишком небольшую область памяти. Вместо этого он должен был вернуть false" +msgstr "OnData возвратила слишком небольшой регион памяти. Вместо этого она должна была вернуть false" #: memorybrowserformunit.rs0or1 msgid "(0 or 1)" @@ -5212,12 +5489,13 @@ msgid "Allocate memory" msgstr "Выделить память" #: memorybrowserformunit.rsassemblyscan +msgctxt "memorybrowserformunit.rsassemblyscan" msgid "Assembly scan" -msgstr "Поиск инструкций" +msgstr "Поиск ассемблерного кода" #: memorybrowserformunit.rsatleastbyteshavebeenallocatedatdoyouwanttogotheren msgid "At least %s bytes have been allocated at %s%sDo you want to go there now?" -msgstr "Как минимум %s байт(а) было выделено по адресу %s. Вы хотите сейчас перейти туда?" +msgstr "Как минимум %s байт(а) было выделено по адресу %s%sВы хотите сейчас перейти туда?" #: memorybrowserformunit.rsatleastbyteshavebeenallocatedatgotherenow msgid "At least %s bytes have been allocated at %s. Go there now?" @@ -5258,7 +5536,7 @@ msgstr "Создать удалённый поток" #: memorybrowserformunit.rsdllinjected msgid "DLL Injected" -msgstr "Инъекция DLL прошла успешно" +msgstr "Внедрение dll прошло успешно" #: memorybrowserformunit.rsdoyouwanttoexecuteafunctionofthedll msgid "Do you want to execute a function of the dll?" @@ -5270,7 +5548,7 @@ msgstr "Возникла ошибка при выделении памяти!" #: memorybrowserformunit.rsfillintheaddressyouwanttogoto msgid "Fill in the address you want to go to" -msgstr "Заполните адрес, по которому вы хотите перейти" +msgstr "Введите адрес, по которому вы хотите перейти" #: memorybrowserformunit.rsgetkerneladdress msgid "Get kernel address" @@ -5310,20 +5588,21 @@ msgstr "Не понятно, что вы имели в виду, написав #: memorybrowserformunit.rsinjectdll msgid "Inject dll" -msgstr "Инъекция dll" +msgstr "Внедрение dll" #: memorybrowserformunit.rsinjectdylib msgid "Inject DYLIB" -msgstr "Инъекция DYLIB" +msgstr "Внедрени DYLIB" #: memorybrowserformunit.rsinputtheassemblycodetofindwilcardssupported +msgctxt "memorybrowserformunit.rsinputtheassemblycodetofindwilcardssupported" msgid "Input the assembly code to find. Wildcards( * ) supported." -msgstr "Укажите инструкцию для поиска. Поддерживается подстановочный знак ( * )" +msgstr "Введите ассемблерный код для поиска. Поддерживается подстановочный знак ( * )" #: memorybrowserformunit.rsisnotavalidvalue msgctxt "memorybrowserformunit.rsisnotavalidvalue" msgid "%s is not a valid value" -msgstr "%s не является допустимым значением" +msgstr "«%s» не является допустимым значением" #: memorybrowserformunit.rslinkwithotherhexview msgctxt "memorybrowserformunit.rslinkwithotherhexview" @@ -5367,6 +5646,7 @@ msgid "New size" msgstr "Новый размер" #: memorybrowserformunit.rsparameters +msgctxt "memorybrowserformunit.rsparameters" msgid "Parameters" msgstr "Параметры" @@ -5383,9 +5663,8 @@ msgid "Please specify the new symbol searchpath (; separates paths)" msgstr "Пожалуйста, укажите новый путь поиска символа (точка с запятой разделяет пути)" #: memorybrowserformunit.rspleasetargetanotherprocess -msgctxt "memorybrowserformunit.rspleasetargetanotherprocess" msgid "Start another version of Cheat Engine and attach to that instead" -msgstr "Если вы хотите выполнить это действие с Cheat Engine с её же помощью, то вам нужно запустить ещё одну копию" +msgstr "Вместо этого запустите другую версию Cheat Engine и подключитесь к ней" #: memorybrowserformunit.rspleasetargetaprocessfirst msgid "Please target a process first" @@ -5418,6 +5697,11 @@ msgctxt "memorybrowserformunit.rssetbreakpoint" msgid "Set breakpoint" msgstr "Установить брейкпоинт" +#: memorybrowserformunit.rssetcustomalignment +msgctxt "memorybrowserformunit.rssetcustomalignment" +msgid "Set custom alignment" +msgstr "Установить пользовательское выравнивание" + #: memorybrowserformunit.rsshowdifference msgctxt "memorybrowserformunit.rsshowdifference" msgid "Show difference" @@ -5446,7 +5730,7 @@ msgstr "Обработчик символа" #: memorybrowserformunit.rsthegeneratedcodeisbyteslongbuttheselectedopcodeisb msgid "The generated code is %s byte(s) long, but the selected opcode is %s byte(s) long! Do you want to replace the incomplete opcode(s) with NOP's?" -msgstr "Ваша инструкция занимает %s байт(а), а заменяемая инструкция %s байт(а)! Вы хотите заменить незаполненные байты NOP'ами?" +msgstr "Ваша инструкция занимает %s байт(а), а заменяемая инструкция %s байт(а)! Вы хотите заменить незаполненные байты на NOP?" #: memorybrowserformunit.rstypeyourassemblercodehereaddress msgid "Type your assembler code here: (address=%s)" @@ -5480,7 +5764,7 @@ msgstr "Активация" #: memoryrecordunit.rsadjustmrwithrelativeaddress msgid "Do you wish to adjust memory records with relative addresses as well?" -msgstr "Вы хотите также настроить записи в памяти с относительными адресами?" +msgstr "Хотите ли вы настроить записи памяти с относительными адресами?" #: memoryrecordunit.rsdeactivate msgctxt "memoryrecordunit.rsdeactivate" @@ -5529,6 +5813,11 @@ msgstr "Только уменьшение" msgid "Toggle Activation Allow Increase" msgstr "Только увеличение" +#: memoryrecordunit.rsunknown +msgctxt "memoryrecordunit.rsunknown" +msgid "Unknown" +msgstr "Неизвестно" + #: memscan.rsaresultsetwiththisnamealreadyexists msgid "A result set with this name(%s) already exists" msgstr "Результат с таким же названием (%s) уже существует" @@ -5543,7 +5832,7 @@ msgstr "Ошибка записи диска: %s" #: memscan.rserrorallocatingbytesfortheoldresults msgid "Error allocating %s bytes for the old results. buffersize=%s variablesize=%s" -msgstr "Ошибка, выделяющая %s байт(а) старым результатам. размер буфера=%s размер переменной=%s" +msgstr "Ошибка при выделении %s байт(а) для старых результатов. размер буфера=%s размер переменной=%s" #: memscan.rserrorwhenwhileloadingresult msgid "Error while loading result" @@ -5555,7 +5844,7 @@ msgstr "Не удалось породить поток сохранения п #: memscan.rsfailureallocatingmemoryforcopytriedallocatingkb msgid "Failure allocating memory for copy. Tried allocating %s KB" -msgstr "Сбой при выделении памяти для копирования. Попробуйте выделить %s Кбайт(а)" +msgstr "Не удалось выделить память для копирования. Попробуйте выделить %s Кбайт(а)" #: memscan.rsfailurecreatingthescandirectory msgid "Failure creating the scan directory" @@ -5594,13 +5883,17 @@ msgstr "Пользовательский тип - nil" msgid "Nothing to scan for" msgstr "Нечего сканировать" +#: memscan.rsmspointertypenotrecognised +msgid "Pointer type not recognised: " +msgstr "Тип указателя не опознан:" + #: memscan.rsmsthescanwasforcedtoterminatesubsequentscansmaynotfunctionproperlyetc msgid "The scan was forced to terminate. Subsequent scans may not function properly. It's recommended to restart Cheat Engine" msgstr "Сканирование было принудительно завершено. Последующие сканирования могут не функционировать должным образом. Рекомендуется перезапустить Cheat Engine" #: memscan.rsmstupidalignsize msgid "Stupid alignsize" -msgstr "Дурацкое выравнивание размера" +msgstr "Дурацкий размер выравнивания" #: memscan.rsnoreadablememoryfound msgctxt "memscan.rsnoreadablememoryfound" @@ -5621,7 +5914,7 @@ msgstr "Пожалуйста, укажите что-нибудь для поис #: memscan.rsthetemporaryscandirectorydoesnotexistcheckyourscan msgid "The temporary scan directory %s does not exist. Check your scan settings" -msgstr "Отсутствует папка «%s» для временных файлов поиска. Проверьте «Настройки поиска»" +msgstr "Отсутствует папка «%s» для временных файлов поиска. Проверьте ваши «Настройки поиска»" #: memscan.rsthread msgid "thread " @@ -5663,6 +5956,10 @@ msgctxt "networkconfig.rshost" msgid "host:" msgstr "хост:" +#: networkinterfaceapi.rsinvalidceserverversion +msgid "Invalid ceserver version. ( %s )" +msgstr "Неверная версия ceserver.( %s )" + #: networkinterfaceapi.rsnoconnection msgid "No connection" msgstr "Нет соединения" @@ -5681,7 +5978,7 @@ msgstr "Я не знаю что вы сделали, аварийного зав #: newkernelhandler.rsfucked msgid "Something is really messed up on your computer! You don't seem to have a kernel!!!!" -msgstr "Что-то действительно перепуталось на вашем компьютере! Кажется, у вас отсутствует kernel!!!" +msgstr "Какая-то неразбериха на вашем компьютере! Кажется, у вас отсутствует kernel!!!" #: newkernelhandler.rspleaserebootandpressf8beforewindowsboots msgid "Please reboot and press f8 before windows boots. Then enable unsigned drivers. Alternatively, you could buy yourself a business class certificate and sign the driver yourself (or try debug signing)" @@ -5713,7 +6010,7 @@ msgstr "Ошибка выполнения lua скрипта: %s" #: opensave.rserrorexecutingthistablesluascriptentry msgid "Error executing this table's lua script named %s: %s" -msgstr "Ошибка выполнения lua скрипта в этой таблице с именем %s: %s" +msgstr "Ошибка при выполнении lua скрипта этой таблицы с именем %s: %s" #: opensave.rserrorsaving msgid "Error saving..." @@ -5721,7 +6018,7 @@ msgstr "Ошибка сохранения..." #: opensave.rsinvalidluafortrainer msgid "The lua script in this trainer has some issues and will therefore not load" -msgstr "lua скрипт в этом тренере имеет некоторые проблемы и поэтому не загружается" +msgstr "Lua скрипт в этом трейнере имеет некоторые проблемы и поэтому не загружается" #: opensave.rsosthereisanewerversionifcheatengineoutetc msgid "There is a newer version of Cheat Engine out. It's recommended to use that version instead" @@ -5736,7 +6033,7 @@ msgid "The region at %s was partially or completely unreadable" msgstr "Регион «%s» частично или полностью нечитаемый" #: opensave.rstheversionofisincompatiblewiththisceversion -msgid "The version of %s is incompatible with this CE version" +msgid "The version of %s is incompatible with this Cheat Engine version" msgstr "Версия %s не совместима с этой версией Cheat Engine" #: opensave.rsthisisnotavalidcheattable @@ -5762,26 +6059,26 @@ msgstr "Вы можете защитить только файл с расшир #: opensave.strcantloadfilepatcher msgid "The file patcher can't be loaded by Cheat Engine!" -msgstr "Этот файл не может быть загружен в Cheat Engine!" +msgstr "Этот файл не может быть загружен Cheat Engine!" #: opensave.strcantloadprotectedfile -msgid "This trainer is protected from being opened by CE. Now go away!!!" -msgstr "Этот трейнер защищён от редактирования в Cheat Engine. Проваливай!!!" +msgid "This Trainer is protected from being opened by Cheat Engine. Now go away!!!" +msgstr "Этот Трейнер защищён от редактирования в Cheat Engine. Проваливай!!!" #: opensave.strcorrupticon msgid "The icon has been corrupted" msgstr "Иконка была повреждена" #: opensave.strnotacetrainer -msgid "This is not a trainer made by Cheat Engine (If it is a trainer at all!)" -msgstr "Этот трейнер не был создан при помощи Cheat Engine (если это вообще трейнер)" +msgid "This is not a Trainer made by Cheat Engine (If it is a Trainer at all!)" +msgstr "Этот Трейнер не был создан при помощи Cheat Engine (если это вообще трейнер)" #: opensave.strunknowncomponent msgid "There is a unknown component in the trainer! compnr=" msgstr "В трейнере присутствует неизвестный компонент! compnr=" #: opensave.strunknowntrainerversion -msgid "This version of Cheat Engine doesn't know how to read this trainer! Trainerversion=" +msgid "This version of Cheat Engine doesn't know how to read this Trainer! Trainerversion=" msgstr "Данная версия Cheat Engine не может открыть этот трейнер! Версия трейнера=" #: parsers.rsinvalidinteger @@ -5930,7 +6227,7 @@ msgstr "Таблица экспорта" #: peinfounit.rspefailureatallocationmemory msgid "Failure at allocating memory" -msgstr "Отказ в выделении памяти" +msgstr "Не удалось выделить память" #: peinfounit.rspefailurereadingmemory msgid "Failure reading memory" @@ -6006,7 +6303,7 @@ msgstr "Старшая версия компоновщика = %d " #: peinfounit.rspemajoroperatingsystemversion msgid "Major Operating System Version = %d " -msgstr "Старшая версия операционной системы = %d " +msgstr "Старшая версия операционной системы = %d " #: peinfounit.rspemajorsubsystemversion msgid "Major Subsystem Version = %d " @@ -6226,7 +6523,7 @@ msgstr "Размер неинициализированных данных = %x #: peinfounit.rspestaticaddresses msgid "Static addresses" -msgstr "Статические адреса" +msgstr "Статичные адреса" #: peinfounit.rspesubsystem msgid "Subsystem = %x " @@ -6287,7 +6584,7 @@ msgstr "Неизвестно" #: peinfounit.rspeupsystemonly msgid "UP system only, " -msgstr "Только для одного процессора, " +msgstr "Только для однопроцессорной системы, " #: peinfounit.rspevirtualaddress msgid "Virtual Address=%x" @@ -6323,7 +6620,7 @@ msgstr "Ошибка включения «%s»" #: plugin.rserrorloadingonlydllfilesareallowed msgid "Error loading %s. Only DLL files are allowed" -msgstr "Произошла ошибка при загрузке «%s». Разрешены только DLL файлы" +msgstr "Произошла ошибка при загрузке «%s». Разрешены только dll файлы" #: plugin.rserrorloadingthedllismissingtheceplugin_getversione msgid "Error loading %s. The dll is missing the CEPlugin_GetVersion export" @@ -6393,11 +6690,11 @@ msgstr "хост:" #: pointerscanconnector.rsinvalidresponsefrom msgid "invalid response from " -msgstr "недопустимый ответ от " +msgstr "неверный ответ от " #: pointerscanconnector.rssomeoneforgottogivethisconnector msgid "Someone forgot to give this connector an OnConnected event..." -msgstr "Кто-то забыл дать этому соединителю событие OnConnected" +msgstr "Кто-то забыл дать этому соединителю событие OnConnected..." #: pointerscancontroller.rsallpathsreceived msgid "All paths received" @@ -6442,7 +6739,7 @@ msgstr " (Ошибка: " #: pointerscancontroller.rspscfailurecreatingsocket msgctxt "pointerscancontroller.rspscfailurecreatingsocket" msgid "Failure creating socket" -msgstr "Сбой при создании сокета" +msgstr "Не удалось создать сокет" #: pointerscancontroller.rspscfailuretobindport msgid "Failure to bind port " @@ -6510,11 +6807,11 @@ msgstr "Получены неверные данные сканирования. #: pointerscancontroller.rspscinvalidupdatestatusreplyreceived msgid "Invalid UpdateStatus reply received" -msgstr "Получен неправильный ответ от UpdateStatus" +msgstr "Получен неверный ответ о состоянии обновления" #: pointerscancontroller.rspscnewscanstartedwhilenotdone msgid "New scan started while not done" -msgstr "Началось новое сканирование, в то время как не закончилось предыдущее" +msgstr "Началось новое сканирование, в то время как предыдущее не закончилось" #: pointerscancontroller.rspscnoresumeptrfilereaderpresent msgid "no resume ptr file reader present" @@ -6530,7 +6827,7 @@ msgstr ":Спит" #: pointerscancontroller.rspscsuccesfullysentscandatatochild msgid "Succesfully sent scandata to child" -msgstr "Данный сканирования успешно отправлены потомку" +msgstr "Данные сканирования успешно отправлены потомку" #: pointerscancontroller.rspscterminated msgid ":Terminated" @@ -6538,11 +6835,11 @@ msgstr ":Завершённый" #: pointerscancontroller.rspscthechilddidntrespondtopsupdatereplycmdeverythingokasexpected msgid "The child didn't respond to PSUPDATEREPLYCMD_EVERYTHINGOK as expected" -msgstr "Потомок не отвечал на PSUPDATEREPLYCMD_EVERYTHINGOK как ожидалось" +msgstr "Потомок не ответил на PSUPDATEREPLYCMD_EVERYTHINGOK как ожидалось" #: pointerscancontroller.rspscthechildissendingmeresultsofadifferentscan msgid "The child is sending me results of a different scan" -msgstr "Потомок отправляет мне результаты разного сканирования" +msgstr "Потомок отправляет мне результаты другого сканирования" #: pointerscancontroller.rspscthechildtriedtosendanegativeamount msgid "The child tried to send a negative amount" @@ -6574,11 +6871,11 @@ msgstr "pointerlisthandler был испорчен по неизвестным #: pointerscancontroller.rspscthescanwasterminated msgid "The scan was terminated" -msgstr "Сканирование прервано" +msgstr "Сканирование было прервано" #: pointerscancontroller.rspsctheuploadwasterminated msgid "The upload was terminated" -msgstr "Отправка прервана" +msgstr "Отправка была прервана" #: pointerscancontroller.rspscworking msgid ":Working" @@ -6599,7 +6896,7 @@ msgstr "Активный" #: pointerscannerfrm.rsaddressspecifiersfoundinthewholeprocess msgid "Address specifiers found in the whole process" -msgstr "Адресов, найденных во всём процессе" +msgstr "Спецификаторов адреса, найденных во всём процессе" #: pointerscannerfrm.rsareyousureyouwishyouforceadisconnect msgid "Are you sure you wish you force a disconnect. The current paths will be lost" @@ -6647,12 +6944,13 @@ msgid "Looking for" msgstr "Ищу в" #: pointerscannerfrm.rsoffset +msgctxt "pointerscannerfrm.rsoffset" msgid "Offset" msgstr "Смещение" #: pointerscannerfrm.rsonlythefirst1000000entrieswillbedisplayed msgid "Only the first 1000000 entries will be displayed. Rescan will still work with all results. (This is normal for a pointerscan, you MUST do a few rescans)" -msgstr "В списке будет отображаться только первый 1.000.000 записей. Но «Отсев» будет работать со всеми найденными результатами (Это нормально для сканера указателей, вы должны выполнить «Отсев» несколько раз)" +msgstr "В списке будет отображаться только первый 1.000.000 записей. Но «Отсев» будет работать со всеми найденными результатами (Это нормально для сканера указателей, вы ДОЛЖНЫ выполнить несколько отсевов)" #: pointerscannerfrm.rsoutofdiskspacecleanupthediskorstop msgid "OUT OF DISKSPACE! Clean up the disk or stop" @@ -6673,7 +6971,7 @@ msgstr "Сканер указателей" #: pointerscannerfrm.rspointerscanresult msgid "pointerscan result" -msgstr "Указатель" +msgstr "указатель" #: pointerscannerfrm.rspointsto msgid "Points to" @@ -6709,7 +7007,7 @@ msgstr "Вы желаете возобновить текущее сканиро #: pointerscannerfrm.rspsdynamicqueusize msgid " Dynamic queue size:" -msgstr " Динамический размер очереди: " +msgstr " Динамический размер очереди:" #: pointerscannerfrm.rspsexportaborted msgid "Export aborted" @@ -6754,7 +7052,7 @@ msgstr " (Простаивающий)" #: pointerscannerfrm.rspsimporting msgid "Importing..." -msgstr "Импортирование..." +msgstr "Импорт..." #: pointerscannerfrm.rspsimporting_sortmethod msgid "Do you wish to use offsets sum for sorting?" @@ -6791,7 +7089,7 @@ msgstr "Родитель: <отключен> (Ожидание повторно #: pointerscannerfrm.rspsparentnone msgid "Parent: " -msgstr "Родитель: <не имеет>" +msgstr "Родитель: <нет>" #: pointerscannerfrm.rspspathsevaluated msgid "Paths evaluated: " @@ -6803,7 +7101,7 @@ msgstr "Цепочек в секунду: (%.0ц /с)" #: pointerscannerfrm.rspspscanguiupdatetimererror msgid "pscangui update timer error: " -msgstr "ошибка таймера обновления pscangui: " +msgstr "ошибка таймера обновления GUI сканера указателей: " #: pointerscannerfrm.rspsqueued msgid " (Queued: " @@ -6831,7 +7129,7 @@ msgstr " секунд назад" #: pointerscannerfrm.rspsstaticqueuesize msgid "Static queue size: " -msgstr "Статический размер очереди: " +msgstr "Статичный размер очереди: " #: pointerscannerfrm.rspsstatistics msgid "Statistics" @@ -6860,7 +7158,7 @@ msgstr "Время, потраченное на запись: " #: pointerscannerfrm.rspstotalpathsevaluater msgid "Total paths evaluated: " -msgstr "Всего цепочек определено: " +msgstr "Общее кол-во вычисленных путей: " #: pointerscannerfrm.rspstotalpathsseconds msgid "Total paths / seconds: (%.0n / s)" @@ -6905,6 +7203,7 @@ msgid "Terminating" msgstr "Завершение" #: pointerscannerfrm.rsthread +msgctxt "pointerscannerfrm.rsthread" msgid "Thread" msgstr "Поток" @@ -6980,7 +7279,7 @@ msgstr "Последнее смещение" #: pointerscannersettingsfrm.rslimitscantospecifiedregionfile msgctxt "pointerscannersettingsfrm.rslimitscantospecifiedregionfile" msgid "Limit scan to specified region file" -msgstr "Ограничить сканирование заданным файлом с регионами" +msgstr "Ограничить сканирование указанным файлом с регионами" #: pointerscannersettingsfrm.rslower msgctxt "pointerscannersettingsfrm.rslower" @@ -6992,6 +7291,14 @@ msgctxt "pointerscannersettingsfrm.rslowest" msgid "Lowest" msgstr "Низший" +#: pointerscannersettingsfrm.rsmaxdeviation +msgid "Max deviation" +msgstr "Максимальное отклонение" + +#: pointerscannersettingsfrm.rsmaxdeviationexplentation +msgid "The maximum offset size by which the ending offset can differ" +msgstr "Максимальный размер смещения, на который может отличаться конечное смещение" + #: pointerscannersettingsfrm.rsnocomparefiles msgid "If you do not use the compare results with other saved pointermap option you will get billions of useless results and giga/terrabytes of wasted diskspace and rescans will take hours if not days. Are you sure ?" msgstr "Если не используйте опцию «Сравнить результат с сохранённой картой указателей», вы получите миллиарды бесполезных результатов и гига/терабайты потраченного впустую дискового пространства, а отсев займёт часы, если не дни. Вы уверены?" @@ -7027,7 +7334,8 @@ msgctxt "pointerscannersettingsfrm.rstimecritical" msgid "TimeCritical" msgstr "Критичный по времени" -#: msgctxt "pointerscannersettingsfrm.rsto" +#: pointerscannersettingsfrm.rsto +msgctxt "pointerscannersettingsfrm.rsto" msgid "To" msgstr "До" @@ -7058,14 +7366,17 @@ msgid "Add" msgstr "Добавить" #: pointerscansettingsipconnectionlist.rspssiclhost +msgctxt "pointerscansettingsipconnectionlist.rspssiclhost" msgid "Host" msgstr "Хост" #: pointerscansettingsipconnectionlist.rspssiclpassword +msgctxt "pointerscansettingsipconnectionlist.rspssiclpassword" msgid "Password" msgstr "Пароль" #: pointerscansettingsipconnectionlist.rspssiclport +msgctxt "pointerscansettingsipconnectionlist.rspssiclport" msgid "Port" msgstr "Порт" @@ -7085,7 +7396,7 @@ msgstr "Выделение %s байт(а) в «буфер»" #: pointervaluelist.rsnomemoryfoundinthespecifiedregion msgctxt "pointervaluelist.rsnomemoryfoundinthespecifiedregion" msgid "No memory found in the specified region" -msgstr "В выбранном регионе память не найдена" +msgstr "В указанном регионе память не найдена" #: pointervaluelist.rspointervaluesetuperror msgid "Pointer value setup error" @@ -7130,6 +7441,7 @@ msgid "Enter the ProcessID" msgstr "Введите идентификатор процесса" #: processwindowunit.rsfilter +msgctxt "processwindowunit.rsfilter" msgid "Filter" msgstr "Фильтр" @@ -7166,6 +7478,7 @@ msgid "Processes" msgstr "Процессы" #: processwindowunit.rsprocesslist +msgctxt "processwindowunit.rsprocesslist" msgid "Process List" msgstr "Список процессов" @@ -7198,7 +7511,7 @@ msgstr "Копировать" #: savedisassemblyfrm.rscopydisassembledoutput msgid "Copy disassembled output" -msgstr "Копировать диапазон памяти" +msgstr "Копировать выходные данные дизассемблера" #: savedisassemblyfrm.rssave msgctxt "savedisassemblyfrm.rssave" @@ -7208,7 +7521,7 @@ msgstr "Сохранить" #: savedisassemblyfrm.rssavedisassembledoutput msgctxt "savedisassemblyfrm.rssavedisassembledoutput" msgid "Save disassembled output" -msgstr "Сохранить диапазон памяти" +msgstr "Сохранить выходные данные дизассемблера" #: savedisassemblyfrm.rsstopcopying msgid "Stop copying" @@ -7240,11 +7553,11 @@ msgstr "Файл данных с результатом первого скан #: speedhack2.rsfailureconfiguringspeedhackpart msgid "Failure configuring speedhack part" -msgstr "Сбой конфигурирующей части спидхака" +msgstr "Не удалось настроить фрагмент спидхака" #: speedhack2.rsfailureenablingspeedhackdllinjectionfailed msgid "Failure enabling speedhack. (DLL injection failed)" -msgstr "Сбой включения спидхака. (Не удалось выполнить инъекцию DLL)" +msgstr "Сбой при включении спидхака. (Не удалось внедрить dll)" #: speedhack2.rsfailuresettingspeed msgid "Failure setting speed" @@ -7322,7 +7635,7 @@ msgstr "Понятия не имею, что означает «%s»" #: structuresfrm.rslockmemory msgctxt "structuresfrm.rslockmemory" msgid "Lock memory" -msgstr "Заблокировать память" +msgstr "Фиксировать память" #: structuresfrm.rsmemorydissect msgctxt "structuresfrm.rsmemorydissect" @@ -7377,7 +7690,7 @@ msgstr "Определитель структуры" #: structuresfrm.rsstructureviewlock msgctxt "structuresfrm.rsstructureviewlock" msgid "Structure view lock" -msgstr "Заблокировать вид структуры" +msgstr "Фиксировать вид структуры" #: structuresfrm.rsthisisnotavalidstructurefile msgctxt "structuresfrm.rsthisisnotavalidstructurefile" @@ -7397,7 +7710,7 @@ msgstr "Неизвестное расширения файла" #: structuresfrm.rsunlockmemory msgctxt "structuresfrm.rsunlockmemory" msgid "Unlock memory" -msgstr "Разблокировать памяти" +msgstr "Снять фиксацию памяти" #: structuresfrm.rsunnamedstructure msgctxt "structuresfrm.rsunnamedstructure" @@ -7414,11 +7727,6 @@ msgctxt "structuresfrm.rswhichgroupdoyouwanttosetthisaddressto" msgid "Which group do you want to set this address to?" msgstr "В какую группу вы хотите определить этот адрес?" -#: structuresfrm.rswrongversion -msgctxt "structuresfrm.rswrongversion" -msgid "This structure file was generated with a newer version of Cheat Engine. (That means there's more than likely a new version so please update....)" -msgstr "Этот файл структуры был создан в более новой версии Cheat Engine. (Скорее всего это означает, что вышла новая версия. Обновитесь...)" - #: structuresfrm2.rs2bytewithvalue2 msgid "2 Byte: %s" msgstr "2 Байта: %s" @@ -7459,11 +7767,23 @@ msgstr "Изменить группу" msgid "Change Group" msgstr "Изменить группу" +#: structuresfrm2.rschanges +msgid "Changes" +msgstr "Изменения" + #: structuresfrm2.rscopy msgctxt "structuresfrm2.rscopy" msgid "Copy" msgstr "Копировать" +#: structuresfrm2.rscreatenewstructurefromchanged +msgid "Create new structure from changed" +msgstr "Создать новую структуру на основе изменённых" + +#: structuresfrm2.rscreatenewstructurefromunchanged +msgid "Create new structure from unchanged" +msgstr "Создать новую структуру на основе неизменённых" + #: structuresfrm2.rscut msgctxt "structuresfrm2.rscut" msgid "Cut" @@ -7489,7 +7809,7 @@ msgstr "Вы хотите, чтобы Cheat Engine заполнил основн #: structuresfrm2.rsfillintheoffsetyouwanttogoto msgid "Fill in the Offset you want to go to" -msgstr "Заполните поле «Смещение», на которое требуется перейти" +msgstr "Заполните смещение, на которое вы хотите перейти" #: structuresfrm2.rsfirstselectastructureyouwanttomodifyordefine msgctxt "structuresfrm2.rsfirstselectastructureyouwanttomodifyordefine" @@ -7517,6 +7837,7 @@ msgid "Give the new name of this structure" msgstr "Укажите новое название для этой структуры" #: structuresfrm2.rsgotooffset +msgctxt "structuresfrm2.rsgotooffset" msgid "Go to Offset" msgstr "Перейти к смещению" @@ -7541,18 +7862,22 @@ msgstr "Понятия не имею, что означает «%s»" #: structuresfrm2.rslock msgctxt "structuresfrm2.rslock" msgid "Lock" -msgstr "Заблокировать" +msgstr "Фиксировать" #: structuresfrm2.rslockmemory msgctxt "structuresfrm2.rslockmemory" msgid "Lock memory" -msgstr "Заблокировать память" +msgstr "Фиксировать память" #: structuresfrm2.rsmemorydissect msgctxt "structuresfrm2.rsmemorydissect" msgid "Memory dissect" msgstr "Анализ памяти" +#: structuresfrm2.rsnamethenewstructure +msgid "Name the new structure" +msgstr "Дайте название новой структуре" + #: structuresfrm2.rsnewinterval msgctxt "structuresfrm2.rsnewinterval" msgid "New interval" @@ -7583,6 +7908,11 @@ msgctxt "structuresfrm2.rspleasegivethesizeoftheblocktoevaluate" msgid "Please give the size of the block to evaluate" msgstr "Пожалуйста, укажите размер блока для вычисления" +#: structuresfrm2.rspointer +msgctxt "structuresfrm2.rspointer" +msgid "Pointer" +msgstr "Указатель" + #: structuresfrm2.rspointerto msgctxt "structuresfrm2.rspointerto" msgid "Pointer" @@ -7592,11 +7922,6 @@ msgstr "Указатель" msgid "Pointer to instance of %s" msgstr "Указатель на экземпляр %s" -#: structuresfrm2.rspointer -msgctxt "structuresfrm2.rspointer" -msgid "Pointer" -msgstr "Указатель" - #: structuresfrm2.rsrecalculatebaseofstructure msgctxt "structuresfrm2.rsrecalculatebaseofstructure" msgid "Recalculate base of structure" @@ -7715,7 +8040,7 @@ msgstr "Установить/изменить название" #: structuresfrm2.rssf2shadowcopyat msgid "Lock ( Shadowcopy at %s )" -msgstr "Заблокировать ( Теневая копия %s )" +msgstr "Фиксировать ( Теневая копия %s )" #: structuresfrm2.rssf2signed msgid " (Signed)" @@ -7757,9 +8082,17 @@ msgstr "Целое со знаком" msgid "Spider" msgstr "Структурный паук" +#: structuresfrm2.rsstopwatchforchanges +msgid "Stop watch for changes" +msgstr "Не следить за изменениями" + #: structuresfrm2.rsstructalreadyexists -msgid "The structure named %s already exists. Are you sure you want to make another structure with this name ?" -msgstr "Структура под названием «%s» уже существует. Вы уверены, что хотите создать ещё одну структуру с тем же названием?" +msgid "This is detected as structure named %s which already exists. Define a new version of this structure? (Click no to go to the existing one)" +msgstr "Обнаружена структура с именем %s, которая уже существует. Определить новую версию этой структуры? (Нажмите «Нет», чтобы перейти к существующей)" + +#: structuresfrm2.rsstructureaccessoutsidemainthread +msgid "Structure access outside of main thread is not allowed. Synchronize first" +msgstr "Доступ к структуре вне основного потока запрещён. Сначала выполните синхронизацию" #: structuresfrm2.rsstructuredefine msgctxt "structuresfrm2.rsstructuredefine" @@ -7775,10 +8108,18 @@ msgstr "Определитель структуры" msgid "Structure dissect" msgstr "Анализ структуры" +#: structuresfrm2.rsstructurename +msgid "Structure name" +msgstr "Название структуры" + #: structuresfrm2.rsstructureviewlock msgctxt "structuresfrm2.rsstructureviewlock" msgid "Structure view lock" -msgstr "Заблокировать вид структуры" +msgstr "Фиксировать вид структуры" + +#: structuresfrm2.rsthestructuregotchanged +msgid "The structure got changed. Aborting" +msgstr "Структура изменилась. Прерывание" #: structuresfrm2.rsthisisnotavalidstructurefile msgctxt "structuresfrm2.rsthisisnotavalidstructurefile" @@ -7790,6 +8131,10 @@ msgctxt "structuresfrm2.rsthisisquiteabigstructurehowmanybytesdoyouwanttosav" msgid "This is quite a big structure. How many bytes do you want to save?" msgstr "Это довольно большая структура. Сколько байт вы хотите сохранить?" +#: structuresfrm2.rsunchanged +msgid "Unchanged" +msgstr "Неизменён" + #: structuresfrm2.rsundefined msgid "undefined" msgstr "неопределенная" @@ -7807,7 +8152,7 @@ msgstr "Неизвестное расширения файла" #: structuresfrm2.rsunlockmemory msgctxt "structuresfrm2.rsunlockmemory" msgid "Unlock memory" -msgstr "Разблокировать память" +msgstr "Снять фиксацию памяти" #: structuresfrm2.rsunnamedstructure msgctxt "structuresfrm2.rsunnamedstructure" @@ -7831,6 +8176,14 @@ msgstr "Обновить дочернюю структуру до полной msgid "It's not recommended to run the structure compare with just one address in a group" msgstr "Не рекомендуется запускать сравнение структуры только с одним адресом в группе" +#: structuresfrm2.rswasoldvalue +msgid "(was %s)" +msgstr "(был %s)" + +#: structuresfrm2.rswatchforchanges +msgid "Watch for changes" +msgstr "Следить за изменениями" + #: structuresfrm2.rswhichgroupdoyouwanttosetthisaddressto msgctxt "structuresfrm2.rswhichgroupdoyouwanttosetthisaddressto" msgid "Which group do you want to set this address to?" @@ -7871,7 +8224,7 @@ msgstr "Произошёл сбой Symbolloaderthread" #: symbolhandler.rsthesymbolnamedwaspreviouslydeclared msgid "The symbol named %s was previously declared with a size of %s instead of %s. all scripts that use this memory must give the same size. Adjust the size, or delete the old alloc from the userdefined symbol list" -msgstr "Символ под именем «%s» был ранее объявлен с размером %s вместо %s. Всем скриптам, использующим эту память, нужно предоставить тот же размер. Скорректируйте размер или удалите старый «alloc» из списка определяемых пользователем символов" +msgstr "Символ под именем «%s» был ранее объявлен с размером %s вместо %s. Всем скриптам, использующим эту память, нужно предоставить тот же размер. Скорректируйте размер или удалите старый «alloc» из списка пользовательских символов" #: symbolhandler.rsyoucantaddasymbolwithaddress0 msgid "You can't add a symbol with address 0" @@ -7882,8 +8235,8 @@ msgid "You can't change this setting at the moment" msgstr "В данный момент вы не можете изменить эти настройки" #: tableconverter.rstoooldtable -msgid "This table is too old to be used. Get Cheat engine 5.6 and open/resave this table" -msgstr "Эта таблица слишком старая, чтобы использовать её в этой версии программы. Установите Cheat Engine 5.6, откройте/пересохраните эту таблицу" +msgid "This table is too old to be used. Get Cheat Engine 5.6 and open/resave this table" +msgstr "Эта таблица слишком старая, чтобы использовать её в этой версии программы. Установите Cheat Engine 5.6 и откройте/пересохраните эту таблицу" #: tabout.button1.caption msgctxt "tabout.button1.caption" @@ -7891,16 +8244,16 @@ msgid "OK" msgstr "Подтвердить" #: tabout.button2.caption -msgid "Donate" -msgstr "Пожертвовать" +msgid "Patreon" +msgstr "Patreon" #: tabout.button2.hint -msgid "If you like Cheat Engine and want to contribute something to the development, just send a donation using Paypal." -msgstr "Если вам понравился Cheat Engine и вы хотите внести вклад в его развитие, просто отправьте пожертвование, используя PayPal." +msgid "If you like Cheat Engine and want to contribute something to the development, join CE's Patreon" +msgstr "Если вам понравился Cheat Engine и вы хотите внести вклад в его развитие, присоединитесь к Патронам Cheat Engine" #: tabout.caption msgid "About Cheat Engine" -msgstr "О программе" +msgstr "О Cheat Engine" #: tabout.label1.caption msgid "Made by: Dark Byte" @@ -7908,20 +8261,20 @@ msgstr "Автор: Dark Byte" #: tabout.label10.caption msgid "Script engine powered by Lua" -msgstr "Скриптовый движок основан на Lua" +msgstr "Скриптовый движок на основе Lua" #: tabout.label2.caption -msgid "Thanks to:" -msgstr "Благодарность:" - -#: tabout.label4.caption -msgid "Patreon" -msgstr "Патреон" +msgid "Special thanks to:" +msgstr "Особая благодарность:" #: tabout.label5.caption msgid "And all the other people that helped me out" msgstr "И всем остальным, кто помогал" +#: tabout.label6.caption +msgid "C Compiler by Tiny C-Compiler" +msgstr "Компилятор Си от Tiny C-Compiler" + #: tabout.label8.caption msgid "Website" msgstr "Веб-сайт" @@ -7932,25 +8285,26 @@ msgstr "Форум" #: tabout.lbldbvm.caption msgid "your system may or may not support dbvm" -msgstr "ваша система может поддерживать DBVM, а может и нет" +msgstr "ваша система может или не может поддерживать DBVM" #: tadvancedoptions.button1.caption +msgctxt "tadvancedoptions.button1.caption" msgid "OK" msgstr "Подтвердить" -#: tadvancedoptions.button2.caption -msgid "Button2" -msgstr "Кнопка2" - -#: tadvancedoptions.button3.caption -msgid "Button3" -msgstr "Кнопка3" - #: tadvancedoptions.caption -msgctxt "tadvancedoptions.caption" msgid "Code list/Pause" msgstr "Список кодов/Пауза" +#: tadvancedoptions.findoutwhatthiscodechanges1.caption +msgctxt "tadvancedoptions.findoutwhatthiscodechanges1.caption" +msgid "Find out what addresses this code writes to" +msgstr "Выяснить, по каким адресам записывает этот код" + +#: tadvancedoptions.label1.caption +msgid "Code list:" +msgstr "Список кодов:" + #: tadvancedoptions.lvcodelist.columns[0].caption msgctxt "tadvancedoptions.lvcodelist.columns[0].caption" msgid "Address" @@ -7961,14 +8315,10 @@ msgctxt "tadvancedoptions.lvcodelist.columns[1].caption" msgid "Name" msgstr "Название" -#: tadvancedoptions.findoutwhatthiscodechanges1.caption -msgctxt "tadvancedoptions.findoutwhatthiscodechanges1.caption" -msgid "Find out what addresses this code writes to" -msgstr "Найти адреса, по которым записывает эта инструкция" - -#: tadvancedoptions.label1.caption -msgid "Code list:" -msgstr "Список кодов:" +#: tadvancedoptions.micopytoclipboard.caption +msgctxt "tadvancedoptions.micopytoclipboard.caption" +msgid "Copy address to clipboard" +msgstr "Копировать адрес в буфер обмена" #: tadvancedoptions.midbvmfindwhatcodeaccesses.caption msgid "DBVM Find...." @@ -8004,7 +8354,7 @@ msgstr "Открыть дизассемблер в этом месте" #: tadvancedoptions.pausebutton.hint msgctxt "tadvancedoptions.pausebutton.hint" msgid "Pause the game" -msgstr "Остановить процесс игры" +msgstr "Приостановить процесс игры" #: tadvancedoptions.remove1.caption msgid "Remove from list" @@ -8017,7 +8367,7 @@ msgstr "Переименовать" #: tadvancedoptions.replaceall1.caption msgid "Replace all" -msgstr "Заменить NOP'ами все инструкции в списке" +msgstr "Заменить на NOP все инструкции в списке" #: tadvancedoptions.savebutton.hint msgid "Create a standalone trainer" @@ -8028,13 +8378,12 @@ msgctxt "tcalloralldialog.button1.caption" msgid "All" msgstr "Все" -#: tcalloralldialog.button1.caption tcalloralldialog.button2.caption -msgctxt "TCALLORALLDIALOG.BUTTON1.CAPTION" +#: tcalloralldialog.button2.caption msgid "Call's only" msgstr "Только вызовы" #: tcalloralldialog.button3.caption -msgctxt "TCALLORALLDIALOG.BUTTON3.CAPTION" +msgctxt "tcalloralldialog.button3.caption" msgid "Cancel" msgstr "Отмена" @@ -8048,7 +8397,7 @@ msgid "Load all instructions into the list or just the CALL's ?" msgstr "Загрузить все инструкции в список или только вызовы?" #: tchangeoffset.cancel.caption -msgctxt "TCHANGEOFFSET.CANCEL.CAPTION" +msgctxt "tchangeoffset.cancel.caption" msgid "Cancel" msgstr "Отмена" @@ -8065,33 +8414,28 @@ msgstr "Шестнадцатеричный" msgid "Change" msgstr "Изменить" -#: tcomments.button1.caption -msgctxt "tcomments.button1.caption" -msgid "Close" -msgstr "Закрыть" - #: tcomments.caption msgctxt "tcomments.caption" msgid "Comments" msgstr "Комментарии" #: tcomments.tscomment.caption -msgctxt "TCOMMENTS.TSCOMMENT.CAPTION" +msgctxt "tcomments.tscomment.caption" msgid "Comments" msgstr "Комментарии" #: tfindwindow.btncancel.caption -msgctxt "TFINDWINDOW.BTNCANCEL.CAPTION" +msgctxt "tfindwindow.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tfindwindow.btnok.caption -msgctxt "TFINDWINDOW.BTNOK.CAPTION" +msgctxt "tfindwindow.btnok.caption" msgid "OK" msgstr "Подтвердить" #: tfindwindow.caption -msgctxt "TFINDWINDOW.CAPTION" +msgctxt "tfindwindow.caption" msgid "Find" msgstr "Поиск" @@ -8112,7 +8456,7 @@ msgstr "До" #: tfindwindow.labelarray.caption msgid "Array to scan" -msgstr "Диапазон поиска" +msgstr "Сканируемый массив" #: tfindwindow.labeltype.caption msgid "Type:" @@ -8123,27 +8467,21 @@ msgid "(Array of) byte" msgstr "(Массив) байт" #: tfindwindow.rbtext.caption -msgctxt "TFINDWINDOW.RBTEXT.CAPTION" +msgctxt "tfindwindow.rbtext.caption" msgid "Text" msgstr "Текст" -#: tform1.label1.caption -msgctxt "TFORM1.LABEL1.CAPTION" -msgid "Filter" -msgstr "Фильтр" - #: tformaddresschange.btncancel.caption -msgctxt "TFORMADDRESSCHANGE.BTNCANCEL.CAPTION" +msgctxt "tformaddresschange.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tformaddresschange.btnok.caption -msgctxt "TFORMADDRESSCHANGE.BTNOK.CAPTION" +msgctxt "tformaddresschange.btnok.caption" msgid "OK" msgstr "Подтвердить" #: tformaddresschange.caption -msgctxt "tformaddresschange.caption" msgid "Change address" msgstr "Изменить адрес" @@ -8155,7 +8493,7 @@ msgstr "Кодовая страница" #: tformaddresschange.cbhex.caption msgctxt "tformaddresschange.cbhex.caption" msgid "Hexadecimal" -msgstr "Шестнадцатиричное" +msgstr "Шестнадцатеричное" #: tformaddresschange.cbpointer.caption msgctxt "tformaddresschange.cbpointer.caption" @@ -8168,7 +8506,7 @@ msgid "Signed" msgstr "Знаковое" #: tformaddresschange.cbunicode.caption -msgctxt "TFORMADDRESSCHANGE.CBUNICODE.CAPTION" +msgctxt "tformaddresschange.cbunicode.caption" msgid "Unicode" msgstr "Юникод" @@ -8206,7 +8544,7 @@ msgid "Length" msgstr "Длина" #: tformaddresschange.miaddaddresstolist.caption -msgctxt "TFORMADDRESSCHANGE.MIADDADDRESSTOLIST.CAPTION" +msgctxt "tformaddresschange.miaddaddresstolist.caption" msgid "Add this address to the list" msgstr "Добавить этот адрес в таблицу" @@ -8219,21 +8557,31 @@ msgid "Add Offset Below" msgstr "Добавить смещение ниже" #: tformaddresschange.micopy.caption -msgctxt "TFORMADDRESSCHANGE.MICOPY.CAPTION" +msgctxt "tformaddresschange.micopy.caption" msgid "Copy" msgstr "Копировать" #: tformaddresschange.micopyaddresstoclipboard.caption +msgctxt "tformaddresschange.micopyaddresstoclipboard.caption" msgid "Copy this address to Clipboard" -msgstr "Скопировать этот адрес в буфер обмена" +msgstr "Копировать этот адрес в буфер обмена" + +#: tformaddresschange.micopyfinaladdresstoclipboard.caption +msgctxt "tformaddresschange.micopyfinaladdresstoclipboard.caption" +msgid "Copy this address to Clipboard" +msgstr "Копировать этот адрес в буфер обмена" + +#: tformaddresschange.micopyvaluetoclipboard.caption +msgid "Copy this value to Clipboard" +msgstr "Копировать это значение в буфер обмена" #: tformaddresschange.micut.caption -msgctxt "TFORMADDRESSCHANGE.MICUT.CAPTION" +msgctxt "tformaddresschange.micut.caption" msgid "Cut" msgstr "Вырезать" #: tformaddresschange.mipaste.caption -msgctxt "TFORMADDRESSCHANGE.MIPASTE.CAPTION" +msgctxt "tformaddresschange.mipaste.caption" msgid "Paste" msgstr "Вставить" @@ -8248,10 +8596,10 @@ msgstr "Обновлять смещение только через опреде #: tformaddresschange.miupdateonreinterpretonly.caption msgid "Only update the offset when the memory record gets reinterpreted" -msgstr "Обновлять смещение только после выполнения записи в памяти" +msgstr "Обновлять смещение только когда запись в памяти будет повторно интерпретирована" #: tformdebugstrings.button1.caption -msgctxt "TFORMDEBUGSTRINGS.BUTTON1.CAPTION" +msgctxt "tformdebugstrings.button1.caption" msgid "OK" msgstr "Подтвердить" @@ -8282,6 +8630,11 @@ msgstr "Флажок" msgid "ComboBox" msgstr "Выпадающий список" +#: tformdesigner.cecustombutton.hint +msgctxt "tformdesigner.cecustombutton.hint" +msgid "CECustomButton" +msgstr "Пользовательская кнопка" + #: tformdesigner.ceedit.hint msgctxt "tformdesigner.ceedit.hint" msgid "Edit" @@ -8367,7 +8720,7 @@ msgid "FindDialog" msgstr "Диалог поиска текста" #: tformdesigner.mainmenu.hint -msgctxt "TFORMDESIGNER.MAINMENU.HINT" +msgctxt "tformdesigner.mainmenu.hint" msgid "MainMenu" msgstr "Главное меню" @@ -8407,7 +8760,7 @@ msgid "Bring to front" msgstr "Перенести на передний план" #: tformdesigner.midelete.caption -msgctxt "TFORMDESIGNER.MIDELETE.CAPTION" +msgctxt "tformdesigner.midelete.caption" msgid "Delete" msgstr "Удалить" @@ -8454,7 +8807,7 @@ msgid "PaintBox" msgstr "Полотно для рисования" #: tformdesigner.popupmenu.hint -msgctxt "TFORMDESIGNER.POPUPMENU.HINT" +msgctxt "tformdesigner.popupmenu.hint" msgid "PopupMenu" msgstr "Всплывающее меню" @@ -8474,24 +8827,24 @@ msgid "SelectDirectoryDialog" msgstr "Диалог выбора директории" #: tformdifferentbitsize.button1.caption -msgctxt "TFORMDIFFERENTBITSIZE.BUTTON1.CAPTION" +msgctxt "tformdifferentbitsize.button1.caption" msgid "OK" msgstr "Подтвердить" #: tformdifferentbitsize.caption msgid "Different sized row of bits" -msgstr "Строка битов разного размера" +msgstr "Битовые строки разного размера" #: tformdifferentbitsize.label1.caption msgid "The last time you scanned the number of bits was 90 and now it is 12. Please tell me how and how much i must change the bit offset to successfully scan. (Left arrow+right arrow move the bits)" -msgstr "При последнем сканировании число бит равнялось 90, а сейчас 12. Укажите на сколько нужно изменить разрядное смещение для успешного сканирования. (Используйте клавиши «Left» и «Right»)" +msgstr "При последнем сканировании число бит равнялось 90, а сейчас 12. Пожалуйста, скажите мне, как и насколько я должен изменить смещение бита для успешного сканирования. (Клавиши «Left» и «Right» сдвигают биты)" #: tformdifferentbitsize.ohnoyoufoundme1.caption msgid "Oh no! You found me!!!" msgstr "О нет! Вы нашли меня!!!" #: tformfoundcodelistextra.button1.caption -msgctxt "TFORMFOUNDCODELISTEXTRA.BUTTON1.CAPTION" +msgctxt "tformfoundcodelistextra.button1.caption" msgid "OK" msgstr "Подтвердить" @@ -8529,6 +8882,15 @@ msgctxt "tformfoundcodelistextra.sbshowfloats.hint" msgid "Floating point registers" msgstr "Регистры с плавающей точкой" +#: tformfoundcodelistextra.sbshowipt.caption +msgid "IPT" +msgstr "IPT" + +#: tformfoundcodelistextra.sbshowipt.hint +msgctxt "tformfoundcodelistextra.sbshowipt.hint" +msgid "Stack view" +msgstr "Просмотр стека" + #: tformfoundcodelistextra.sbshowstack.caption msgctxt "tformfoundcodelistextra.sbshowstack.caption" msgid "S" @@ -8540,12 +8902,12 @@ msgid "Stack view" msgstr "Просмотр стека" #: tformhotkey.button1.caption -msgctxt "TFORMHOTKEY.BUTTON1.CAPTION" +msgctxt "tformhotkey.button1.caption" msgid "OK" msgstr "Подтвердить" #: tformhotkey.button2.caption -msgctxt "TFORMHOTKEY.BUTTON2.CAPTION" +msgctxt "tformhotkey.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -8558,7 +8920,7 @@ msgid "Press the new hotkey combination in below:" msgstr "Нажмите новую комбинацию клавиш:" #: tformmemoryregions.button1.caption -msgctxt "TFORMMEMORYREGIONS.BUTTON1.CAPTION" +msgctxt "tformmemoryregions.button1.caption" msgid "OK" msgstr "Подтвердить" @@ -8568,7 +8930,7 @@ msgid "Memory regions" msgstr "Регионы памяти" #: tformmemoryregions.listview1.columns[0].caption -msgctxt "TFORMMEMORYREGIONS.LISTVIEW1.COLUMNS[0].CAPTION" +msgctxt "tformmemoryregions.listview1.columns[0].caption" msgid "Address" msgstr "Адрес" @@ -8586,7 +8948,7 @@ msgid "Protect" msgstr "Защита доступа" #: tformmemoryregions.listview1.columns[4].caption -msgctxt "TFORMMEMORYREGIONS.LISTVIEW1.COLUMNS[4].CAPTION" +msgctxt "tformmemoryregions.listview1.columns[4].caption" msgid "Type" msgstr "Тип" @@ -8602,7 +8964,7 @@ msgstr "Дополнительно" #: tformmemoryregions.savedialog1.title msgid "Give the basename of the regions to be saved. (Can be a CT file)" -msgstr "Задайте базовое название регионам, чтобы сохранить. (Может быть .CT файлом)" +msgstr "Укажите базовое название сохраняемым регионам. (Может быть .CT файлом)" #: tformmemoryregions.saveselectedregions1.caption msgid "Save selected regions" @@ -8618,15 +8980,15 @@ msgstr "Установить выбранным регионам права на #: tformmemoryregions.statusbar1.panels[0].text msgid "Hold ctrl when opening this window to also see kernelmode regions" -msgstr "Зажмите Ctrl при открытии этого окна, чтобы видеть регионы режима ядра" +msgstr "Зажмите Ctrl при открытии этого окна, чтобы также видеть регионы режима ядра" -#: tformpointerorpointee.button1.caption -msgid "Find what writes to this pointer" -msgstr "Найти инструкции, записывающие по этому указателю" - -#: tformpointerorpointee.button2.caption +#: tformpointerorpointee.btnfindwhatwritespointee.caption msgid "Find what writes to the address pointed at by this pointer" -msgstr "Найти инструкции, записывающие по указываемому адресу" +msgstr "Выяснить, что записывает по адресу, на который указывает этот указатель" + +#: tformpointerorpointee.btnfindwhatwritespointer.caption +msgid "Find what writes to this pointer" +msgstr "Выяснить, что записывает по этому указателю" #: tformpointerorpointee.caption msgid "Cheat Engine Pointer" @@ -8636,17 +8998,13 @@ msgstr "Указатель" msgid "This is a pointer." msgstr "Это указатель." -#: tformscanning.caption -msgid "Scanning..." -msgstr "Сканирование..." - #: tformsettings.aboutlabel.caption msgid "About CE" -msgstr "О программе" +msgstr "О Cheat Engine" #: tformsettings.askforreplacewithnops.caption msgid "Ask for replace with nop" -msgstr "Спрашивать перед заменой NOP'ами" +msgstr "Спрашивать перед заменой на NOP" #: tformsettings.assembler.caption msgctxt "tformsettings.assembler.caption" @@ -8654,20 +9012,16 @@ msgid "Debugger Options" msgstr "Параметры отладчика" #: tformsettings.btncancel.caption -msgctxt "TFORMSETTINGS.BTNCANCEL.CAPTION" +msgctxt "tformsettings.btncancel.caption" msgid "Cancel" msgstr "Отмена" -#: tformsettings.btnexcludeprocesses.caption -msgid "More..." -msgstr "Подробнее..." - #: tformsettings.btnmakekerneldebugpossible.caption msgid "Make possible" msgstr "Сделать возможным" #: tformsettings.btnok.caption -msgctxt "TFORMSETTINGS.BTNOK.CAPTION" +msgctxt "tformsettings.btnok.caption" msgid "OK" msgstr "Подтвердить" @@ -8689,7 +9043,7 @@ msgid "Set shortcut" msgstr "Задать" #: tformsettings.btntooldelete.caption -msgctxt "TFORMSETTINGS.BTNTOOLDELETE.CAPTION" +msgctxt "tformsettings.btntooldelete.caption" msgid "Delete" msgstr "Удалить" @@ -8703,7 +9057,7 @@ msgid "Add new" msgstr "Добавить новый" #: tformsettings.button5.caption -msgctxt "TFORMSETTINGS.BUTTON5.CAPTION" +msgctxt "tformsettings.button5.caption" msgid "Delete" msgstr "Удалить" @@ -8711,26 +9065,124 @@ msgstr "Удалить" msgid "Cheat Engine settings" msgstr "Настройки Cheat Engine" +#: tformsettings.cballbyte.caption +msgctxt "tformsettings.cballbyte.caption" +msgid "Byte" +msgstr "Байт" + +#: tformsettings.cballcustom.caption +msgctxt "tformsettings.cballcustom.caption" +msgid "All Custom Types" +msgstr "Все пользовательские типы" + +#: tformsettings.cballdouble.caption +msgctxt "tformsettings.cballdouble.caption" +msgid "Double" +msgstr "Double" + +#: tformsettings.cballdword.caption +msgctxt "tformsettings.cballdword.caption" +msgid "4 Bytes" +msgstr "4 Байта" + #: tformsettings.cballocsaddtowatchedregions.caption -msgctxt "TFORMSETTINGS.CBALLOCSADDTOWATCHEDREGIONS.CAPTION" +msgctxt "tformsettings.cballocsaddtowatchedregions.caption" msgid "Automatically add allocated memory by CE as watched regions" msgstr "Автоматически добавлять выделенную Cheat Engine'ом память в качестве наблюдаемого региона" +#: tformsettings.cballqword.caption +msgctxt "tformsettings.cballqword.caption" +msgid "8 Bytes" +msgstr "8 Байт" + +#: tformsettings.cballsingle.caption +msgctxt "tformsettings.cballsingle.caption" +msgid "Float" +msgstr "Float" + +#: tformsettings.cballword.caption +msgctxt "tformsettings.cballword.caption" +msgid "2 Bytes" +msgstr "2 Байта" + #: tformsettings.cbalwaysaskforpassword.caption msgid "Always ask for password when signing" msgstr "Всегда спрашивать пароль при подписании" +#: tformsettings.cbalwaysattempttolaunchasadmin.caption +msgid "Always attempt to launch as admin" +msgstr "Всегда пытаться запустить от имени администратора" + #: tformsettings.cbalwaysautoattach.caption msgid "Even autoattach when another process has already been selected" msgstr "Автоматически присоединяться, даже если был выбран другой процесс" +#: tformsettings.cbalwaysforceload.caption +msgid "Always force load modules" +msgstr "Принудительная загрузка модулей" + +#: tformsettings.cbalwaysforceload.hint +msgid "" +"When enabled CE's internal injectDLL routine will not use loadlibrary in the target at all and always use manual mapping to load the dll\n" +"(When disabled CE will still use manual mapping when normal dll injection fails)" +msgstr "" +"Если включено, то внутренняя процедура внедрения dll не будет использовать библиотеку загрузки, а всегда будет использовать ручное сопоставление для загрузки dll\n" +"(Если выключено, то Cheat Engine будет по-прежнему использовать ручной маппинг при сбое обычного внедрения dll)" + +#: tformsettings.cbalwayssigntable.caption +msgid "Always sign Cheat Tables when saving" +msgstr "Всегда подписывать чит таблицы при сохранении" + +#: tformsettings.cbasktoattachtorosetta.caption +msgid "Ask to attach" +msgstr "Спрашивать при присоединении" + +#: tformsettings.cbasktoclearlistonopen.caption +msgid "Ask to clear list on opening new process" +msgstr "Просить очистить список при открытии нового процесса" + +#: tformsettings.cbasktoclearlistonopen.hint +msgid "When unchecked CE will not clear the list when opening a process" +msgstr "Если флажок снят, Cheat Engine не будет очищать список при открытии процесса" + +#: tformsettings.cbattachdebuggertorosettaonprocessopen.caption +msgid "Attach debugger to Rosetta targets when opening a process" +msgstr "Подключение отладчика к целям Rosetta при открытии процесса" + #: tformsettings.cbcanstepkernelcode.caption msgid "Ability to step through kernel code" msgstr "Возможность пошагового выполнения кода ядра" -#: tformsettings.cbcenteronpopup.caption -msgid "Center Cheat Engine when bringing to front" -msgstr "Центрировать Cheat Engine при переносе на передний план" +#: tformsettings.cbclearsymbolsonprocessopen.caption +msgctxt "tformsettings.cbclearsymbolsonprocessopen.caption" +msgid "Clear all symbols when a new process is opened" +msgstr "Очистить все символы при открытии нового процесса" + +#: tformsettings.cbdbvmdebugkernelmodebreaks.caption +msgid "Kernelmode breaks (when possible)" +msgstr "Прерывания в режиме ядра (по возможности)" + +#: tformsettings.cbdbvmdebugtargetedprocessonly.caption +msgid "Targeted process only" +msgstr "Только выбранный процесс" + +#: tformsettings.cbdbvmdebugtriggercow.caption +msgid "Trigger copy-on-write before activating watches" +msgstr "Инициировать «копирование при записи» до активации наблюдателя" + +#: tformsettings.cbdisabledarkmodesupport.caption +msgid "Disable Dark Mode support (Requires a restart)" +msgstr "Отключить поддержку Тёмного Режима (Требуется перезапуск)" + +#: tformsettings.cbdontdeletesymbols.caption +msgctxt "tformsettings.cbdontdeletesymbols.caption" +msgid "Don't delete symbols when synchronizing" +msgstr "Не удалять символы при синхронизации" + +#: tformsettings.cbdontdeletesymbols.hint +msgctxt "tformsettings.cbdontdeletesymbols.hint" +msgid "When synchronizing and another CE instance has updated the symbols of the current process, only load new symbols, don't delete symbols that got removed" +msgstr "При синхронизации и обновлении символов текущего процесса другим экземпляром Cheat Engine, загружаются только новые символы" #: tformsettings.cbdontopenhandle.caption msgid "Do not try to obtain handles" @@ -8748,17 +9200,39 @@ msgstr "Учитывать DPI (Требуется перезапуск)" msgid "Fast scan on by default" msgstr "Быстрый поиск по умолчанию" +#: tformsettings.cbgdbwritecode.caption +msgid "Use GDB to write code" +msgstr "Использовать GDB для записи кода" + +#: tformsettings.cbgdbwritecode.hint +msgctxt "tformsettings.cbgdbwritecode.hint" +msgid "Use this in case the target JIT's code to native code" +msgstr "Используйте это в случае преобразования JIT кода цели в машинный код" + +#: tformsettings.cbgdbwritecode2.caption +msgid "Use debugserver to write code" +msgstr "Использовать debugserver для записи кода" + +#: tformsettings.cbgdbwritecode2.hint +msgctxt "tformsettings.cbgdbwritecode2.hint" +msgid "Use this in case the target JIT's code to native code" +msgstr "Используйте это в случае преобразования JIT кода цели в машинный код" + #: tformsettings.cbglobaldebug.caption msgid "Use Global Debug routines" msgstr "Использовать процедуры глобальной отладки" #: tformsettings.cbhandlebreakpoints.caption msgid "Handle beakpoints not caused by CE" -msgstr "Обрабатывать брейкпоинты, вызванными не Cheat Engine" +msgstr "Обрабатывать брейкпоинты, не вызванных Cheat Engine'ом" -#: tformsettings.cbhideallwindows.caption -msgid "Hide some/all windows instead of trying to bring cheat engine to front" -msgstr "Скрывать некоторые/все окна вместо попытки перенести Cheat Engine на передний план" +#: tformsettings.cbhideiptcapability.caption +msgid "Hide IPT features from GUI" +msgstr "Скрыть функции IPT из графического интерфейса" + +#: tformsettings.cbhideiptcapability.hint +msgid "In case you really do not wish to be reminded of this" +msgstr "В случае, если вы действительно не хотите, чтобы вам напомнили об этом" #: tformsettings.cbincremental.caption msgid "Incremental value" @@ -8766,11 +9240,15 @@ msgstr "Инкрементное значение" #: tformsettings.cbinjectdllwithapc.caption msgid "Use APC to inject dll's" -msgstr "Использовать асинхронный вызов процедуры для инъекции dll" +msgstr "Использовать асинхронный вызов процедуры для внедрения dll" + +#: tformsettings.cbipttracesize.text +msgid "8KB" +msgstr "8КБ" #: tformsettings.cbkdebug.caption -msgid "Use kernelmode debugger" -msgstr "Использовать отладчик режима ядра" +msgid "Kernelmode debugger" +msgstr "Отладчик режима ядра" #: tformsettings.cbkernelopenprocess.caption msgctxt "tformsettings.cbkernelopenprocess.caption" @@ -8783,7 +9261,15 @@ msgstr "Процедуры обращения к региону памяти" #: tformsettings.cbkernelreadwriteprocessmemory.caption msgid "Read/Write Process Memory (Will cause slower scans)" -msgstr "Чтение/Запись Памяти Процесса (может снизить скорость поиска)" +msgstr "Чтение/Запись памяти процесса (может снизить скорость поиска)" + +#: tformsettings.cblaunchgdbserver.caption +msgid "On debugstart launch gdbserver and connect to localhost on the given port" +msgstr "Вначале запустить gdbserver и подключиться к localhost по указанному порту" + +#: tformsettings.cblaunchgdbserver.hint +msgid "When the debugger starts instead of asking for an HOST/PORT just launch a gdbserver instance yourself and connect to that" +msgstr "При запуске отладчика, вместо запроса HOST/PORT, запускает экземпляр gdbserver и подключается к нему" #: tformsettings.cbluagarbagecollectall.caption msgid "Collect all garbage every few seconds" @@ -8799,7 +9285,7 @@ msgstr "Пассивная сборка мусора" #: tformsettings.cbluapassivegarbagecollection.hint msgid "Constantly runs a few steps of the garbage collector sequence. (Will take a while till all garbage is cleaned if there is a lot)" -msgstr "Постоянное выполнение нескольких шагов последовательности сборщика мусора. (Займёт некоторое время, пока весь мусор не будет очищен, если его много)" +msgstr "Постоянно выполняет несколько шагов последовательности сборщика мусора. (Займёт некоторое время, пока весь мусор не будет очищен, если его много)" #: tformsettings.cbmemimage.caption msgid "MEM_IMAGE:Memory that is mapped into the view of an image section" @@ -8813,29 +9299,13 @@ msgstr "MEM_MAPPED: Страницы памяти в пределах регио msgid "MEM_PRIVATE:Memory that is private." msgstr "MEM_PRIVATE: Страницы памяти в пределах частного региона." -#: tformsettings.cbneverchangeprotection.hint -msgid "When enabled CE will never call \"VirtualProtectEx\" before it changes memory. This means that read-only memory can not be changed then. (code is usually read only)" -msgstr "Если включено, то Cheat Engine никогда не будет вызывать «VirtualProtectEx» перед изменением памяти. В этом случае постоянная память не может быть изменена." - #: tformsettings.cbneverchangeprotection.caption msgid "Never change memory protection when editing" msgstr "Никогда не изменять защиту памяти при редактировании" -#: tformsettings.cbalwaysforceload.caption -msgid "Always force load modules" -msgstr "Принудительная загрузка модулей" - -#: tformsettings.cbalwaysforceload.hint -msgid "" -"When enabled CE's internal injectDLL routine will not use loadlibrary in the target at all and always use manual mapping to load the dll\n" -"(When disabled CE will still use manual mapping when normal dll injection fails)" -msgstr "" -"Если включено, то внутренняя процедура внедрения dll не будет использовать библиотеку загрузки, а всегда будет использовать ручной маппинг для загрузки dll\n" -"(Если выключено, то Cheat Engine будет по-прежнему использовать ручной маппинг при сбое обычной инъекции dll)" - -#: tformsettings.cbalwayssigntable.caption -msgid "Always sign Cheat Tables when saving" -msgstr "Всегда подписывать чит таблицы при сохранении" +#: tformsettings.cbneverchangeprotection.hint +msgid "When enabled CE will never call \"VirtualProtectEx\" before it changes memory. This means that read-only memory can not be changed then. (code is usually read only)" +msgstr "Если включено, то Cheat Engine никогда не будет вызывать «VirtualProtectEx» перед изменением памяти. Это означает, что память, доступная только для чтения, не может быть изменена. (Код обычно доступен только для чтения)" #: tformsettings.cboldpointeraddmethod.caption msgid "Pointer adding: Append pointerline instead of insert" @@ -8847,20 +9317,16 @@ msgstr "Заменить шрифт по умолчанию (Требуется #: tformsettings.cboverrideexistingbps.caption msgid "Override existing breakpoints when setting breakpoints" -msgstr "Снимать уже установленные брейкпоинты при установке новых" +msgstr "Переопределять существующие брейкпоинты при установке новых" #: tformsettings.cbpausewhenscanningonbydefault.caption msgid "Pause while scanning on by default" -msgstr "Останавливать процесс игры при поиске" +msgstr "Приостанавливать процесс игры при поиске" #: tformsettings.cbprocessicons.caption msgid "Get process icons for processlist" msgstr "Показывать иконки в списке процессов" -#: tformsettings.cbprocessiconsonly.caption -msgid "Only show processes with an icon" -msgstr "Показывать только иконки процессов" - #: tformsettings.cbprocesswatcher.caption msgid "Enable use of the Process Watcher" msgstr "Разрешить использование «Наблюдателя процесса»" @@ -8869,6 +9335,26 @@ msgstr "Разрешить использование «Наблюдателя msgid "Open handle to processes on creation" msgstr "Открывать дескриптор процессов при их создании" +#: tformsettings.cbrecordiptforfindwhatroutines.caption +msgid "Record trace in elements of \"Find what ... \" routines" +msgstr "Запись трассировки в элементах процедур «Выяснить... »" + +#: tformsettings.cbrecordiptforfindwhatroutines.hint +msgid "" +"When selected every single element in \"find what ...\" routines will get a copy of the trace for that threat at that time. (Can eat a lot of memory if this is high)\n" +"When deselected you can only get the trace information when stopped on a breakpoint. " +msgstr "" +"Если эта опция включена, то каждый отдельный элемент в процедурах «Выяснить...» получит копию трассировки для этого потока в данный момент(Может потреблять много памяти, при установке большого значения).\n" +"Если выключена, то получить информацию о трассировке вы можете только при остановке на брейкпоинте. " + +#: tformsettings.cbsavememoryregionscansettings.caption +msgid "Save the memoryregions to scan options" +msgstr "Сохранить регионы памяти в параметры сканирования памяти" + +#: tformsettings.cbsavememoryregionscansettings.hint +msgid "Saves \"Writable\" \"Executable\" \"Copy-On-Write\" " +msgstr "Сохраняет «Перезаписываемая», «Исполняемая», «Копируемая при записи»" + #: tformsettings.cbsavewindowpos.caption msgid "Save window positions" msgstr "Сохранять позицию окон" @@ -8899,12 +9385,16 @@ msgstr "Показывать меню «Инструменты» в главно #: tformsettings.cbshowundo.caption msgid "Show undo button" -msgstr "Показывать кнопку «Возврат»" +msgstr "Показывать кнопку «Отменить поиск»" #: tformsettings.cbsimplecopypaste.caption msgid "Simple paste" msgstr "Простая вставка" +#: tformsettings.cbskippdb.caption +msgid "Do not load external debug symbols like .PDB/.DBG files (Breaks tables that use these symbols)" +msgstr "Не загружать внешние отладочные символы, такие как .PDB/.DBG файлы (Ломает таблицы, использующие эти символы)" + #: tformsettings.cbskip_page_nocache.caption msgid "Don't scan memory that is protected with the No Cache option" msgstr "Не искать в памяти с атрибутом защиты «Не кэшировать»" @@ -8915,27 +9405,64 @@ msgstr "Некоторые системы аварийно завершаютс #: tformsettings.cbskip_page_writecombine.caption msgid "Don't scan memory that is protected with the Write Combine option" -msgstr "Не сканировать память, защищенную с помощью параметра \"Комбинировать записи\"" +msgstr "Не сканировать память, защищенную с помощью параметра «Объединённая запись»" + +#: tformsettings.cbsymbolsyncinterval.caption +msgctxt "tformsettings.cbsymbolsyncinterval.caption" +msgid "Synchronize every few seconds" +msgstr "Синхронизировать каждые несколько секунд" + +#: tformsettings.cbsymbolsyncinterval.hint +msgctxt "tformsettings.cbsymbolsyncinterval.hint" +msgid "When checked the symbols will be synchronized with other CE instances every few seconds. When not checked, only when a CE instance gets closed or a different process gets opened" +msgstr "Если опция включена, то символы будут синхронизироваться с другими экземплярами Cheat Engine каждые несколько секунд, в противном случае только при закрытии Cheat Engine или открытии другого процесса" + +#: tformsettings.cbsynchronizesymbols.caption +msgctxt "tformsettings.cbsynchronizesymbols.caption" +msgid "Synchronize symbols" +msgstr "Синхронизация символов" + +#: tformsettings.cbsynchronizesymbols.hint +msgctxt "tformsettings.cbsynchronizesymbols.hint" +msgid "Share symbollists with other CE instances that have the same process open, and remember them when closing and reopening CE" +msgstr "Обмен списком символов с другими экземплярами Cheat Engine, у которых открыт тот же процесс, а так же их запоминание при закрытии и повторном открытии Cheat Engine" #: tformsettings.cbupdatefoundlist.caption msgid "Update the list of found addresses even after scanning" msgstr "Постоянное обновление списка найденных адресов" +#: tformsettings.cbusedbvmdebugger.caption +msgid "DBVM-level debugger" +msgstr "Отладчик уровня DBVM" + +#: tformsettings.cbusegdbserver.caption +msgid "GDB Server Debugger" +msgstr "GDB сервер отладки" + +#: tformsettings.cbuseintelpt.caption +msgid "Use intel-PT feature when the debugger is enabled" +msgstr "Использовать функцию Intel-PT при включённом отладчике" + #: tformsettings.cbusemacdebugger.caption -msgid "Use Mac debugger" -msgstr "Использовать Mac отладчик" +msgid "MacOS debugger" +msgstr "MacOS отладчик" + +#: tformsettings.cbuserosettadebugserver.caption +msgid "Use rosetta debugserver on rosetta targets" +msgstr "Использовать сервер отладки rosetta" #: tformsettings.cbusethreadforfreeze.caption msgid "Use thread for freeze" msgstr "Использовать поток для заморозки" #: tformsettings.cbusevehdebugger.caption -msgid "Use VEH Debugger" -msgstr "Использовать VEH отладчик" +msgctxt "tformsettings.cbusevehdebugger.caption" +msgid "VEH Debugger" +msgstr "VEH отладчик" #: tformsettings.cbusewindowsdebugger.caption -msgid "Use windows debugger" -msgstr "Использовать Windows отладчик" +msgid "Windows debugger" +msgstr "Windows отладчик" #: tformsettings.cbvehrealcontextonthreadcreation.caption msgid "Get/Set thread context on creation" @@ -8943,7 +9470,7 @@ msgstr "Чтение/запись контекста при создании п #: tformsettings.cbwaitafterguiupdate.caption msgid "Wait after gui updates" -msgstr "Небольшая задержка между обновлениями графического интерфейса пользователя" +msgstr "Небольшая задержка между обновлениями графического интерфейса" #: tformsettings.cbwaitafterguiupdate.hint msgid "" @@ -8951,9 +9478,9 @@ msgid "" "With this option enabled the debugger will give the gui some time to handle the messages before it sends it a new update.\n" "Downside: The game may become slightly slower when using these functions. (Of course, if it has been hammering the gui, it would already have been frozen)" msgstr "" -"Иногда обращение к функции «Найти инструкции/адреса...» происходит настолько часто, что графический интерфейс пользователя не успевает обновляться, и это приводит к некорректному поведению, такому, как невозможность закрытия некоторых окон или нереагирующие кнопки.\n" +"Иногда обращение к функции «Выяснить...» происходит настолько часто, что графический интерфейс не успевает обновляться, и это приводит к некорректному поведению, такому, как невозможность закрытия некоторых окон или нереагирующие кнопки.\n" "При включении этой опции, отладчик предоставит графическому интерфейсу пользователя некоторое время для обработки сообщений, перед тем, как последует его следующее обновление.\n" -"Недостаток: Игра может немного притормаживать, во время использования функций «Найти инструкции/адреса...»" +"Недостаток: Игра может немного притормаживать, во время использования функций «Выяснить...»" #: tformsettings.cbwriteloggingon.caption msgid "Enable write logging by default" @@ -8963,10 +9490,6 @@ msgstr "Включить ведение журнала записей по ум msgid "When enabled CE will record writes done by the user and allows the user to undo those changes" msgstr "При включении этой опции Cheat Engine будет записывать сделанные пользователем записи, предоставляя возможность отменить внесённые изменения" -#: tformsettings.cgalltypes.caption -msgid "The all type includes" -msgstr "Тип значения «Все» включает в себя" - #: tformsettings.checkbox1.caption msgid "Try to prevent detection of the debugger" msgstr "Пытаться обойти обнаружение отладчика" @@ -9009,16 +9532,24 @@ msgstr "Количество миллисекунд, которые Cheat Engine msgid "" "The delay in milliseconds to wait before starting a next scan when the 'repeat' checkbox is ticked\n" "\n" -"0=no wait\n" +"0=no wait" msgstr "" -"Задержка в миллисекундах перед началом следующего поиска, в случае если включения опция «Повторение»\n" -"0=без задержки\n" +"Задержка в миллисекундах перед отсевом, в случае включения опции «Повторение»\n" +"0=без задержки" #: tformsettings.extra.caption -msgctxt "TFORMSETTINGS.EXTRA.CAPTION" +msgctxt "tformsettings.extra.caption" msgid "Extra" msgstr "Дополнительно" +#: tformsettings.gballtypes.caption +msgid "The 'all' type includes" +msgstr "Тип значения «Все» включает в себя" + +#: tformsettings.gbdebuggerinterface.caption +msgid "Debugger method" +msgstr "Метод отладки" + #: tformsettings.gbunexpectedexceptionhandling.caption msgid "When CE starts default behaviour for unexpected breakpoints" msgstr "Поведение по умолчанию для непредвиденных брейкпоинтов" @@ -9062,7 +9593,7 @@ msgid "ms" msgstr "мс" #: tformsettings.label12.caption -msgctxt "TFORMSETTINGS.LABEL12.CAPTION" +msgctxt "tformsettings.label12.caption" msgid "ms" msgstr "мс" @@ -9082,9 +9613,10 @@ msgstr "(Может сильно повлиять на скорость поис #: tformsettings.label16.caption msgctxt "tformsettings.label16.caption" msgid "When a table has a lua script, execute it:" -msgstr "Выполнять lua скрипт, если он присутствует в таблице:" +msgstr "Если таблица содержит lua скрипт, выполнять его:" #: tformsettings.label17.caption +msgctxt "tformsettings.label17.caption" msgid "Seconds" msgstr "Секунд" @@ -9093,7 +9625,7 @@ msgid "Found address list update interval" msgstr "Интервал обновления списка найденных адресов" #: tformsettings.label19.caption -msgctxt "TFORMSETTINGS.LABEL19.CAPTION" +msgctxt "tformsettings.label19.caption" msgid "ms" msgstr "мс" @@ -9115,7 +9647,7 @@ msgstr "Доступны следующие плагины:" #: tformsettings.label23.caption msgid "Automatically attach to processes named" -msgstr "Автоматически присоединяться к процессам под именем" +msgstr "Автоматически присоединяться к процессам с именем" #: tformsettings.label24.caption msgid "(Seperate entries with ; )" @@ -9126,6 +9658,15 @@ msgctxt "tformsettings.label25.caption" msgid "ms" msgstr "мс" +#: tformsettings.label26.caption +msgid "GDBServer launch command" +msgstr "Команда запуска GDBServer" + +#: tformsettings.label27.caption +msgctxt "tformsettings.label27.caption" +msgid "Port" +msgstr "Порт" + #: tformsettings.label3.caption msgid "Thread priority" msgstr "Приоритет потока" @@ -9140,7 +9681,7 @@ msgstr "Возвращаемое значение по умолчанию" #: tformsettings.label6.caption msgid "Size of stack to record on \"Find what... routines\"" -msgstr "Размер стека для записи по «Найти инструкции/адреса...»" +msgstr "Размер стека для записи по «Выяснить...»" #: tformsettings.label7.caption msgctxt "tformsettings.label7.caption" @@ -9150,7 +9691,7 @@ msgstr "Байт" #: tformsettings.label8.caption msgctxt "tformsettings.label8.caption" msgid "Max log size (nr of entries)" -msgstr "Максимальный размер журнала(количество записей)" +msgstr "Макс. размер журнала(кол-во записей)" #: tformsettings.label9.caption msgid "The folowing languages are available:" @@ -9169,25 +9710,38 @@ msgstr "Приложение/Команда" msgid "English" msgstr "English" +#: tformsettings.lblmaxiptsize.caption +msgid "Maximum ipt tracesize" +msgstr "Макс. размер трассировки ipt" + #: tformsettings.lblrepeatdelay.caption msgid "Repeat scan delay" -msgstr "Задержка повторного поиска" +msgstr "Задержка повторения поиска" + +#: tformsettings.lblrosettalaunchcommand.caption +msgid "Rosetta debugserver launch command" +msgstr "Команда запуска сервера отладки Rosetta" + +#: tformsettings.lblrosettaport.caption +msgctxt "tformsettings.lblrosettaport.caption" +msgid "Port" +msgstr "Порт" #: tformsettings.lblshortcut.caption msgid "Shortcut:" -msgstr "Быстрый вызов:" +msgstr "Сочетание клавиш:" #: tformsettings.lblthreadfollowing.caption msgid "Thread following:" msgstr "Отслеживание потока:" #: tformsettings.lbltoolsname.caption -msgctxt "TFORMSETTINGS.LBLTOOLSNAME.CAPTION" +msgctxt "tformsettings.lbltoolsname.caption" msgid "Name" msgstr "Название" #: tformsettings.lvtools.columns[0].caption -msgctxt "TFORMSETTINGS.LVTOOLS.COLUMNS[0].CAPTION" +msgctxt "tformsettings.lvtools.columns[0].caption" msgid "Name" msgstr "Название" @@ -9197,14 +9751,15 @@ msgstr "Приложение" #: tformsettings.lvtools.columns[2].caption msgid "Shortcut" -msgstr "Быстрый вызов" +msgstr "Сочетание клавиш" #: tformsettings.menuitem1.caption +msgctxt "tformsettings.menuitem1.caption" msgid "Refresh" msgstr "Обновить" #: tformsettings.miluaexecalways.caption -msgctxt "TFORMSETTINGS.MILUAEXECALWAYS.CAPTION" +msgctxt "tformsettings.miluaexecalways.caption" msgid "Always" msgstr "Всегда" @@ -9214,23 +9769,23 @@ msgid "Always ask" msgstr "Всегда спрашивать" #: tformsettings.miluaexecnever.caption -msgctxt "TFORMSETTINGS.MILUAEXECNEVER.CAPTION" +msgctxt "tformsettings.miluaexecnever.caption" msgid "Never" msgstr "Никогда" #: tformsettings.miluaexecsignedonly.caption msgctxt "tformsettings.miluaexecsignedonly.caption" msgid "Only when signed, else ask" -msgstr "Только если есть подпись, иначе спрашивать" +msgstr "Только при наличии подписи, иначе спрашивать" #: tformsettings.miunexpectedbreakpointsbreak.caption -msgctxt "TFORMSETTINGS.MIUNEXPECTEDBREAKPOINTSBREAK.CAPTION" +msgctxt "tformsettings.miunexpectedbreakpointsbreak.caption" msgid "Break" msgstr "Прерываться" #: tformsettings.miunexpectedbreakpointsbreakwheninsideregion.caption msgid "Break when inside specific regions" -msgstr "Прерываться в определённых регионах" +msgstr "Прерываться внутри определённых регионов" #: tformsettings.miunexpectedbreakpointsignore.caption msgid "Ignore" @@ -9245,10 +9800,6 @@ msgstr "Плагины" msgid "Hardware Breakpoints (Max 4)" msgstr "Аппаратные брейкпоинты (Максимум 4)" -#: tformsettings.rbgdebuggerinterface.caption -msgid "Debugger method" -msgstr "Метод отладки" - #: tformsettings.rbint3asbreakpoint.caption msgid "Int3 instructions (Execute BP only, falls back to hardware bp) (Unlimited)" msgstr "Инструкции int3 (Неограниченно)" @@ -9279,13 +9830,13 @@ msgstr "Использовать «Наблюдатель процесса»" #: tformsettings.replacewithnops.caption msgid "Replace incomplete opcodes with nops" -msgstr "Заменять NOP'ами незаполненные байты" +msgstr "Заменять незаполненные байты на NOP" #: tformsettings.replacewithnops.hint msgid "If you type in a opcode and it is smaller than the opcode you replaced, it will fill the missing bytes with NOP instructions. If the opcode is longer it will replace the opcode(s) that have been overwritten with NOP's" msgstr "" -"Если указанная вами инструкция будет меньше по размеру, чем заменяемая инструкция, то оставшиеся незаполненные байты будут заменены NOP'ами.\n" -"Если больше, то NOP'ами будут заменены незаполненные байты, оставшиеся от инструкции ниже по коду" +"Если указанная вами инструкция будет меньше по размеру, чем заменяемая инструкция, то оставшиеся незаполненные байты будут заменены на NOP.\n" +"Если больше, то на NOP будут заменены незаполненные байты, оставшиеся от инструкции ниже по коду" #: tformsettings.scansettings.caption msgctxt "tformsettings.scansettings.caption" @@ -9296,6 +9847,11 @@ msgstr "Настройки поиска" msgid "I really recommend upgrading to Windows 2000 or later mister Flintstone" msgstr "Мистер Флинстоун, я настоятельно рекомендую вам обновить вашу систему до Windows 2000 или старше" +#: tformsettings.tsgdbdebug.caption +msgctxt "tformsettings.tsgdbdebug.caption" +msgid "GDB Server" +msgstr "Сервер GDB" + #: tformsettings.tshotkeys.caption msgctxt "tformsettings.tshotkeys.caption" msgid "Hotkeys" @@ -9305,14 +9861,14 @@ msgstr "Горячие клавиши" msgid "Kernel Debug" msgstr "Отладка ядра" -#: tformsettings.tslua.caption -msgctxt "TFORMSETTINGS.TSLUA.CAPTION" -msgid "Lua" -msgstr "Lua" - #: tformsettings.tsmacdebuggerinterface.caption msgid "Mac Debug" -msgstr "Mac Отладчик" +msgstr "Отладка Mac" + +#: tformsettings.tssymbols.caption +msgctxt "tformsettings.tssymbols.caption" +msgid "Symbols" +msgstr "Символы" #: tformsettings.tsvehdebugconfig.caption msgid "VEH Debugger" @@ -9320,7 +9876,7 @@ msgstr "VEH отладчик" #: tformsettings.tswindowsdebuggerconfig.caption msgid "Windows Debugger" -msgstr "Windows отладчик" +msgstr "Windows Отладчик" #: tformsettings.unrandomizer.caption msgctxt "tformsettings.unrandomizer.caption" @@ -9328,7 +9884,7 @@ msgid "Unrandomizer" msgstr "Антирандомайзер" #: tfoundcodedialog.addtothecodelist1.caption -msgctxt "TFOUNDCODEDIALOG.ADDTOTHECODELIST1.CAPTION" +msgctxt "tfoundcodedialog.addtothecodelist1.caption" msgid "Add to the codelist" msgstr "Добавить в список кодов" @@ -9347,10 +9903,10 @@ msgstr "Дополнительная информация" #: tfoundcodedialog.btnextrainfo.hint msgid "Shows more information about the state of the system when that instruction got executed" -msgstr "Дополнительные сведения о состоянии системы после выполнения инструкции" +msgstr "Показывает дополнительную информацию о состоянии системы на момент выполнения этой инструкции" #: tfoundcodedialog.btnok.caption -msgctxt "TFOUNDCODEDIALOG.BTNOK.CAPTION" +msgctxt "tfoundcodedialog.btnok.caption" msgid "OK" msgstr "Подтвердить" @@ -9365,11 +9921,11 @@ msgstr "Открывает «Редактор памяти» и переноси #: tfoundcodedialog.btnreplacewithnops.caption msgctxt "tfoundcodedialog.btnreplacewithnops.caption" msgid "Replace" -msgstr "Заменить NOP'ами" +msgstr "Заменить на NOP" #: tfoundcodedialog.btnreplacewithnops.hint msgid "This will replace the selected addresses with code that does nothing. (Nops)" -msgstr "Заменяет выбранные адреса NOP'ами и добавляет их в список кодов" +msgstr "Заменяет выбранные адреса ничего не делающим кодом (NOP)" #: tfoundcodedialog.caption msgctxt "tfoundcodedialog.caption" @@ -9381,10 +9937,14 @@ msgctxt "tfoundcodedialog.copyselectiontoclipboard1.caption" msgid "Copy selection to clipboard" msgstr "Копировать выбранное в буфер обмена" +#: tfoundcodedialog.description.caption +msgid "example" +msgstr "пример" + #: tfoundcodedialog.foundcodelist.columns[0].caption -msgctxt "TFOUNDCODEDIALOG.FOUNDCODELIST.COLUMNS[0].CAPTION" +msgctxt "tfoundcodedialog.foundcodelist.columns[0].caption" msgid "Count" -msgstr "Хиты" +msgstr "Кол-во" #: tfoundcodedialog.foundcodelist.columns[1].caption msgctxt "tfoundcodedialog.foundcodelist.columns[1].caption" @@ -9398,7 +9958,12 @@ msgstr "Выбрать все" #: tfoundcodedialog.mifindwhataccesses.caption msgid "Check if found opcodes also access other addresses (max 8)" -msgstr "Проверять инструкции на обращение к другим адресам (макс. 8)" +msgstr "Выяснить, обращаются ли найденные инструкции и к другим адресам (макс. 8)" + +#: tfoundcodedialog.mifindwhatcodeaccesses.caption +msgctxt "tfoundcodedialog.mifindwhatcodeaccesses.caption" +msgid "Find out what addresses this code accesses" +msgstr "Выяснить, к каким адресам обращается этот код" #: tfoundcodedialog.misavetofile.caption msgid "Save selection to file" @@ -9417,14 +9982,29 @@ msgstr "Заменить ничего не делающим кодом (NOP)" msgid "Show this address in the disassembler" msgstr "Показать этот адрес в дизассемблере" +#: tframehotkeyconfig.btnexcludeprocesses.caption +msgctxt "tframehotkeyconfig.btnexcludeprocesses.caption" +msgid "More..." +msgstr "Ещё..." + #: tframehotkeyconfig.button3.caption msgctxt "tframehotkeyconfig.button3.caption" msgid "Clear" msgstr "Очистить" +#: tframehotkeyconfig.cbcenteronpopup.caption +msgctxt "tframehotkeyconfig.cbcenteronpopup.caption" +msgid "Center Cheat Engine when bringing to front" +msgstr "Центрировать Cheat Engine при переносе на передний план" + +#: tframehotkeyconfig.cbhideallwindows.caption +msgctxt "tframehotkeyconfig.cbhideallwindows.caption" +msgid "Hide some/all windows instead of trying to bring cheat engine to front" +msgstr "Скрывать некоторые/все окна вместо попытки переноса Cheat Engine на передний план" + #: tframehotkeyconfig.cbstoponrelease.caption msgid "Stop on release" -msgstr "Остановить при отжатии клавиши" +msgstr "Остановить при отпускании" #: tframehotkeyconfig.edthotkeydelay.hint msgid "Lets you specify how quickly a hotkey is repeated" @@ -9436,7 +10016,7 @@ msgstr "Определяет, как быстро будет обнаружен #: tframehotkeyconfig.label1.caption msgid "Functions" -msgstr "Назначения" +msgstr "Функции" #: tframehotkeyconfig.label2.caption msgctxt "tframehotkeyconfig.label2.caption" @@ -9460,7 +10040,7 @@ msgid "Speed" msgstr "Скорость" #: tframehotkeyconfig.menuitem1.caption -msgctxt "TFRAMEHOTKEYCONFIG.MENUITEM1.CAPTION" +msgctxt "tframehotkeyconfig.menuitem1.caption" msgid "Clear list" msgstr "Очистить список" @@ -9469,12 +10049,12 @@ msgid "font" msgstr "шрифт" #: tfrmaaeditprefs.button1.caption -msgctxt "TFRMAAEDITPREFS.BUTTON1.CAPTION" +msgctxt "tfrmaaeditprefs.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmaaeditprefs.button2.caption -msgctxt "TFRMAAEDITPREFS.BUTTON2.CAPTION" +msgctxt "tfrmaaeditprefs.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -9483,7 +10063,7 @@ msgid "Editor preferences" msgstr "Настройки редактора" #: tfrmaaeditprefs.cbfontquality.hint -msgctxt "TFRMAAEDITPREFS.CBFONTQUALITY.HINT" +msgctxt "tfrmaaeditprefs.cbfontquality.hint" msgid "The font quality can impact speed" msgstr "Качество шрифта может повлиять на скорость" @@ -9508,7 +10088,7 @@ msgid "Tab Width" msgstr "Ширина табуляции" #: tfrmaaeditprefs.label2.caption -msgctxt "TFRMAAEDITPREFS.LABEL2.CAPTION" +msgctxt "tfrmaaeditprefs.label2.caption" msgid "Font quality" msgstr "Качество шрифта" @@ -9518,7 +10098,7 @@ msgid "Clear" msgstr "Очистить" #: tfrmaccessedmemory.btnclearsmallsnapshot1.caption -msgctxt "TFRMACCESSEDMEMORY.BTNCLEARSMALLSNAPSHOT1.CAPTION" +msgctxt "tfrmaccessedmemory.btnclearsmallsnapshot1.caption" msgid "Clear" msgstr "Очистить" @@ -9539,7 +10119,7 @@ msgstr "Остановить" #: tfrmaccessedmemory.caption msgid "Find accessed memory regions" -msgstr "Обнаружение регионов памяти, к которым происходило обращение" +msgstr "Поиск регионов памяти, к которым происходило обращение" #: tfrmaccessedmemory.label1.caption msgid "Hotkey to (re)start monitoring" @@ -9582,59 +10162,30 @@ msgstr "Открыть файл регионов" msgid "Save region file" msgstr "Сохранить файл регионов" +#: tfrmaccessedmemory.lbllost.caption +msgid "Lost" +msgstr "Потерь" + #: tfrmaccessedmemory.menuitem4.caption -msgctxt "TFRMACCESSEDMEMORY.MENUITEM4.CAPTION" +msgctxt "tfrmaccessedmemory.menuitem4.caption" msgid "Clear" msgstr "Очистить" -#: tfrmadconfig.caption -msgid "Support Cheat Engine" -msgstr "Поддержка Cheat Engine" +#: tfrmaccessedmemory.vsresults.header.columns[0].text +msgid "Page Base" +msgstr "Базовая страница" -#: tfrmadconfig.cbcanclose.caption -msgid "Has header" -msgstr "Имеет заголовок" - -#: tfrmadconfig.cbownurl.caption -msgid "Show my own page" -msgstr "Показать собственную страницу" - -#: tfrmadconfig.groupbox1.caption -msgctxt "tfrmadconfig.groupbox1.caption" -msgid "Position" -msgstr "Позиция" - -#: tfrmadconfig.groupbox2.caption -msgid "Extra url" -msgstr "Дополнительный url" - -#: tfrmadconfig.label1.caption -msgid "Thank you for supporting Cheat Engine. And to thank you for that I'll let you share in the generated traffic" -msgstr "Спасибо за поддержку Cheat Engine. В благодарность за это, вы можете указать и свой URL" - -#: tfrmadconfig.label2.caption -msgid "Format" -msgstr "Формат" - -#: tfrmadconfig.lblextra.caption -msgid "Extra parameters" -msgstr "Дополнительные параметры" - -#: tfrmadconfig.lblpercentage.caption -msgid "Percentage shown: 75%" -msgstr "Процент показа: 75%" - -#: tfrmadconfig.lblurl.caption -msgid "Url" -msgstr "URL-адрес" +#: tfrmaccessedmemory.vsresults.header.columns[1].text +msgid "First Accessed By" +msgstr "Первое обращение" #: tfrmaddtocodelist.button1.caption -msgctxt "TFRMADDTOCODELIST.BUTTON1.CAPTION" +msgctxt "tfrmaddtocodelist.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmaddtocodelist.button2.caption -msgctxt "TFRMADDTOCODELIST.BUTTON2.CAPTION" +msgctxt "tfrmaddtocodelist.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -9644,49 +10195,15 @@ msgid "Region to add" msgstr "Добавляемый регион" #: tfrmaddtocodelist.label1.caption -msgctxt "TFRMADDTOCODELIST.LABEL1.CAPTION" +msgctxt "tfrmaddtocodelist.label1.caption" msgid "From" msgstr "От" #: tfrmaddtocodelist.label2.caption -msgctxt "TFRMADDTOCODELIST.LABEL2.CAPTION" +msgctxt "tfrmaddtocodelist.label2.caption" msgid "To" msgstr "До" -#: tfrmapihooktemplatesettings.button1.caption -msgctxt "TFRMAPIHOOKTEMPLATESETTINGS.BUTTON1.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmapihooktemplatesettings.button2.caption -msgctxt "tfrmapihooktemplatesettings.button2.caption" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmapihooktemplatesettings.caption -msgid "Api hook template" -msgstr "Шаблон перехвата API" - -#: tfrmapihooktemplatesettings.label1.caption -msgid "Original api address:" -msgstr "Оригинальный адрес API:" - -#: tfrmapihooktemplatesettings.label2.caption -msgid "New api address:" -msgstr "Новый адрес API:" - -#: tfrmapihooktemplatesettings.label3.caption -msgid "Address where to store the new original api call:" -msgstr "Адрес хранения нового вызова оригинального API:" - -#: tfrmapihooktemplatesettings.label4.caption -msgid "(optional, in case your dll uses a variable for the call)" -msgstr "(в случае, если ваша dll использует переменную для вызова)" - -#: tfrmapihooktemplatesettings.label5.caption -msgid "Note: The addresses can also be exportnames of dll's" -msgstr "Примечание: Адресами так же могут быть экспортные имена dll" - #: tfrmassemblyscan.btnok.caption msgctxt "tfrmassemblyscan.btnok.caption" msgid "Scan" @@ -9695,22 +10212,28 @@ msgstr "Поиск" #: tfrmassemblyscan.caption msgctxt "tfrmassemblyscan.caption" msgid "Assembly scan" -msgstr "Поиск инструкций" +msgstr "Поиск ассемблерного кода" #: tfrmassemblyscan.lblfrom.caption -msgctxt "TFRMASSEMBLYSCAN.LBLFROM.CAPTION" +msgctxt "tfrmassemblyscan.lblfrom.caption" msgid "From" msgstr "От" #: tfrmassemblyscan.lblinputassemblycode.caption msgctxt "tfrmassemblyscan.lblinputassemblycode.caption" -msgid "Input the assembly code to find. Wildcards( * ) supported." +msgid "" +"Input the assembly code to find. Wildcards supported:\n" +"* matches zero or more chars, ? matches exactly one char\n" +"^ matches the start and $ matches the end of line." msgstr "" -"Укажите инструкцию для поиска. \n" -"Поддерживается подстановочный знак( * )" +"Введите ассемблерный код для поиска.\n" +"Поддерживаются подстановочные знаки:\n" +"* - соответствует 0 или более символов\n" +"? - соответствует ровно одному символу\n" +"^ соответствует началу, а $ - концу строки." #: tfrmassemblyscan.lblto.caption -msgctxt "TFRMASSEMBLYSCAN.LBLTO.CAPTION" +msgctxt "tfrmassemblyscan.lblto.caption" msgid "To" msgstr "До" @@ -9737,20 +10260,20 @@ msgid "Auto assemble" msgstr "Автоассемблер" #: tfrmautoinject.cheattablecompliantcodee1.caption -msgid "Cheat Table framework code" +msgid "Cheat Table Framework Code" msgstr "Вставить секции [ENABLE] и [DISABLE]" #: tfrmautoinject.close1.caption -msgctxt "TFRMAUTOINJECT.CLOSE1.CAPTION" +msgctxt "tfrmautoinject.close1.caption" msgid "Close" msgstr "Закрыть" #: tfrmautoinject.codeinjection1.caption -msgid "Code injection" -msgstr "Инъекция кода" +msgid "Code Injection" +msgstr "Внедрение кода" #: tfrmautoinject.coderelocation1.caption -msgid "Code relocation" +msgid "Code Relocation" msgstr "Перемещение кода" #: tfrmautoinject.emplate1.caption @@ -9762,21 +10285,21 @@ msgid "Exit" msgstr "Выход" #: tfrmautoinject.file1.caption -msgctxt "TFRMAUTOINJECT.FILE1.CAPTION" +msgctxt "tfrmautoinject.file1.caption" msgid "File" msgstr "Файл" #: tfrmautoinject.inject1.caption msgid "Inject" -msgstr "Инъекция" +msgstr "Внедрение" #: tfrmautoinject.injectincurrentprocess1.caption msgid "Inject into current process" -msgstr "Выполнить инъекцию в текущий процесс" +msgstr "Внедрить в текущий процесс" #: tfrmautoinject.injectintocurrentprocessandexecute1.caption msgid "Inject into current process and execute" -msgstr "Выполнить инъекцию в текущий процесс и выполнить" +msgstr "Внедрить в текущий процесс и выполнить" #: tfrmautoinject.load1.caption msgctxt "tfrmautoinject.load1.caption" @@ -9785,11 +10308,15 @@ msgstr "Открыть" #: tfrmautoinject.menuaobinjection.caption msgid "AOB Injection" -msgstr "Инъекция (AOB)" +msgstr "Внедрение (AOB)" #: tfrmautoinject.menufullinjection.caption msgid "Full Injection" -msgstr "Инъекция (Полная)" +msgstr "Внедрение (Полное)" + +#: tfrmautoinject.menuitem1.caption +msgid "C highlighting preferences" +msgstr "Настройки подсветки Си" #: tfrmautoinject.menuitem2.caption msgctxt "tfrmautoinject.menuitem2.caption" @@ -9798,34 +10325,49 @@ msgstr "Настройки подсветки синтаксиса Lua" #: tfrmautoinject.menuitem3.caption msgid "Auto assembler syntax highlighting preferences" -msgstr "Настройки подсветки синтаксиса автоассемблера" +msgstr "Настройки подсветки синтаксиса Автоассемблера" + +#: tfrmautoinject.mi14bytejmp.caption +msgctxt "tfrmautoinject.mi14bytejmp.caption" +msgid "14 Byte JMP (>2GB Distance)" +msgstr "14-байтовый JMP (Расстояние <2 ГБ)" + +#: tfrmautoinject.mi1byteexceptionjmp.caption +msgid "1 Byte Exception JMP" +msgstr "1-байтовый Исключающий JMP" + +#: tfrmautoinject.mi5bytejmp.caption +msgctxt "tfrmautoinject.mi5bytejmp.caption" +msgid "5 Byte JMP (<2GB Distance)" +msgstr "5-байтовый JMP (Расстояние <2 ГБ)" #: tfrmautoinject.micalllua.caption -msgid "Call CE lua function" +msgid "Call CE Lua Function" msgstr "Вызов функции CE lua" #: tfrmautoinject.micopy.caption -msgctxt "tfrmautoinject.micopy.caption" msgid "&Copy" msgstr "&Копировать" #: tfrmautoinject.micut.caption -msgctxt "tfrmautoinject.micut.caption" msgid "Cu&t" msgstr "&Вырезать" #: tfrmautoinject.mifind.caption -msgctxt "tfrmautoinject.mifind.caption" msgid "&Find..." msgstr "&Найти..." #: tfrmautoinject.mifindnext.caption msgctxt "tfrmautoinject.mifindnext.caption" msgid "Find Next" -msgstr "Найти далее" +msgstr "Найти Далее" + +#: tfrmautoinject.mifindprevious.caption +msgctxt "tfrmautoinject.mifindprevious.caption" +msgid "Find Previous" +msgstr "Найти Предыдущее" #: tfrmautoinject.miluasyntaxcheck.caption -msgctxt "tfrmautoinject.miluasyntaxcheck.caption" msgid "Syntax Check" msgstr "Проверка синтаксиса" @@ -9838,7 +10380,6 @@ msgid "Move right" msgstr "Переместить вправо" #: tfrmautoinject.minewtab.caption -msgctxt "tfrmautoinject.minewtab.caption" msgid "New Tab" msgstr "Новая вкладка" @@ -9848,7 +10389,6 @@ msgid "New Window" msgstr "Новое окно" #: tfrmautoinject.mipaste.caption -msgctxt "tfrmautoinject.mipaste.caption" msgid "&Paste" msgstr "&Вставить" @@ -9868,7 +10408,6 @@ msgid "Replace" msgstr "Заменить" #: tfrmautoinject.miundo.caption -msgctxt "tfrmautoinject.miundo.caption" msgid "&Undo" msgstr "&Отменить" @@ -9878,7 +10417,7 @@ msgid "Open CE assembly file" msgstr "Открыть файл автоассемблера" #: tfrmautoinject.save1.caption -msgctxt "TFRMAUTOINJECT.SAVE1.CAPTION" +msgctxt "tfrmautoinject.save1.caption" msgid "Save" msgstr "Сохранить" @@ -9888,9 +10427,9 @@ msgid "Save As..." msgstr "Сохранить как..." #: tfrmautoinject.savedialog1.title -msgctxt "TFRMAUTOINJECT.SAVEDIALOG1.TITLE" -msgid "Open CE assembly file" -msgstr "Открыть файл автоассемблера" +msgctxt "tfrmautoinject.savedialog1.title" +msgid "Save CE assembly file" +msgstr "Сохранить файл автоассемблера" #: tfrmautoinject.syntaxhighlighting1.caption msgid "Syntax highlighting" @@ -9905,29 +10444,30 @@ msgstr "Вид" msgid "Start mapping" msgstr "Запустить" +#: tfrmbranchmapper.button2.caption +msgctxt "tfrmbranchmapper.button2.caption" +msgid "Save results to file" +msgstr "Сохранить результаты в файл" + #: tfrmbranchmapper.caption msgid "Branch Mapper" -msgstr "Сопоставитель ветвей" +msgstr "Сопоставление ветвлений" #: tfrmbranchmapper.label1.caption msgid "Record branch destinations in the following threads:" -msgstr "Запись назначений ветвей в следующих потоках:" +msgstr "Запись направлений ветвления в следующих потоках:" #: tfrmbranchmapper.label2.caption msgid "Found: " msgstr "Найдено: " -msgctxt "tfrmbranchmapper.button2.caption" -msgid "Save results to file" -msgstr "Сохранить результат в файл" - #: tfrmbreakpointcondition.button1.caption -msgctxt "TFRMBREAKPOINTCONDITION.BUTTON1.CAPTION" +msgctxt "tfrmbreakpointcondition.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmbreakpointcondition.button2.caption -msgctxt "TFRMBREAKPOINTCONDITION.BUTTON2.CAPTION" +msgctxt "tfrmbreakpointcondition.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -9940,8 +10480,8 @@ msgid "Give a formula that must return true if you want the breakpoint to trigge msgstr "Задайте формулу, которая должна возвращать TRUE для инициирования прерывания брейкпоинтом" #: tfrmbreakpointcondition.label2.caption -msgid "Example: EAX == 0x1234 (case sensitive and hexadecimal starts with 0x )" -msgstr "Пример: EAX == 0x1234 (с учётом регистра, шестнадцатеричные значения начинаются с 0x)" +msgid "Example: EAX == 0x1234 (case sensitive and hexadecimal starts with 0x ) (Lua)" +msgstr "Пример: EAX == 0x1234 (с учётом регистра, шестнадцатеричные значения начинаются с 0x ) (Lua)" #: tfrmbreakpointcondition.rbcomplex.caption msgid "Complex" @@ -9964,12 +10504,12 @@ msgid "Breakpoint list" msgstr "Список брейкпоинтов" #: tfrmbreakpointlist.listview1.columns[0].caption -msgctxt "TFRMBREAKPOINTLIST.LISTVIEW1.COLUMNS[0].CAPTION" +msgctxt "tfrmbreakpointlist.listview1.columns[0].caption" msgid "Address" msgstr "Адрес" #: tfrmbreakpointlist.listview1.columns[1].caption -msgctxt "TFRMBREAKPOINTLIST.LISTVIEW1.COLUMNS[1].CAPTION" +msgctxt "tfrmbreakpointlist.listview1.columns[1].caption" msgid "Size" msgstr "Размер" @@ -9978,7 +10518,7 @@ msgid "Trigger" msgstr "Инициирование" #: tfrmbreakpointlist.listview1.columns[3].caption -msgctxt "TFRMBREAKPOINTLIST.LISTVIEW1.COLUMNS[3].CAPTION" +msgctxt "tfrmbreakpointlist.listview1.columns[3].caption" msgid "Type" msgstr "Тип" @@ -10013,99 +10553,15 @@ msgstr "Задать/изменить условие" #: tfrmbreakpointlist.mishowshadow.caption msgid "Show shadow breakpoints" -msgstr "Показывать скрытые данные" - -#: tfrmcallfilter.button1.caption -msgctxt "tfrmcallfilter.button1.caption" -msgid "From Dissect Code" -msgstr "Из анализа кода" - -#: tfrmcallfilter.button1.hint -msgctxt "tfrmcallfilter.button1.hint" -msgid "Disassembles the code and marks calls. This can be inaccurate and might end up writing 0xcc's at random/wrong locations" -msgstr "Разбирает код и отмечает вызовы. Может быть не точным может привести к записи опкода 0xcc в случайных/неправильных местах" - -#: tfrmcallfilter.button2.caption -msgctxt "tfrmcallfilter.button2.caption" -msgid "From Trace" -msgstr "Из трассировки" - -#: tfrmcallfilter.button2.hint -msgctxt "tfrmcallfilter.button2.hint" -msgid "Load a previous trace and filters out the CALL's from there" -msgstr "Загружает предшествующую трассировку и отфильтровывает от туда вызовы" - -#: tfrmcallfilter.button3.caption -msgctxt "TFRMCALLFILTER.BUTTON3.CAPTION" -msgid "Start" -msgstr "Запустить" - -#: tfrmcallfilter.button4.caption -msgctxt "TFRMCALLFILTER.BUTTON4.CAPTION" -msgid "Stop" -msgstr "Стоп" - -#: tfrmcallfilter.button5.caption -msgctxt "tfrmcallfilter.button5.caption" -msgid "From File" -msgstr "Из файла" - -#: tfrmcallfilter.button6.caption -msgid "Has been called" -msgstr "Был вызван" - -#: tfrmcallfilter.button7.caption -msgid "Has not been called" -msgstr "Не был вызван" - -#: tfrmcallfilter.button8.caption -msgid "Has an execution count of " -msgstr "Имеет количество выполнения " - -#: tfrmcallfilter.caption -msgid "Call Filter" -msgstr "Фильтр вызовов" - -#: tfrmcallfilter.checkbox1.caption -msgid "Mark everything being called as unwanted" -msgstr "Отметить все вызванные как нежелательные" - -#: tfrmcallfilter.checkbox1.hint -msgid "Use this to automatically remove breakpoints that are being called. " -msgstr "Используйте это для автоматического удаления брейкпоинтов, которые были вызваны." - -#: tfrmcallfilter.groupbox1.caption -msgid "Load call list" -msgstr "Загрузить список вызовов" - -#: tfrmcallfilter.label1.caption -msgid "This will place software breakpoints on all known calls and then keep track of those that are of interest to you, and discard the ones that are not" -msgstr "Это установит программные брейкопинты на все известные вызовы и будет отслеживать те, что представляют для вас интерес, отбрасывая остальные" - -#: tfrmcallfilter.label2.caption -msgid "Call List" -msgstr "Список вызовов" - -#: tfrmcallfilter.listview1.columns[0].caption -msgctxt "TFRMCALLFILTER.LISTVIEW1.COLUMNS[0].CAPTION" -msgid "Address" -msgstr "Адрес" - -#: tfrmcallfilter.listview1.columns[1].caption -msgid "Execution count" -msgstr "Кол-во выполнений" - -#: tfrmcallfilter.listview1.columns[2].caption -msgid "Total execution count" -msgstr "Общее кол-во выполнений" +msgstr "Показывать скрытые брейкпоинты" #: tfrmbreakthread.button1.caption -msgctxt "TFRMBREAKTHREAD.BUTTON1.CAPTION" +msgctxt "tfrmbreakthread.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmbreakthread.button2.caption -msgctxt "TFRMBREAKTHREAD.BUTTON2.CAPTION" +msgctxt "tfrmbreakthread.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -10118,13 +10574,13 @@ msgid "This process has more than 1 thread. Select the thread you wish to break" msgstr "Этот процесс имеет более одного потока. Выберите тот, что хотите прервать" #: tfrmcapturedtimers.button1.caption -msgctxt "TFRMCAPTUREDTIMERS.BUTTON1.CAPTION" +msgctxt "tfrmcapturedtimers.button1.caption" msgid "Close" msgstr "Закрыть" #: tfrmcapturedtimers.button2.caption msgid "Send timer messages" -msgstr "Отправка сообщений" +msgstr "Отправка сообщений таймера" #: tfrmcapturedtimers.caption msgid "Captured Timers" @@ -10155,42 +10611,9 @@ msgid "TimerProc" msgstr "TimerProc" #: tfrmcapturedtimers.listview1.columns[5].caption -msgctxt "TFRMCAPTUREDTIMERS.LISTVIEW1.COLUMNS[5].CAPTION" +msgctxt "tfrmcapturedtimers.listview1.columns[5].caption" msgid "Count" -msgstr "Хиты" - -#: tfrmcelistviewitemeditor.btnadditem.caption -msgctxt "tfrmcelistviewitemeditor.btnadditem.caption" -msgid "Add Item" -msgstr "Добавить элемент" - -#: tfrmcelistviewitemeditor.btnaddsubitem.caption -msgid "Add SubItem" -msgstr "Добавить подэлемент" - -#: tfrmcelistviewitemeditor.btncancel.caption -msgctxt "TFRMCELISTVIEWITEMEDITOR.BTNCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmcelistviewitemeditor.btndelete.caption -msgctxt "tfrmcelistviewitemeditor.btndelete.caption" -msgid "Delete" -msgstr "Удалить" - -#: tfrmcelistviewitemeditor.btnok.caption -msgctxt "TFRMCELISTVIEWITEMEDITOR.BTNOK.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmcelistviewitemeditor.caption -msgid "Item editor" -msgstr "Редактор элементов" - -#: tfrmcelistviewitemeditor.lbltext.caption -msgctxt "tfrmcelistviewitemeditor.lbltext.caption" -msgid "Text" -msgstr "Текст" +msgstr "Кол-во" #: tfrmchangedaddresses.browsethismemoryregion1.caption msgctxt "tfrmchangedaddresses.browsethismemoryregion1.caption" @@ -10202,12 +10625,12 @@ msgid "Changed Addresses" msgstr "Изменённые адреса" #: tfrmchangedaddresses.cbdisplaytype.text -msgctxt "TFRMCHANGEDADDRESSES.CBDISPLAYTYPE.TEXT" +msgctxt "tfrmchangedaddresses.cbdisplaytype.text" msgid "4 Bytes" msgstr "4 Байта" #: tfrmchangedaddresses.changedlist.columns[0].caption -msgctxt "TFRMCHANGEDADDRESSES.CHANGEDLIST.COLUMNS[0].CAPTION" +msgctxt "tfrmchangedaddresses.changedlist.columns[0].caption" msgid "Address" msgstr "Адрес" @@ -10219,25 +10642,30 @@ msgstr "Значение" #: tfrmchangedaddresses.changedlist.columns[2].caption msgctxt "tfrmchangedaddresses.changedlist.columns[2].caption" msgid "Count" -msgstr "Хиты" +msgstr "Кол-во" #: tfrmchangedaddresses.labelcodeaddress.caption msgid "Code Address" -msgstr "Адрес кода" +msgstr "Кодовый адрес" #: tfrmchangedaddresses.lblinfo.caption msgid "The following addresses have been accessed by the code you selected" -msgstr "К следующим адресам был получен доступ по выбранному вами коду" +msgstr "К следующим адресам обращался выбранный вами код" #: tfrmchangedaddresses.micbshowashexadecimal.caption msgctxt "tfrmchangedaddresses.micbshowashexadecimal.caption" msgid "Show as hexadecimal" msgstr "Показать как шестнадцатеричное" +#: tfrmchangedaddresses.micbshowassigned.caption +msgctxt "tfrmchangedaddresses.micbshowassigned.caption" +msgid "Show as signed" +msgstr "Показать как знаковое" + #: tfrmchangedaddresses.michangevalue.caption msgctxt "tfrmchangedaddresses.michangevalue.caption" msgid "Change value" -msgstr "Изменение адреса" +msgstr "Изменить значение" #: tfrmchangedaddresses.micodeaddressbrowsememoryregion.caption msgid "Browse Memory Region" @@ -10245,11 +10673,11 @@ msgstr "Просмотреть регион памяти" #: tfrmchangedaddresses.micodeaddresscopy.caption msgid "Copy Code Address to Clipboard" -msgstr "Копировать адрес кода в буфер обмена" +msgstr "Копировать кодовый адрес в буфер обмена" #: tfrmchangedaddresses.micodeaddressdisassemblememoryregion.caption msgid "Disassemble Memory Region" -msgstr "Разобрать область памяти" +msgstr "Дизассемблировать регион памяти" #: tfrmchangedaddresses.micommonalitiessubgroup.caption msgid "Find commonalities between addresses" @@ -10291,7 +10719,7 @@ msgstr "Отметить выбранное как группа 2" #: tfrmchangedaddresses.miresetcount.caption msgid "Reset count" -msgstr "Сбросить хиты" +msgstr "Сбросить счётчик" #: tfrmchangedaddresses.miscanforcommonalities.caption msgid "Scan for commonalities" @@ -10302,6 +10730,10 @@ msgctxt "tfrmchangedaddresses.misetfilter.caption" msgid "Filter" msgstr "Фильтр" +#: tfrmchangedaddresses.mishowiptlog.caption +msgid "Show IPT log" +msgstr "Показать журнал IPT" + #: tfrmchangedaddresses.okbutton.caption msgctxt "tfrmchangedaddresses.okbutton.caption" msgid "Stop" @@ -10311,11 +10743,6 @@ msgstr "Остановить" msgid "Show register states" msgstr "Показать состояния регистров" -#: tfrmcodefilter.btncancel.caption -msgctxt "TFRMCODEFILTER.BTNCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - #: tfrmchangedaddressescommonalityscanner.caption msgid "Commonality scanner" msgstr "Сканер совпадений" @@ -10328,144 +10755,8 @@ msgstr "Регистр" msgid "Status" msgstr "Состояние" -#: tfrmcodefilter.btncancel.hint -msgid "Cancels the current operation" -msgstr "Отменяет текущую операцию" - -#: tfrmcodefilter.btnfilteroutexecutedaddresses.caption -msgid "Has not been executed" -msgstr "Не был выполнен" - -#: tfrmcodefilter.btnfilteroutexecutedaddresses.hint -msgid "Removes all addresses from the list that have been executed, and resets the breakpoints on the remaining addresses if the filter is active" -msgstr "Удаляет все адреса из списка, которые были выполнены, и сбрасывает брейкпоинты на оставшихся адресах, если фильтр активен" - -#: tfrmcodefilter.btnfilteroutnonexecutedaddresses.caption -msgid "Has been executed" -msgstr "Был выполнен" - -#: tfrmcodefilter.btnfilteroutnonexecutedaddresses.hint -msgid "Removes all addresses from the list that have not been executed, and resets the breakpoints on the remaining addresses if the filter is active" -msgstr "Удаляет все адреса из списка, которые не были выполнены, и сбрасывает брейкпоинты на оставшихся адресах, если фильтр активен" - -#: tfrmcodefilter.btnloadaddressesbydisassembling.caption -msgid "From disassembler" -msgstr "Из дизассемблера" - -#: tfrmcodefilter.btnloadaddressesbydisassembling.hint -msgctxt "TFRMCODEFILTER.BTNLOADADDRESSESBYDISASSEMBLING.HINT" -msgid "Disassembles the code and marks calls. This can be inaccurate and might end up writing 0xcc's at random/wrong locations" -msgstr "Разбирает код и отмечает вызовы. Может быть не точным может привести к записи опкода 0xcc в случайных/неправильных местах" - -#: tfrmcodefilter.btnloadaddressesfromfile.caption -msgctxt "TFRMCODEFILTER.BTNLOADADDRESSESFROMFILE.CAPTION" -msgid "From File" -msgstr "Из файла" - -#: tfrmcodefilter.btnloadaddressesfromfile.hint -msgid "Loads a file containing a list of addresses (e.g from a previous filter session or from the branch mapper)" -msgstr "Загружает файл, содержащий список адресов (например, от предыдущей сессии фильтра или от сопоставителя ветвей)" - -#: tfrmcodefilter.btnloadaddressesfromtrace.caption -msgctxt "TFRMCODEFILTER.BTNLOADADDRESSESFROMTRACE.CAPTION" -msgid "From Trace" -msgstr "Из трассировки" - -#: tfrmcodefilter.btnloadaddressesfromtrace.hint -msgctxt "TFRMCODEFILTER.BTNLOADADDRESSESFROMTRACE.HINT" -msgid "Load a previous trace and filters out the CALL's from there" -msgstr "Загружает предшествующую трассировку и отфильтровывает от туда вызовы" - -#: tfrmcodefilter.btnshowlist.caption -msgctxt "TFRMCODEFILTER.BTNSHOWLIST.CAPTION" -msgid "Refresh list" -msgstr "Обновить список" - -#: tfrmcodefilter.btnstart.caption -msgctxt "TFRMCODEFILTER.BTNSTART.CAPTION" -msgid "Start" -msgstr "Запустить" - -#: tfrmcodefilter.btnstop.caption -msgctxt "TFRMCODEFILTER.BTNSTOP.CAPTION" -msgid "Stop" -msgstr "Стоп" - -#: tfrmcodefilter.button1.caption -msgid "From unwind info" -msgstr "Из информации о раскрутке" - -#: tfrmcodefilter.caption -msgctxt "TFRMCODEFILTER.CAPTION" -msgid "Code Filter" -msgstr "Фильтр кода" - -#: tfrmcodefilter.frmlaunchbranchmapper.caption -msgctxt "TFRMCODEFILTER.FRMLAUNCHBRANCHMAPPER.CAPTION" -msgid "Launch branch mapper" -msgstr "Запуск сопоставителя ветвей" - -#: tfrmcodefilter.frmlaunchbranchmapper.hint -msgid "" -"Starts a single stepping (branch only) trace and records all unique IP's encountered. You can use the results from this with the \"From File\" address list\n" -"Make sure that the code you're interested in is executed at least once\n" -"\n" -"\n" -msgstr "" -"Запускает пошаговую трассировку (только ветвление) и записывает все обнаруженные уникальные IP. Вы можете использовать результат вместе со списков адресов «Из файла»\n" -"Убедитесь, что интересующий вас код был выполнен хотя бы раз\n" -"<ПРЕДУПРЕЖДЕНИЕ: МЕДЛЕННЫЙ и рекомендуемый как последнее средство>\n" - -#: tfrmcodefilter.groupbox1.caption -msgid "Load address list" -msgstr "Загрузка списка адресов" - -#: tfrmcodefilter.label1.caption -msgid "" -"This will place software breakpoints(0xcc) on many locations of interest (Usually CALLs) and then track which ones get executed and which ones do not.\n" -"By specifying that some code has been executed and some not you can filter down the list till it's only ones you're interested in\n" -msgstr "" -"Фильтр кода устанавливает программные брейкпоинты(0xcc) на многие места, представляющие интерес(обычно это вызовы), а затем отслеживает какие из них выполняются, а какие нет.\n" -"Указав, какой код был выполнен, а какой нет, вы можете отфильтровывать список до тех пор, пока он не станет вам интересен.\n" - -#: tfrmcodefilter.label3.caption -msgid "Addresses executed since last filter operation:" -msgstr "Адреса, выполненные начиная с последней работы фильтра:" - -#: tfrmcodefilter.lbladdresslist.caption -msgid "Address List" -msgstr "Список адресов" - -#: tfrmcodefilter.lblstatus.caption -msgid "Doing something" -msgstr "Что-то делает" - -#: tfrmcodefilter.lvresults.columns[0].caption -msgctxt "TFRMCODEFILTER.LVRESULTS.COLUMNS[0].CAPTION" -msgid "Address" -msgstr "Адрес" - -#: tfrmcodefilter.lvresults.columns[1].caption -msgid "Executed" -msgstr "Выполнен" - -#: tfrmcodefilter.miclearlist.caption -msgctxt "TFRMCODEFILTER.MICLEARLIST.CAPTION" -msgid "Clear list" -msgstr "Очистить список" - -#: tfrmcodefilter.mideleteselecteditems.caption -msgctxt "TFRMCODEFILTER.MIDELETESELECTEDITEMS.CAPTION" -msgid "Delete selected addresses" -msgstr "Удалить выбранные адреса" - -#: tfrmcodefilter.misaveaddresslist.caption -msgctxt "TFRMCODEFILTER.MISAVEADDRESSLIST.CAPTION" -msgid "Save addresslist" -msgstr "Сохранить список адресов" - #: tfrmcodecavescanner.btnstart.caption -msgctxt "TFRMCODECAVESCANNER.BTNSTART.CAPTION" +msgctxt "tfrmcodecavescanner.btnstart.caption" msgid "Start" msgstr "Запустить" @@ -10493,13 +10784,169 @@ msgstr "Конечный адрес" msgid "Size of cave" msgstr "Размер cave'а" +#: tfrmcodefilter.btncancel.caption +msgctxt "tfrmcodefilter.btncancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmcodefilter.btncancel.hint +msgid "Cancels the current operation" +msgstr "Отменяет текущую операцию" + +#: tfrmcodefilter.btnfilteroutexecutedaddresses.caption +msgid "Has not been executed" +msgstr "Не был выполнен" + +#: tfrmcodefilter.btnfilteroutexecutedaddresses.hint +msgid "Removes all addresses from the list that have been executed, and resets the breakpoints on the remaining addresses if the filter is active" +msgstr "Удаляет из списка все выполненные адреса и сбрасывает брейкпоинты на оставшихся адресах, если фильтр активен" + +#: tfrmcodefilter.btnfilteroutnonexecutedaddresses.caption +msgid "Has been executed" +msgstr "Был выполнен" + +#: tfrmcodefilter.btnfilteroutnonexecutedaddresses.hint +msgid "Removes all addresses from the list that have not been executed, and resets the breakpoints on the remaining addresses if the filter is active" +msgstr "Удаляет из списка все невыполненные адреса и сбрасывает брейкпоинты на оставшихся адресах, если фильтр активен" + +#: tfrmcodefilter.btnfromunwindinfo.caption +msgid "From Unwind Info" +msgstr "Из информации раскрутки" + +#: tfrmcodefilter.btnloadaddressesbydisassembling.caption +msgid "From Disassembler" +msgstr "Из дизассемблера" + +#: tfrmcodefilter.btnloadaddressesbydisassembling.hint +msgid "Disassembles the code and marks calls. This can be inaccurate and might end up writing 0xcc's at random/wrong locations" +msgstr "Дизассемблирует код и помечает вызовы. Это может быть неточным и привести к записи 0xcc в случайных/неправильных местах" + +#: tfrmcodefilter.btnloadaddressesfromfile.caption +msgid "From File" +msgstr "Из файла" + +#: tfrmcodefilter.btnloadaddressesfromfile.hint +msgid "Loads a file containing a list of addresses (e.g from a previous filter session or from the branch mapper)" +msgstr "Загружает файл, содержащий список адресов (например, от предыдущей сессии фильтра или от сопоставления ветвлений)" + +#: tfrmcodefilter.btnloadaddressesfromtrace.caption +msgid "From Trace" +msgstr "Из трассировки" + +#: tfrmcodefilter.btnloadaddressesfromtrace.hint +msgid "Load a previous trace and filters out the CALL's from there" +msgstr "Загружает предыдущую трассировку и отфильтровывает оттуда вызовы" + +#: tfrmcodefilter.btnshowlist.caption +msgctxt "tfrmcodefilter.btnshowlist.caption" +msgid "Refresh list" +msgstr "Обновить список" + +#: tfrmcodefilter.btnstart.caption +msgctxt "tfrmcodefilter.btnstart.caption" +msgid "Start" +msgstr "Запустить" + +#: tfrmcodefilter.btnstop.caption +msgctxt "tfrmcodefilter.btnstop.caption" +msgid "Stop" +msgstr "Стоп" + +#: tfrmcodefilter.caption +msgctxt "tfrmcodefilter.caption" +msgid "Code Filter" +msgstr "Фильтр кода" + +#: tfrmcodefilter.frmlaunchbranchmapper.caption +msgid "Launch branch mapper" +msgstr "Запуск сопоставления ветвлений" + +#: tfrmcodefilter.frmlaunchbranchmapper.hint +msgid "" +"Starts a single stepping (branch only) trace and records all unique IP's encountered. You can use the results from this with the \"From File\" address list\n" +"Make sure that the code you're interested in is executed at least once\n" +"\n" +"" +msgstr "" +"Запускает пошаговую трассировку (только ветвление) и записывает все обнаруженные уникальные IP. Вы можете использовать результат вместе со списков адресов «Из файла»\n" +"Убедитесь, что интересующий вас код был выполнен хотя бы раз\n" +"\n" +"<ПРЕДУПРЕЖДЕНИЕ: МЕДЛЕННЫЙ и рекомендуемый как последнее средство>" + +#: tfrmcodefilter.groupbox1.caption +msgid "Load address list" +msgstr "Загрузка списка адресов" + +#: tfrmcodefilter.label1.caption +msgid "" +"This will place software breakpoints(0xcc) on many locations of interest (Usually CALLs) and then track which ones get executed and which ones do not.\n" +"By specifying that some code has been executed and some not you can filter down the list till it's only ones you're interested in" +msgstr "" +"Позволяет разместить программные брейкпоинты(0xcc) на многие места, представляющие интерес(обычно это вызовы), а затем отслеживать какие из них выполняются, а какие нет.\n" +"Указывая какой код был или не был выполнен, вы можете отфильтровывать список до тех пор, пока в нём не останется только то, что вас интересует" + +#: tfrmcodefilter.label3.caption +msgid "Addresses executed since last filter operation:" +msgstr "Выполненные адреса с момента последней работы фильтра:" + +#: tfrmcodefilter.lbladdresslist.caption +msgid "Address List" +msgstr "Список адресов" + +#: tfrmcodefilter.lblstatus.caption +msgid "Doing something" +msgstr "Что-то делает" + +#: tfrmcodefilter.lvresults.columns[0].caption +msgctxt "tfrmcodefilter.lvresults.columns[0].caption" +msgid "Address" +msgstr "Адрес" + +#: tfrmcodefilter.lvresults.columns[1].caption +msgid "Executed" +msgstr "Выполнен" + +#: tfrmcodefilter.miclearlist.caption +msgctxt "tfrmcodefilter.miclearlist.caption" +msgid "Clear list" +msgstr "Очистить список" + +#: tfrmcodefilter.mideleteselecteditems.caption +msgid "Delete selected addresses" +msgstr "Удалить выбранные адреса" + +#: tfrmcodefilter.misaveaddresslist.caption +msgid "Save addresslist" +msgstr "Сохранить список адресов" + +#: tfrmcr3switcher.btnsetcr3.caption +msgctxt "tfrmcr3switcher.btnsetcr3.caption" +msgid "Set" +msgstr "Задать" + +#: tfrmcr3switcher.caption +msgid "Pagebase Switcher (CR3)" +msgstr "Переключатель базы страниц(CR3)" + +#: tfrmcr3switcher.edtnewcr3.hint +msgid "Set to 0 or empty and click set to go back to normal windows or DBK memory API" +msgstr "Установите значение «0» или оставьте пустым и нажмите кнопку «Установить», чтобы вернуться к обычным окнам или API памяти DBK" + +#: tfrmcr3switcher.label1.caption +msgid "Select or type the new page base address (CR3) for this memory view window" +msgstr "Выберите или задайте новый базовый адрес страницы (CR3) для данного окна представления памяти" + +#: tfrmcr3switcher.menuitem1.caption +msgid "Record CR3 list" +msgstr "Запись списка CR3" + #: tfrmconfigunrandomizer.button1.caption -msgctxt "TFRMCONFIGUNRANDOMIZER.BUTTON1.CAPTION" +msgctxt "tfrmconfigunrandomizer.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmconfigunrandomizer.button2.caption -msgctxt "TFRMCONFIGUNRANDOMIZER.BUTTON2.CAPTION" +msgctxt "tfrmconfigunrandomizer.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -10515,15 +10962,15 @@ msgstr "Инкрементное значение" #: tfrmconfigunrandomizer.label1.caption msgctxt "tfrmconfigunrandomizer.label1.caption" msgid "Default return value" -msgstr "Возвращаемое значение" +msgstr "Возвращаемое значение по умолчанию" #: tfrmd3dhooksnapshotconfig.btnclearfullsnapshot.caption -msgctxt "TFRMD3DHOOKSNAPSHOTCONFIG.BTNCLEARFULLSNAPSHOT.CAPTION" +msgctxt "tfrmd3dhooksnapshotconfig.btnclearfullsnapshot.caption" msgid "Clear" msgstr "Очистить" #: tfrmd3dhooksnapshotconfig.btnclearsmallsnapshot.caption -msgctxt "TFRMD3DHOOKSNAPSHOTCONFIG.BTNCLEARSMALLSNAPSHOT.CAPTION" +msgctxt "tfrmd3dhooksnapshotconfig.btnclearsmallsnapshot.caption" msgid "Clear" msgstr "Очистить" @@ -10537,7 +10984,7 @@ msgstr "Сохранять картинку рядом с файлом сним #: tfrmd3dhooksnapshotconfig.cbalsooutputpng.hint msgid "Use this if you have a more efficient way of rendering .PNG's to select the snapshot you wish" -msgstr "Используйте это, если у вас есть более эффективный способ визуализации .PNG" +msgstr "Используйте это, если у вас есть более эффективный способ отрисовки .PNG, чтобы выбрать нужный снимок" #: tfrmd3dhooksnapshotconfig.cbcleardepth.caption msgid "Clear depth buffer" @@ -10549,11 +10996,15 @@ msgstr "Прогрессивные снимки (фон не очищается) #: tfrmd3dhooksnapshotconfig.edtfullsnapshot.hint msgid "When this key is pressed all renders that occur will be stored" -msgstr "При нажатии этой клавиши будут сохранены все происходящие рендеры" +msgstr "При нажатии этой клавиши будут сохранены все происходящие отрисовки" #: tfrmd3dhooksnapshotconfig.edtsmallsnapshot.hint msgid "When this key is pressed all renders that occur below the mouse cursor will be stored" -msgstr "При нажатии этой клавиши будут сохранены все рендеры, происходящие под курсором мыши" +msgstr "При нажатии этой клавиши будут сохранены все отрисовки, происходящие под курсором мыши" + +#: tfrmd3dhooksnapshotconfig.gbpictureformat.caption +msgid "Picture Format" +msgstr "Формат изображения" #: tfrmd3dhooksnapshotconfig.label1.caption msgid "Snapshot folder" @@ -10568,27 +11019,31 @@ msgid "Focused snapshot key" msgstr "Фокусированный снимок" #: tfrmd3dhooksnapshotconfig.mbcancel.caption -msgctxt "TFRMD3DHOOKSNAPSHOTCONFIG.MBCANCEL.CAPTION" +msgctxt "tfrmd3dhooksnapshotconfig.mbcancel.caption" msgid "Cancel" msgstr "Отмена" #: tfrmd3dhooksnapshotconfig.mbok.caption -msgctxt "TFRMD3DHOOKSNAPSHOTCONFIG.MBOK.CAPTION" +msgctxt "tfrmd3dhooksnapshotconfig.mbok.caption" msgid "OK" msgstr "Подтвердить" -#: tfrmd3dhooksnapshotconfig.rgpictureformat.caption -msgid "Picture format" -msgstr "Формат изображения" +#: tfrmd3dhooksnapshotconfig.rbformatbmp.caption +msgid "BMP (Fast, but requires a gigantic harddisk) " +msgstr "BMP (Быстро, но требует гигантское дисковое пространство)" + +#: tfrmd3dhooksnapshotconfig.rbformatpng.caption +msgid "PNG (Slow, small files)" +msgstr "PNG (Медленно, небольшие файлы)" #: tfrmd3dtrainergeneratoroptions.btnclear.caption -msgctxt "TFRMD3DTRAINERGENERATOROPTIONS.BTNCLEAR.CAPTION" +msgctxt "tfrmd3dtrainergeneratoroptions.btnclear.caption" msgid "Clear" msgstr "Очистить" #: tfrmd3dtrainergeneratoroptions.button2.caption msgid "Set background picture" -msgstr "Фоновое изображение" +msgstr "Установить фоновое изображение" #: tfrmd3dtrainergeneratoroptions.button3.caption msgctxt "tfrmd3dtrainergeneratoroptions.button3.caption" @@ -10596,7 +11051,7 @@ msgid "Set Font" msgstr "Установить шрифт" #: tfrmd3dtrainergeneratoroptions.button4.caption -msgctxt "TFRMD3DTRAINERGENERATOROPTIONS.BUTTON4.CAPTION" +msgctxt "tfrmd3dtrainergeneratoroptions.button4.caption" msgid "Close" msgstr "Закрыть" @@ -10610,7 +11065,7 @@ msgstr "Разрешить перетаскивать трейнер" #: tfrmd3dtrainergeneratoroptions.cbhascheckbox.caption msgid "Cheats have checkboxes" -msgstr "Имеются чекбоксы" +msgstr "Есть читы с чекбоксами" #: tfrmd3dtrainergeneratoroptions.cbshowhotkeys.caption msgid "Show hotkeys" @@ -10618,9 +11073,16 @@ msgstr "Показать горячие клавиши" #: tfrmd3dtrainergeneratoroptions.cbstretch.caption msgid "Scale the background image" -msgstr "Масштабировать" +msgstr "Масштабировать фоновое изображение" #: tfrmd3dtrainergeneratoroptions.cbstretch.hint +msgid "" +"If selected the background image will get resized so that cheat entries will fit inside it\n" +"This is useful if you pick a 1x1 pixel size bitmap that you wish to stretch" +msgstr "" +"Фоновое изображение будет изменено так, чтобы записи читов поместились внутри него.\n" +"Это полезно, если вы выбрали растровое изображение размером 1x1 пиксель, которое нужно растянуть" + #: tfrmd3dtrainergeneratoroptions.cbused3dkeys.caption msgid "Use button to hide/show trainer" msgstr "Использовать клавишу для скрытия/показа трейнера" @@ -10630,7 +11092,6 @@ msgid "Transparency" msgstr "Прозрачность" #: tfrmd3dtrainergeneratoroptions.label2.caption -msgctxt "TFRMD3DTRAINERGENERATOROPTIONS.LABEL2.CAPTION" msgid "Position" msgstr "Позиция" @@ -10674,17 +11135,12 @@ msgstr "Вверху слева" msgid "Top right" msgstr "Вверху справа" -#: tfrmdbvmloadmanual.caption -msgid "Manual load DBVM" -msgstr "Ручная загрузка DBVM" - #: tfrmdbvmwatchconfig.btnok.caption -msgctxt "TFRMDBVMWATCHCONFIG.BTNOK.CAPTION" msgid "Start watch" msgstr "Начать наблюдение" #: tfrmdbvmwatchconfig.button2.caption -msgctxt "TFRMDBVMWATCHCONFIG.BUTTON2.CAPTION" +msgctxt "tfrmdbvmwatchconfig.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -10693,27 +11149,22 @@ msgid "DBVM Watch Config" msgstr "Конфигурация наблюдения DBVM" #: tfrmdbvmwatchconfig.cblockpage.caption -msgctxt "TFRMDBVMWATCHCONFIG.CBLOCKPAGE.CAPTION" msgid "Lock page" -msgstr "Заблокировать страницу" +msgstr "Фиксировать страницу" #: tfrmdbvmwatchconfig.cblockpage.hint -msgctxt "TFRMDBVMWATCHCONFIG.CBLOCKPAGE.HINT" msgid "This prevents the given page to get swapped out and later replaced by another physical address. (Make sure you unlock before the game quits)" -msgstr "Предотвращает смену данной страницы, а позже заменяет другим физическим адресом (Убедитесь, что вы сделали разблокировку перед выходом из игры)" +msgstr "Предотвращает подмену данной страницы и её последующую замену другим физическим адресом. (Убедитесь, что вы сняли фиксацию перед выходом из игры)" #: tfrmdbvmwatchconfig.cbmultiplerip.caption -msgctxt "TFRMDBVMWATCHCONFIG.CBMULTIPLERIP.CAPTION" msgid "Same instruction multiple times (different registers)" -msgstr "Одна и та же инструкция многократно (разные регистры)" +msgstr "Одна инструкция по несколько раз (разные регистры)" #: tfrmdbvmwatchconfig.cbsavefpu.caption -msgctxt "TFRMDBVMWATCHCONFIG.CBSAVEFPU.CAPTION" msgid "Log FPU data" msgstr "Регистрация данных FPU" #: tfrmdbvmwatchconfig.cbsavestack.caption -msgctxt "TFRMDBVMWATCHCONFIG.CBSAVESTACK.CAPTION" msgid "Log stack" msgstr "Регистрация стека" @@ -10722,38 +11173,41 @@ msgid "Saves a stacksnapshot of 4KB for each logged entry" msgstr "Сохраняет снимок стека размером 4 КБ для каждой зарегистрированной записи" #: tfrmdbvmwatchconfig.cbwholepage.caption -msgctxt "TFRMDBVMWATCHCONFIG.CBWHOLEPAGE.CAPTION" msgid "Log whole page instead of address range" msgstr "Регистрация всей страницы вместо диапазона адресов" +#: tfrmdbvmwatchconfig.edtphysicaladdress.texthint +msgctxt "tfrmdbvmwatchconfig.edtphysicaladdress.texthint" +msgid "Physical Address" +msgstr "Физический адрес" + #: tfrmdbvmwatchconfig.gbaccesstype.caption msgid "Access Type" msgstr "Тип доступа" #: tfrmdbvmwatchconfig.label3.caption msgid "Max buffersize (entries)" -msgstr "Максимальный размер буфера (записи)" +msgstr "Максимальный размер буфера (записей)" #: tfrmdbvmwatchconfig.lblphysicaladdress.caption -msgctxt "TFRMDBVMWATCHCONFIG.LBLPHYSICALADDRESS.CAPTION" msgid "Physical Address: " msgstr "Физический адрес: " #: tfrmdbvmwatchconfig.lblvirtualaddress.caption -msgctxt "TFRMDBVMWATCHCONFIG.LBLVIRTUALADDRESS.CAPTION" msgid "Virtual Address: " msgstr "Виртуальный адрес: " #: tfrmdbvmwatchconfig.rbexecuteaccess.caption +msgid "Execute Access" +msgstr "Выполнение" + #: tfrmdbvmwatchconfig.rbreadaccess.caption -msgctxt "TFRMDBVMWATCHCONFIG.RBREADACCESS.CAPTION" msgid "Read/Write Access" -msgstr "Доступ на Чтения/Запись" +msgstr "Чтения/Запись" #: tfrmdbvmwatchconfig.rbwriteaccess.caption -msgctxt "TFRMDBVMWATCHCONFIG.RBWRITEACCESS.CAPTION" msgid "Write Access " -msgstr "Доступ на запись " +msgstr "Запись" #: tfrmdebuggerattachtimeout.button1.caption msgid "Cancel wait" @@ -10762,7 +11216,7 @@ msgstr "Отменить ожидание" #: tfrmdebuggerattachtimeout.caption msgctxt "tfrmdebuggerattachtimeout.caption" msgid "Debugger attach timeout" -msgstr "Ожидание присоединения отладчика" +msgstr "Превышено время ожидания присоединения отладчика" #: tfrmdebuggerattachtimeout.label1.caption msgid "" @@ -10770,13 +11224,14 @@ msgid "" "\n" "Beware though that this will not stop the attaching process currently going on in the target process so you may have to restart the target process if you do wish to debug anyhow (and it may still freeze a few moments while symbols are being waited for)\n" "\n" -"(This window will disappear automatically when attaching has finished. Closing it manually is the same as pressing cancel)\n" +"(This window will disappear automatically when attaching has finished. Closing it manually is the same as pressing cancel)" msgstr "" -"Присоединение отладчика займёт время. Это нормально, когда существует много символов или система работает медленно, так что будьте терпеливы. Но если у вас нет времени на ожидание или программа аварийно завершилась, то вы можете отменить это ожидание.\n" +"Присоединение отладчика займёт время. Это нормально, когда существует много символов или система работает медленно, так что будьте терпеливы. Но если не желаете или программа аварийно завершается, то вы можете отменить это ожидание.\n" "\n" -"Однако имейте в виду, что это не остановит процесс присоединения, происходящий в данный момент в процессе цели, поэтому вам может потребоваться перезапуск процесса цели, если вы всё равно захотите отладить его (и он всё равно может застыть на несколько мгновений, в ожидании символов).\n" +"Однако имейте в виду, что это не остановит процедуру присоединения, происходящий в данный момент в выбранном процессе, поэтому вам может потребоваться перезапуск этого процесса, если вы всё равно захотите отладить его (и он всё равно может застыть на несколько мгновений, в ожидании символов).\n" "\n" "(Это окно исчезнет автоматически после завершения присоединения. Закрыть его вручную равнозначно нажатию кнопки отмены)\n" +"Вы хотите подождать подольше?" #: tfrmdebugsymbolstructurelist.btnsearch.caption msgctxt "tfrmdebugsymbolstructurelist.btnsearch.caption" @@ -10797,62 +11252,32 @@ msgid "Search pattern:" msgstr "Шаблон поиска:" #: tfrmdebugsymbolstructurelist.lblcount.caption -msgctxt "tfrmdebugsymbolstructurelist.lblcount.caption" msgid "There are currently xxx structures in the database" -msgstr "В настоящее время xxx структур имеются в базе данных" +msgstr "В настоящее время в базе данных имеется xxx структур(ы)" #: tfrmdebugsymbolstructurelist.lvstructlist.columns[0].caption msgctxt "tfrmdebugsymbolstructurelist.lvstructlist.columns[0].caption" msgid "Structures" msgstr "Структуры" -#: tfrmdebugevents.button1.caption -msgctxt "TFRMDEBUGEVENTS.BUTTON1.CAPTION" -msgid "Close" -msgstr "Закрыть" - -#: tfrmdebugevents.caption -msgid "Debug Events" -msgstr "Отладочные события" - -#: tfrmdebugevents.menuitem1.caption -msgctxt "TFRMDEBUGEVENTS.MENUITEM1.CAPTION" -msgid "Clear" -msgstr "Очистить" - #: tfrmdisassemblyscan.btncancel.caption -msgctxt "TFRMDISASSEMBLYSCAN.BTNCANCEL.CAPTION" +msgctxt "tfrmdisassemblyscan.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tfrmdisassemblyscan.caption msgid "Assemblyscan" -msgstr "Поиск инструкций" +msgstr "Поиск ассемблерного кода" #: tfrmdisassemblyscan.menuitem1.caption msgid "Go to this address" -msgstr "Перейти к этому адресу" +msgstr "Перейти на этот адрес" #: tfrmdisassemblyscan.menuitem2.caption -msgctxt "TFRMDISASSEMBLYSCAN.MENUITEM2.CAPTION" +msgctxt "tfrmdisassemblyscan.menuitem2.caption" msgid "Copy selection to clipboard" msgstr "Копировать выбранное в буфер обмена" -#: tfrmdissectwindow.button1.caption -msgctxt "tfrmdissectwindow.button1.caption" -msgid "More Info" -msgstr "Больше информации" - -#: tfrmexceptionignorelist.btnadd.caption -msgctxt "tfrmexceptionignorelist.btnadd.caption" -msgid "Add Exception " -msgstr "Добавить исключение" - -#: tfrmexceptionignorelist.midelete.caption -msgctxt "tfrmexceptionignorelist.midelete.caption" -msgid "Delete" -msgstr "Удалить" - #: tfrmdissectcode.btnstart.caption msgctxt "tfrmdissectcode.btnstart.caption" msgid "Start" @@ -10871,6 +11296,10 @@ msgstr "Включая системные модули" msgid "Maximum offset:" msgstr "Максимальное смещение:" +#: tfrmdissectcode.label10.caption +msgid "Custom range stop" +msgstr "Конец пользовательского диапазона" + #: tfrmdissectcode.label11.caption msgid "Calls:" msgstr "Вызовов:" @@ -10880,7 +11309,7 @@ msgid "Select the module(s) to dissect" msgstr "Выберите модули для анализа" #: tfrmdissectcode.label3.caption -msgid "Hold CTRL to select multiple" +msgid "Hold CTRL to select multiple modules" msgstr "Зажмите Ctrl для мультивыбора" #: tfrmdissectcode.label4.caption @@ -10896,6 +11325,10 @@ msgctxt "tfrmdissectcode.label6.caption" msgid "Estimated time left:" msgstr "Время до окончания:" +#: tfrmdissectcode.label8.caption +msgid "Custom range start" +msgstr "Начало пользовательского диапазона" + #: tfrmdissectcode.label9.caption msgid "Unconditional Jumps:" msgstr "Безусловных переходов:" @@ -10916,9 +11349,9 @@ msgid "Save" msgstr "Сохранить" #: tfrmdissectwindow.button1.caption -msgctxt "TFRMDISSECTWINDOW.BUTTON1.CAPTION" +msgctxt "tfrmdissectwindow.button1.caption" msgid "More Info" -msgstr "Больше информации" +msgstr "Дополнительная информация" #: tfrmdissectwindow.button2.caption msgid "Toggle visible" @@ -10930,10 +11363,10 @@ msgstr "Закрыть окно" #: tfrmdissectwindow.button4.caption msgid "Capture Timer Messages" -msgstr "Сообщения таймера" +msgstr "Захват сообщений таймера" #: tfrmdissectwindow.button5.caption -msgctxt "TFRMDISSECTWINDOW.BUTTON5.CAPTION" +msgctxt "tfrmdissectwindow.button5.caption" msgid "OK" msgstr "Подтвердить" @@ -10946,12 +11379,17 @@ msgctxt "tfrmdissectwindow.caption" msgid "Dissect Windows" msgstr "Анализ окон" +#: tfrmdriverlist.button1.caption +msgctxt "tfrmdriverlist.button1.caption" +msgid "OK" +msgstr "Подтвердить" + #: tfrmdotnetobjectlist.caption msgid ".Net Object List" msgstr "Список .Net объектов" #: tfrmdotnetobjectlist.listview1.columns[0].caption -msgctxt "TFRMDOTNETOBJECTLIST.LISTVIEW1.COLUMNS[0].CAPTION" +msgctxt "tfrmdotnetobjectlist.listview1.columns[0].caption" msgid "Address" msgstr "Адрес" @@ -10959,27 +11397,21 @@ msgstr "Адрес" msgid "Classname" msgstr "Название класса" -#: tfrmdriverlist.button1.caption -msgctxt "TFRMDRIVERLIST.BUTTON1.CAPTION" -msgid "OK" -msgstr "Подтвердить" - #: tfrmdriverlist.caption msgctxt "tfrmdriverlist.caption" msgid "Driver list" msgstr "Список драйверов" #: tfrmdriverlist.find1.caption -msgctxt "tfrmdriverlist.find1.caption" -msgid "Find" -msgstr "Поиск" +msgid "Find Driver" +msgstr "Найти драйвер" -#: tfrmdriverloaded.label1.caption -msgid "DBK64 LOADED" -msgstr "DBK64 ЗАГРУЖЕН" +#: tfrmdriverlist.menuitem1.caption +msgid "Find Exportname" +msgstr "Найти экспортное имя" #: tfrmedithistory.button1.caption -msgctxt "TFRMEDITHISTORY.BUTTON1.CAPTION" +msgctxt "tfrmedithistory.button1.caption" msgid "Refresh" msgstr "Обновить" @@ -10988,39 +11420,67 @@ msgid "Write log" msgstr "Журнал записей" #: tfrmedithistory.cblogwrites.caption -msgctxt "TFRMEDITHISTORY.CBLOGWRITES.CAPTION" msgid "Enable write logging" msgstr "Включить ведение журнала записей" #: tfrmedithistory.label1.caption msgctxt "tfrmedithistory.label1.caption" msgid "Max log size (nr of entries)" -msgstr "Максимальный размер журнала(количество записей)" +msgstr "Макс. размер журнала(кол-во записей)" #: tfrmedithistory.lvwritelog.columns[0].caption -msgctxt "TFRMEDITHISTORY.LVWRITELOG.COLUMNS[0].CAPTION" +msgctxt "tfrmedithistory.lvwritelog.columns[0].caption" msgid "Address" msgstr "Адрес" #: tfrmedithistory.lvwritelog.columns[1].caption -msgctxt "TFRMEDITHISTORY.LVWRITELOG.COLUMNS[1].CAPTION" msgid "Original bytes" msgstr "Ориг. байты" #: tfrmedithistory.lvwritelog.columns[2].caption -msgctxt "TFRMEDITHISTORY.LVWRITELOG.COLUMNS[2].CAPTION" msgid "New bytes" msgstr "Новые байты" #: tfrmedithistory.miundo.caption -msgctxt "TFRMEDITHISTORY.MIUNDO.CAPTION" +msgctxt "tfrmedithistory.miundo.caption" msgid "Undo" msgstr "Отменить" +#: tfrmenumeratedlls.button1.caption +msgctxt "tfrmenumeratedlls.button1.caption" +msgid "Close" +msgstr "Закрыть" + +#: tfrmenumeratedlls.button2.caption +msgid "Cancel Enum" +msgstr "Отмена" + +#: tfrmenumeratedlls.caption +msgid "Enumerate DLL's" +msgstr "Список загруженных dll" + +#: tfrmenumeratedlls.copysymbolname.caption +msgid "Copy Symbol Name" +msgstr "Копировать имя символа" + +#: tfrmenumeratedlls.find.caption +msgctxt "tfrmenumeratedlls.find.caption" +msgid "Find" +msgstr "Поиск" + +#: tfrmenumeratedlls.label2.caption +msgctxt "tfrmenumeratedlls.label2.caption" +msgid "Symbols" +msgstr "Символы" + +#: tfrmenumeratedlls.mifindnext.caption +msgctxt "tfrmenumeratedlls.mifindnext.caption" +msgid "Find Next..." +msgstr "Найти далее..." + #: tfrmexceptionignorelist.btnadd.caption -msgctxt "TFRMEXCEPTIONIGNORELIST.BTNADD.CAPTION" -msgid "Add" -msgstr "Добавить" +msgid "Add Exception " +msgstr "Добавить Исключение" #: tfrmexceptionignorelist.caption msgid "Exception ignore list" @@ -11034,85 +11494,20 @@ msgstr "Будут игнорированы следующие исключен msgid "Exception code" msgstr "Код исключения" -#: tfrmexceptionregionlist.btnadd.caption -msgctxt "TFRMEXCEPTIONREGIONLIST.BTNADD.CAPTION" -msgid "Add" -msgstr "Добавить" - -#: tfrmexceptionregionlist.caption -msgid "Exception region list" -msgstr "Список исключений в регионах" - -#: tfrmexceptionregionlist.cbautoaddallocs.caption -msgid "Automatically add user allocations" -msgstr "Автодобавление пользовательских выделений" - -#: tfrmexceptionregionlist.label1.caption -msgid "The following regions will cause a debugger break when an unhandled exception happens inside them" -msgstr "Следующие регионы вызовут прерывание отладчика, когда в них произойдёт необработанное исключение" - -#: tfrmexceptionregionlist.label2.caption -msgctxt "TFRMEXCEPTIONREGIONLIST.LABEL2.CAPTION" -msgid "Start address" -msgstr "Стартовый адрес" - -#: tfrmexceptionregionlist.label3.caption -msgid "End address" -msgstr "Конечный адрес" - -#: tfrmexceptionregionlist.miclear.caption -msgctxt "TFRMEXCEPTIONREGIONLIST.MICLEAR.CAPTION" -msgid "Clear" -msgstr "Очистить" - -#: tfrmexceptionregionlist.mifile.caption -msgctxt "TFRMEXCEPTIONREGIONLIST.MIFILE.CAPTION" -msgid "File" -msgstr "Файл" - -#: tfrmexceptionregionlist.miopen.caption -msgid "Open..." -msgstr "Открыть..." - -#: tfrmexceptionregionlist.misave.caption -msgid "Save..." -msgstr "Сохранить..." - -#: tfrmenumeratedlls.button1.caption -msgctxt "TFRMENUMERATEDLLS.BUTTON1.CAPTION" -msgid "Close" -msgstr "Закрыть" - -#: tfrmenumeratedlls.button2.caption -msgid "Cancel Enum" -msgstr "Отмена" - -#: tfrmenumeratedlls.caption -msgid "Enumerate DLL's" -msgstr "Список загруженных DLL" - -#: tfrmenumeratedlls.copysymbolname.caption -msgid "Copy Symbol Name" -msgstr "Копировать имя символа" - -#: tfrmenumeratedlls.find.caption -msgctxt "TFRMENUMERATEDLLS.FIND.CAPTION" -msgid "Find" -msgstr "Поиск" - -#: tfrmenumeratedlls.label2.caption -msgid "Symbols" -msgstr "Символы" +#: tfrmexceptionignorelist.midelete.caption +msgctxt "tfrmexceptionignorelist.midelete.caption" +msgid "Delete" +msgstr "Удалить" #: tfrmexcludehide.button1.caption -msgctxt "TFRMEXCLUDEHIDE.BUTTON1.CAPTION" +msgctxt "tfrmexcludehide.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmexcludehide.button2.caption -msgctxt "TFRMEXCLUDEHIDE.BUTTON2.CAPTION" +msgctxt "tfrmexcludehide.button2.caption" msgid "Cancel" -msgstr "Отмена" +msgstr "Отменаить" #: tfrmexcludehide.caption msgid "Show/Hide settings" @@ -11128,7 +11523,7 @@ msgstr "Список текущих процессов" #: tfrmexcludehide.label3.caption msgid "List of processes that will not hide" -msgstr "Процессы, которые не скроются" +msgstr "Процессы, которые не будут скрываться" #: tfrmexcludehide.label4.caption msgid "Select the way cheat Engine hides/shows windows. (Will not work if a window that gets hidden or shown is not responding. E.g:Paused)" @@ -11136,7 +11531,7 @@ msgstr "Выберите способ скрытия/показа окон. (Н #: tfrmexcludehide.radiobutton1.caption msgid "Only hide/show the foreground window" -msgstr "Скрывать/показывать только активное окно" +msgstr "Скрывать/показывать только окно переднего плана" #: tfrmexcludehide.radiobutton2.caption msgid "Hide/show ALL windows" @@ -11167,14 +11562,14 @@ msgstr "Добавить папку" msgid "Exe Trainer Generator" msgstr "Генератор EXE трейнера" +#: tfrmexetrainergenerator.cbccode.caption +msgid "C-Code" +msgstr "Си-Код" + #: tfrmexetrainergenerator.cbd3dhook.caption msgid "D3DHook" msgstr "Перехват D3D" -#: tfrmexetrainergenerator.cbdotnet.caption -msgid ".NET" -msgstr ".NET" - #: tfrmexetrainergenerator.cbgigantic.caption msgid "Gigantic" msgstr "Гигантский" @@ -11183,9 +11578,13 @@ msgstr "Гигантский" msgid "Puts the Cheat Engine executable, dll's and other requirements into the trainer" msgstr "Включает в себя исполняемый файл Cheat Engine, dll'ки и другие необходимые файлы" +#: tfrmexetrainergenerator.cbincludes.caption +msgid "C-#includes" +msgstr "C-#includes" + #: tfrmexetrainergenerator.cbkerneldebug.caption msgid "Kernel Tools" -msgstr "Инструменты ядра" +msgstr "Инструментарий ядра" #: tfrmexetrainergenerator.cbmodplayer.caption msgid "Module Player" @@ -11204,14 +11603,14 @@ msgid "Only put the trainer data in the trainer. The user must have Cheat Engine msgstr "Включает в себя только данные. Для запуска такого трейнера у пользователя должен быть установлен Cheat Engine" #: tfrmexetrainergenerator.cbvehdebug.caption -msgctxt "TFRMEXETRAINERGENERATOR.CBVEHDEBUG.CAPTION" +msgctxt "tfrmexetrainergenerator.cbvehdebug.caption" msgid "VEH Debugger" msgstr "VEH отладчик" #: tfrmexetrainergenerator.combocompression.text msgctxt "tfrmexetrainergenerator.combocompression.text" msgid "Max" -msgstr "Макс." +msgstr "Максимум" #: tfrmexetrainergenerator.groupbox1.caption msgid "Process" @@ -11235,7 +11634,7 @@ msgid "Compression" msgstr "Сжатие" #: tfrmexetrainergenerator.listview1.columns[0].caption -msgctxt "TFRMEXETRAINERGENERATOR.LISTVIEW1.COLUMNS[0].CAPTION" +msgctxt "tfrmexetrainergenerator.listview1.columns[0].caption" msgid "File" msgstr "Файл" @@ -11248,12 +11647,153 @@ msgid "Edit folder" msgstr "Изменить папку" #: tfrmexetrainergenerator.rb32.caption -msgid "Target process is 32-bit" -msgstr "Целью является 32-битный процесс" +msgid "Target is 32-bit" +msgstr "Цель 32-битная" #: tfrmexetrainergenerator.rb64.caption -msgid "Target process is 64-bit" -msgstr "Целью является 64-битный процесс" +msgid "Target is 64-bit" +msgstr "Цель 64-битная" + +#: tfrmfillmemory.button1.caption +msgctxt "tfrmfillmemory.button1.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmfillmemory.button2.caption +msgctxt "tfrmfillmemory.button2.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmfillmemory.caption +msgid "Fill memory" +msgstr "Заполнить память" + +#: tfrmfillmemory.label1.caption +msgctxt "tfrmfillmemory.label1.caption" +msgid "From" +msgstr "От" + +#: tfrmfillmemory.label2.caption +msgctxt "tfrmfillmemory.label2.caption" +msgid "To" +msgstr "До" + +#: tfrmfillmemory.label3.caption +msgid "Fill with" +msgstr "Заполнить" + +#: tfrmfinddialog.btnfind.caption +msgctxt "tfrmfinddialog.btnfind.caption" +msgid "Find" +msgstr "Найти" + +#: tfrmfinddialog.button1.caption +msgctxt "tfrmfinddialog.button1.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmfinddialog.caption +msgctxt "tfrmfinddialog.caption" +msgid "Find" +msgstr "Найти" + +#: tfrmfinddialog.cbcasesensitive.caption +msgctxt "tfrmfinddialog.cbcasesensitive.caption" +msgid "Case sensitive" +msgstr "Учитывать регистр" + +#: tfrmfinddialog.gbdirection.caption +msgid "Direction" +msgstr "Направление" + +#: tfrmfinddialog.label1.caption +msgctxt "tfrmfinddialog.label1.caption" +msgid "Text" +msgstr "Текст" + +#: tfrmfinddialog.lbldescription.caption +msgid "Enter the text to search:" +msgstr "Введите текст для поиска:" + +#: tfrmfinddialog.rbdirectiondown.caption +msgid "Down" +msgstr "Вниз" + +#: tfrmfinddialog.rbdirectionup.caption +msgid "Up" +msgstr "Вверх" + +#: tfrmfindstatics.button1.caption +msgctxt "tfrmfindstatics.button1.caption" +msgid "Stopping..." +msgstr "Остановка..." + +#: tfrmfindstatics.caption +msgctxt "tfrmfindstatics.caption" +msgid "Find static addresses" +msgstr "Поиск статичных адресов" + +#: tfrmfindstatics.checkbox1.caption +msgid "Only disassemble and check executable code" +msgstr "Только разбирать и проверять исполняемый код" + +#: tfrmfindstatics.label1.caption +msgctxt "tfrmfindstatics.label1.caption" +msgid "From" +msgstr "От" + +#: tfrmfindstatics.label2.caption +msgctxt "tfrmfindstatics.label2.caption" +msgid "To:" +msgstr "До:" + +#: tfrmfindstatics.label4.caption +msgid "Filter addresses" +msgstr "Фильтровать адреса" + +#: tfrmfindstatics.label5.caption +msgctxt "tfrmfindstatics.label5.caption" +msgid "From" +msgstr "От" + +#: tfrmfindstatics.label6.caption +msgctxt "tfrmfindstatics.label6.caption" +msgid "To:" +msgstr "До:" + +#: tfrmfindstatics.listview1.columns[0].caption +msgctxt "tfrmfindstatics.listview1.columns[0].caption" +msgid "Address" +msgstr "Адрес" + +#: tfrmfindstatics.listview1.columns[1].caption +msgid "Pointer?" +msgstr "Указатель?" + +#: tfrmfindstatics.listview1.columns[2].caption +msgid "Reference count" +msgstr "Кол-во ссылок" + +#: tfrmfloatingpointpanel.caption +msgid "FPU" +msgstr "Регистры с плавающей точкой" + +#: tfrmfloatingpointpanel.cbclassicview.caption +msgid "Classic view" +msgstr "Классический вид" + +#: tfrmfloatingpointpanel.cbcontextsection.text +msgid "XMMRegisters" +msgstr "Регистры XMM" + +#: tfrmfloatingpointpanel.cbdisplaytype.text +msgctxt "tfrmfloatingpointpanel.cbdisplaytype.text" +msgid "Float" +msgstr "Float" + +#: tfrmfloatingpointpanel.tabsheet2.caption +msgid "Extended" +msgstr "Расширенные" #: tfrmfoundlistpreferences.btncancel.caption msgctxt "tfrmfoundlistpreferences.btncancel.caption" @@ -11271,18 +11811,22 @@ msgstr "Подтвердить" #: tfrmfoundlistpreferences.caption msgid "Foundlist Customizer" -msgstr "Настройщик списка" +msgstr "Настройщик списка найденного" #: tfrmfoundlistpreferences.cbshowstaticasstatic.caption msgid "Show static addresses using their static notation" -msgstr "Показывать статические адреса с помощью их статической нотации" +msgstr "Показывать статичные адреса, используя их статичную нотацию" + +#: tfrmfoundlistpreferences.cbusethisfontsize.caption +msgid "override font size" +msgstr "переопределить размер шрифта" #: tfrmfoundlistpreferences.label1.caption +msgctxt "tfrmfoundlistpreferences.label1.caption" msgid "Static" -msgstr "Статический" +msgstr "Статичный" #: tfrmfoundlistpreferences.label2.caption -msgctxt "tfrmfoundlistpreferences.label2.caption" msgid "Example" msgstr "Пример" @@ -11304,6 +11848,10 @@ msgctxt "tfrmfoundlistpreferences.label6.caption" msgid "Background color" msgstr "Цвет фона" +#: tfrmfoundlistpreferences.label7.caption +msgid "'Compare To' header color" +msgstr "Цвет заголовка «Сравнить с»" + #: tfrmfoundlistpreferences.listview1.columns[0].caption msgctxt "tfrmfoundlistpreferences.listview1.columns[0].caption" msgid "Address" @@ -11314,6 +11862,86 @@ msgctxt "tfrmfoundlistpreferences.listview1.columns[1].caption" msgid "Value" msgstr "Значение" +#: tfrmgdbserverconnectdialog.button1.caption +msgctxt "tfrmgdbserverconnectdialog.button1.caption" +msgid "Connect" +msgstr "Соединение" + +#: tfrmgdbserverconnectdialog.caption +msgid "GDB Server connect" +msgstr "Подключение к серверу GDB" + +#: tfrmgdbserverconnectdialog.label1.caption +msgid "Hostname" +msgstr "Имя хоста" + +#: tfrmgdbserverconnectdialog.label2.caption +msgctxt "tfrmgdbserverconnectdialog.label2.caption" +msgid "Port" +msgstr "Порт" + +#: tfrmgdtinfo.caption +msgid "GDT" +msgstr "Таблица глобальных дескрипторов" + +#: tfrmgroupscanalgoritmgenerator.btncancel.caption +msgctxt "tfrmgroupscanalgoritmgenerator.btncancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmgroupscanalgoritmgenerator.btnok.caption +msgctxt "tfrmgroupscanalgoritmgenerator.btnok.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmgroupscanalgoritmgenerator.caption +msgctxt "tfrmgroupscanalgoritmgenerator.caption" +msgid "Generate groupscan command" +msgstr "Генерация группового поиска" + +#: tfrmgroupscanalgoritmgenerator.cboutoforder.caption +msgid "Out of order" +msgstr "Не по порядку" + +#: tfrmgroupscanalgoritmgenerator.cbtypealigned.caption +msgid "Must be type-aligned" +msgstr "Должно быть выровнено по типу" + +#: tfrmgroupscanalgoritmgenerator.lblblockalignment.caption +msgid "Block alignment" +msgstr "Выравнивание блока" + +#: tfrmgroupscanalgoritmgenerator.lblblocksize.caption +msgid "Blocksize" +msgstr "Размер блока" + +#: tfrmgroupscanalgoritmgenerator.lblmustbedividable.caption +msgid "Must be dividable by 4" +msgstr "Должно быть кратно 4" + +#: tfrmgroupscanalgoritmgenerator.lblwildcardexplanation.caption +msgid "Leave a value empty or use * for wildcard" +msgstr "Оставьте значение пустым или воспользуйтесь подстановочным знаком *" + +#: tfrmheaps.button1.caption +msgctxt "tfrmheaps.button1.caption" +msgid "Close" +msgstr "Закрыть" + +#: tfrmheaps.caption +msgid "Current Heaplist" +msgstr "Текущий список куч" + +#: tfrmheaps.listview1.columns[0].caption +msgctxt "tfrmheaps.listview1.columns[0].caption" +msgid "Address" +msgstr "Адрес" + +#: tfrmheaps.listview1.columns[1].caption +msgctxt "tfrmheaps.listview1.columns[1].caption" +msgid "Size" +msgstr "Размер" + #: tfrmhighlightereditor.button1.caption msgctxt "tfrmhighlightereditor.button1.caption" msgid "OK" @@ -11330,7 +11958,7 @@ msgstr "Конфигуратор подсветки" #: tfrmhighlightereditor.cbbold.caption msgid "Bold" -msgstr "Полужирный" +msgstr "Жирный" #: tfrmhighlightereditor.cbitalic.caption msgid "Italic" @@ -11351,283 +11979,77 @@ msgstr "Цвет фона" #: tfrmhighlightereditor.label3.caption msgid "Foreground Color" -msgstr "Цвет текста" +msgstr "Цвет переднего плана" #: tfrmhighlightereditor.label4.caption msgid "Style" msgstr "Стиль" -#: tfrmfilepatcher.button1.caption -msgid "Patch" -msgstr "Патч" +#: tfrmiptlogdisplay.btnfetchall.caption +msgctxt "tfrmiptlogdisplay.btnfetchall.caption" +msgid "Fetch All" +msgstr "Получить Всё" -#: tfrmfilepatcher.caption -msgid "File patcher" -msgstr "Патчер файла" +#: tfrmiptlogdisplay.btnfetchmore.caption +msgctxt "tfrmiptlogdisplay.btnfetchmore.caption" +msgid "Fetch more" +msgstr "Получить ещё" -#: tfrmfilepatcher.lblbaseaddress.caption -msgid "Base address (MZ header)" -msgstr "Базовый адрес (MZ заголовок)" +#: tfrmiptlogdisplay.caption +msgid "IPT Log Display" +msgstr "Отображение журнала IPT" -#: tfrmfilepatcher.lblfilename.caption -msgctxt "tfrmfilepatcher.lblfilename.caption" -msgid "Filename" -msgstr "Название файла" +#: tfrmiptlogdisplay.cbshowastree.caption +msgid "Show as tree" +msgstr "Показать в виде дерева" -#: tfrmfilepatcher.rbauto.caption -msgid "Apply changes for specified module" -msgstr "Применить изменения для указанного модуля" +#: tfrmiptlogdisplay.lvresults.columns[0].caption +msgctxt "tfrmiptlogdisplay.lvresults.columns[0].caption" +msgid "Frequency" +msgstr "Частота" -#: tfrmfilepatcher.rbmanual.caption -msgid "Manual" -msgstr "Вручную" - -#: tfrmfillmemory.button1.caption -msgctxt "TFRMFILLMEMORY.BUTTON1.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmfillmemory.button2.caption -msgctxt "TFRMFILLMEMORY.BUTTON2.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmfillmemory.caption -msgid "Fill memory" -msgstr "Заполнить память" - -#: tfrmfillmemory.label1.caption -msgctxt "TFRMFILLMEMORY.LABEL1.CAPTION" -msgid "From" -msgstr "От" - -#: tfrmfillmemory.label2.caption -msgctxt "TFRMFILLMEMORY.LABEL2.CAPTION" -msgid "To" -msgstr "До" - -#: tfrmfillmemory.label3.caption -msgid "Fill with" -msgstr "Заполнить" - -#: tfrmfinddialog.btnfind.caption -msgctxt "TFRMFINDDIALOG.BTNFIND.CAPTION" -msgid "Find" -msgstr "Найти" - -#: tfrmfinddialog.button1.caption -msgctxt "TFRMFINDDIALOG.BUTTON1.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmfinddialog.caption -msgctxt "TFRMFINDDIALOG.CAPTION" -msgid "Find" -msgstr "Найти" - -#: tfrmfinddialog.cbcasesensitive.caption -msgctxt "TFRMFINDDIALOG.CBCASESENSITIVE.CAPTION" -msgid "Case sensitive" -msgstr "С учётом регистра" - -#: tfrmfinddialog.label1.caption -msgctxt "TFRMFINDDIALOG.LABEL1.CAPTION" -msgid "Text" -msgstr "Текст" - -#: tfrmfinddialog.lbldescription.caption -msgid "Enter the text to search:" -msgstr "Введите текст для поиска:" - -#: tfrmfinddialog.rgupdown.caption -msgid "Direction" -msgstr "Направление" - -#: tfrmfindstatics.button1.caption -msgctxt "tfrmfindstatics.button1.caption" -msgid "Stopping..." -msgstr "Остановка..." - -#: tfrmfindstatics.caption -msgctxt "tfrmfindstatics.caption" -msgid "Find static addresses" -msgstr "Поиск статических адресов" - -#: tfrmfindstatics.checkbox1.caption -msgid "Only disassemble and check executable code" -msgstr "Только разбирать и проверять исполняемый код" - -#: tfrmfindstatics.label1.caption -msgctxt "TFRMFINDSTATICS.LABEL1.CAPTION" -msgid "From" -msgstr "От" - -#: tfrmfindstatics.label2.caption -msgctxt "tfrmfindstatics.label2.caption" -msgid "To:" -msgstr "До:" - -#: tfrmfindstatics.label4.caption -msgid "Filter addresses" -msgstr "Отфильтровать адреса" - -#: tfrmfindstatics.label5.caption -msgctxt "TFRMFINDSTATICS.LABEL5.CAPTION" -msgid "From" -msgstr "От" - -#: tfrmfindstatics.label6.caption -msgctxt "TFRMFINDSTATICS.LABEL6.CAPTION" -msgid "To:" -msgstr "До:" - -#: tfrmfindstatics.listview1.columns[0].caption -msgctxt "TFRMFINDSTATICS.LISTVIEW1.COLUMNS[0].CAPTION" +#: tfrmiptlogdisplay.lvresults.columns[1].caption +msgctxt "tfrmiptlogdisplay.lvresults.columns[1].caption" msgid "Address" msgstr "Адрес" -#: tfrmfindstatics.listview1.columns[1].caption -msgid "Pointer?" -msgstr "Указатель?" +#: tfrmiptlogdisplay.lvresults.columns[2].caption +msgctxt "tfrmiptlogdisplay.lvresults.columns[2].caption" +msgid "Instruction" +msgstr "Инструкция" -#: tfrmfindstatics.listview1.columns[2].caption -msgid "Reference count" -msgstr "Кол-во ссылок" +#: tfrmiptlogdisplay.menuitem1.caption +msgctxt "tfrmiptlogdisplay.menuitem1.caption" +msgid "Expand all" +msgstr "Развернуть все" -#: tfrmfloatingpointpanel.caption -msgid "FPU" -msgstr "Регистры с плавающей точкой" +#: tfrmiptlogdisplay.menuitem2.caption +msgctxt "tfrmiptlogdisplay.menuitem2.caption" +msgid "Collapse all" +msgstr "Свернуть все" -#: tfrmfloatingpointpanel.cbclassicview.caption -msgid "Classic view" -msgstr "Классический вид" +#: tfrmiptlogdisplay.mifile.caption +msgctxt "tfrmiptlogdisplay.mifile.caption" +msgid "File" +msgstr "Файл" -#: tfrmfloatingpointpanel.cbcontextsection.text -msgctxt "TFRMFLOATINGPOINTPANEL.CBCONTEXTSECTION.TEXT" -msgid "XMMRegisters" -msgstr "Регистры XMM" - -#: tfrmfloatingpointpanel.cbdisplaytype.text -msgctxt "TFRMFLOATINGPOINTPANEL.CBDISPLAYTYPE.TEXT" -msgid "Float" -msgstr "Float" - -#: tfrmfloatingpointpanel.tabsheet2.caption -msgctxt "tfrmfloatingpointpanel.tabsheet2.caption" -msgid "Extended" -msgstr "Расширенные" - -#: tfrmgdtinfo.caption -msgid "GDT" -msgstr "Таблица глобальных дескрипторов" - -#: tfrmgnuassembler.caption -msgid "GNU Assembler+" -msgstr "GNU Ассемблер+" - -#: tfrmgroupscanalgoritmgenerator.btncancel.caption -msgctxt "TFRMGROUPSCANALGORITMGENERATOR.BTNCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmgroupscanalgoritmgenerator.btnok.caption -msgctxt "TFRMGROUPSCANALGORITMGENERATOR.BTNOK.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmgroupscanalgoritmgenerator.caption -msgctxt "tfrmgroupscanalgoritmgenerator.caption" -msgid "Generate groupscan command" -msgstr "Генерация группового поиска" - -#: tfrmgroupscanalgoritmgenerator.cboutoforder.caption -msgid "Out of order" -msgstr "Не по порядку" - -#: tfrmgroupscanalgoritmgenerator.cbtypealigned.caption -msgid "Must be type-aligned" -msgstr "Выровнять по типу" - -#: tfrmgroupscanalgoritmgenerator.lblblockalignment.caption -msgid "Block alignment" -msgstr "Выравнивание блока" - -#: tfrmgroupscanalgoritmgenerator.lblblocksize.caption -msgid "Blocksize" -msgstr "Размер блока" - -#: tfrmgroupscanalgoritmgenerator.lblmin.caption -msgid "lblMin" -msgstr "lblMin" - -#: tfrmgroupscanalgoritmgenerator.lblmustbedividable.caption -msgid "Must be dividable by 4" -msgstr "Должно быть кратно 4" - -#: tfrmgroupscanalgoritmgenerator.lblwildcardexplanation.caption -msgid "Leave a value empty or use * for wildcard" -msgstr "" -"Оставьте значение пустым или воспользуйтесь\n" -"подстановочным знаком *" - -#: tfrmheaps.button1.caption -msgctxt "TFRMHEAPS.BUTTON1.CAPTION" -msgid "Close" -msgstr "Закрыть" - -#: tfrmheaps.caption -msgid "Current Heaplist" -msgstr "Текущий список куч" - -#: tfrmheaps.listview1.columns[0].caption -msgctxt "TFRMHEAPS.LISTVIEW1.COLUMNS[0].CAPTION" -msgid "Address" -msgstr "Адрес" - -#: tfrmheaps.listview1.columns[1].caption -msgctxt "TFRMHEAPS.LISTVIEW1.COLUMNS[1].CAPTION" -msgid "Size" -msgstr "Размер" - -#: tfrmhotkeyex.button1.caption -msgctxt "TFRMHOTKEYEX.BUTTON1.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmhotkeyex.button2.caption -msgctxt "TFRMHOTKEYEX.BUTTON2.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmhotkeyex.button3.caption -msgctxt "TFRMHOTKEYEX.BUTTON3.CAPTION" -msgid "Clear" -msgstr "Очистить" - -#: tfrmhotkeyex.caption -msgid "Set Hotkey" -msgstr "Назначение горячих клавиш" - -#: tfrmhotkeyex.label1.caption -msgid "Press the key combination you want to use" -msgstr "Нажмите комбинацию, которую хотите использовать" - -#: tfrmidt.caption -msgid "IDT" -msgstr "Таблица дескрипторов прерываний" +#: tfrmiptlogdisplay.misavetofile.caption +msgctxt "tfrmiptlogdisplay.misavetofile.caption" +msgid "Save to file" +msgstr "Сохранить в файл" #: tfrmloadmemory.button1.caption -msgctxt "TFRMLOADMEMORY.BUTTON1.CAPTION" +msgctxt "tfrmloadmemory.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmloadmemory.button2.caption -msgctxt "TFRMLOADMEMORY.BUTTON2.CAPTION" +msgctxt "tfrmloadmemory.button2.caption" msgid "Cancel" msgstr "Отмена" #: tfrmloadmemory.button3.caption -msgctxt "TFRMLOADMEMORY.BUTTON3.CAPTION" +msgctxt "tfrmloadmemory.button3.caption" msgid "Edit" msgstr "Редактировать" @@ -11636,20 +12058,15 @@ msgid "Load Memory Region" msgstr "Загрузить регион памяти" #: tfrmloadmemory.label1.caption -msgctxt "TFRMLOADMEMORY.LABEL1.CAPTION" +msgctxt "tfrmloadmemory.label1.caption" msgid "Address:" msgstr "Адрес:" #: tfrmluaengine.btnexecute.caption -msgctxt "TFRMLUAENGINE.BTNEXECUTE.CAPTION" +msgctxt "tfrmluaengine.btnexecute.caption" msgid "Execute" msgstr "Выполнить" -#: tfrmluaengine.caption -msgctxt "tfrmluaengine.caption" -msgid "Lua Engine" -msgstr "Lua Engine" - #: tfrmluaengine.cbshowonprint.caption msgid "Show on \"print\"" msgstr "Всплытие окна Lua Engine при вызове функции «print»" @@ -11657,10 +12074,10 @@ msgstr "Всплытие окна Lua Engine при вызове функции #: tfrmluaengine.groupbox1.caption msgctxt "tfrmluaengine.groupbox1.caption" msgid "Output" -msgstr "Вывод" +msgstr "Выходные данные" #: tfrmluaengine.menuitem1.caption -msgctxt "TFRMLUAENGINE.MENUITEM1.CAPTION" +msgctxt "tfrmluaengine.menuitem1.caption" msgid "File" msgstr "Файл" @@ -11684,7 +12101,7 @@ msgstr "Сохранить текущий скрипт" #: tfrmluaengine.menuitem5.caption msgid "Clear output" -msgstr "Очистить вывод" +msgstr "Очистить выходные данные" #: tfrmluaengine.miautocomplete.caption msgid "Autocomplete" @@ -11711,7 +12128,6 @@ msgid "Find" msgstr "Найти" #: tfrmluaengine.mifindreplace.caption -msgctxt "tfrmluaengine.mifindreplace.caption" msgid "Find/Replace" msgstr "Найти/Заменить" @@ -11727,24 +12143,25 @@ msgstr "Вернуть" #: tfrmluaengine.miresizeoutput.caption msgid "Resize output on resize" -msgstr "Изменять размер вывода при изменении размера окна" +msgstr "Изменять размер выходных данных при изменении размера окна" #: tfrmluaengine.mirun.caption msgctxt "tfrmluaengine.mirun.caption" msgid "Run" -msgstr "Запустить" +msgstr "Выполнить" #: tfrmluaengine.misavecurrentscriptas.caption msgid "Save current script as..." msgstr "Сохранить текущий скрипт как..." #: tfrmluaengine.misetbreakpoint.caption +msgctxt "tfrmluaengine.misetbreakpoint.caption" msgid "Set breakpoint" msgstr "Установить брейкпоинт" #: tfrmluaengine.mishowscriptinoutput.caption msgid "Show script in output" -msgstr "Показывать скрипт в выводе" +msgstr "Показывать скрипт в выходных данных" #: tfrmluaengine.misinglestep.caption msgid "Single step" @@ -11756,7 +12173,7 @@ msgid "Undo" msgstr "Отменить" #: tfrmluaengine.miview.caption -msgctxt "TFRMLUAENGINE.MIVIEW.CAPTION" +msgctxt "tfrmluaengine.miview.caption" msgid "View" msgstr "Вид" @@ -11769,17 +12186,17 @@ msgid "Single Step" msgstr "Шаг" #: tfrmluaengine.tbstopdebug.hint -msgctxt "TFRMLUAENGINE.TBSTOPDEBUG.HINT" +msgctxt "tfrmluaengine.tbstopdebug.hint" msgid "Stop" msgstr "Стоп" #: tfrmluascriptquestion.button1.caption -msgctxt "TFRMLUASCRIPTQUESTION.BUTTON1.CAPTION" +msgctxt "tfrmluascriptquestion.button1.caption" msgid "Yes" msgstr "Да" #: tfrmluascriptquestion.button2.caption -msgctxt "TFRMLUASCRIPTQUESTION.BUTTON2.CAPTION" +msgctxt "tfrmluascriptquestion.button2.caption" msgid "No" msgstr "Нет" @@ -11789,12 +12206,12 @@ msgstr "Выполнить этот lua скрипт?" #: tfrmluascriptquestion.groupbox5.caption msgid "Future reference:" -msgstr "Дальнейшая ссылка:" +msgstr "Будущая ссылка:" #: tfrmluascriptquestion.label16.caption msgctxt "tfrmluascriptquestion.label16.caption" msgid "When a table has a lua script, execute it:" -msgstr "Выполнять lua скрипт, если он присутствует в таблице:" +msgstr "Если таблица содержит lua скрипт, выполнять его:" #: tfrmluascriptquestion.rbalways.caption msgctxt "tfrmluascriptquestion.rbalways.caption" @@ -11832,37 +12249,6 @@ msgstr "Только если подписан, иначе спрашивать" msgid "Only automatically execute lua scripts from trusted sources, else ask" msgstr "Автоматически выполнять lua скрипты только из доверяемых источников, иначе спрашивать" -#: tfrmmanualstacktraceconfig.btncancel.caption -msgctxt "TFRMMANUALSTACKTRACECONFIG.BTNCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmmanualstacktraceconfig.btnok.caption -msgctxt "TFRMMANUALSTACKTRACECONFIG.BTNOK.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmmanualstacktraceconfig.caption -msgid "Manual stacktrace config" -msgstr "Конфигурация ручной трассировки стека" - -#: tfrmmanualstacktraceconfig.cbuseshadow.caption -msgid "Use shadow copy" -msgstr "Использовать теневую копию" - -#: tfrmmanualstacktraceconfig.label1.caption -msgid "Original base" -msgstr "Оригинальная основа" - -#: tfrmmanualstacktraceconfig.label3.caption -msgctxt "TFRMMANUALSTACKTRACECONFIG.LABEL3.CAPTION" -msgid "Size" -msgstr "Размер" - -#: tfrmmanualstacktraceconfig.label4.caption -msgid "New copy" -msgstr "Новая копия" - #: tfrmmemoryallochandler.btnreload.caption msgid "Reload" msgstr "Обновить" @@ -11893,7 +12279,7 @@ msgstr "Базовый адрес:" #: tfrmmemoryallochandler.label3.caption msgid "HeapHandle" -msgstr "Дескриптор кучи:" +msgstr "Дескриптор кучи" #: tfrmmemoryallochandler.label4.caption msgctxt "tfrmmemoryallochandler.label4.caption" @@ -11902,15 +12288,15 @@ msgstr "Размер:" #: tfrmmemoryallochandler.lblerr.caption msgid "Couldn't find in heap. Found using the Alloc hook. (Not very useful)" -msgstr "Не удалось найти в куче. Воспользуйтесь перехватом функции Alloc. (Не очень полезный метод)" +msgstr "Не удалось найти в куче. Найдено перехватом функции Alloc. (Не очень полезный метод)" #: tfrmmemoryrecorddropdownsettings.btncancel.caption -msgctxt "TFRMMEMORYRECORDDROPDOWNSETTINGS.BTNCANCEL.CAPTION" +msgctxt "tfrmmemoryrecorddropdownsettings.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tfrmmemoryrecorddropdownsettings.btnok.caption -msgctxt "TFRMMEMORYRECORDDROPDOWNSETTINGS.BTNOK.CAPTION" +msgctxt "tfrmmemoryrecorddropdownsettings.btnok.caption" msgid "OK" msgstr "Подтвердить" @@ -11924,19 +12310,19 @@ msgstr "Запретить ручной ввод данных пользоват #: tfrmmemoryrecorddropdownsettings.cbdisplayasdropdownitem.caption msgid "Make the record display values like the dropdown list" -msgstr "Отображать значения записи как в выпадающ. списке" +msgstr "Отображать значения записи как в выпадающем списке" #: tfrmmemoryrecorddropdownsettings.cbonlyshowdescription.caption msgid "Only show the description part" msgstr "Показывать только описание" #: tfrmmemoryrecorddropdownsettings.copy1.caption -msgctxt "TFRMMEMORYRECORDDROPDOWNSETTINGS.COPY1.CAPTION" +msgctxt "tfrmmemoryrecorddropdownsettings.copy1.caption" msgid "Copy" msgstr "Копировать" #: tfrmmemoryrecorddropdownsettings.cut1.caption -msgctxt "TFRMMEMORYRECORDDROPDOWNSETTINGS.CUT1.CAPTION" +msgctxt "tfrmmemoryrecorddropdownsettings.cut1.caption" msgid "Cut" msgstr "Вырезать" @@ -11950,112 +12336,34 @@ msgstr "Значение:Описание" #: tfrmmemoryrecorddropdownsettings.label3.caption msgid "*:Text Value to display if no value in the list is found" -msgstr "*: Текстовое значение для отображения, если значение не найдено в списке" +msgstr "*: Текстовое значение для отображения, если ни одно значение не найдено в списке" #: tfrmmemoryrecorddropdownsettings.lblformat.caption msgid "Format:" msgstr "Формат:" #: tfrmmemoryrecorddropdownsettings.paste1.caption -msgctxt "TFRMMEMORYRECORDDROPDOWNSETTINGS.PASTE1.CAPTION" +msgctxt "tfrmmemoryrecorddropdownsettings.paste1.caption" msgid "Paste" msgstr "Вставить" #: tfrmmemoryrecorddropdownsettings.undo1.caption -msgctxt "TFRMMEMORYRECORDDROPDOWNSETTINGS.UNDO1.CAPTION" +msgctxt "tfrmmemoryrecorddropdownsettings.undo1.caption" msgid "Undo" msgstr "Отменить" -#: tfrmmemoryviewex.btnmemmap.caption -msgid "Fetch memory map" -msgstr "Извлечь карту" - -#: tfrmmemoryviewex.btnmemmap.hint -msgid "Current memory size of visible screen, press to set scroll size to match this as closely as possible" -msgstr "Нажмите, чтобы размер прокрутки как можно точнее соответствовал текущего размеру памяти видимого экрана" - -#: tfrmmemoryviewex.caption -msgid "Graphical Memory View " -msgstr "Графическое представление памяти " - -#: tfrmmemoryviewex.cbaddresslist.text -msgctxt "TFRMMEMORYVIEWEX.CBADDRESSLIST.TEXT" -msgid "Current Memory" -msgstr "Текущая память" - -#: tfrmmemoryviewex.cbaddresslistonly.caption -msgid "Only show addresslist memory" -msgstr "Показывать только адреса из списка найденных адресов" - -#: tfrmmemoryviewex.cbcolor.text -msgid "RGBA" -msgstr "RGBA" - -#: tfrmmemoryviewex.cbsavedlist.text -msgctxt "TFRMMEMORYVIEWEX.CBSAVEDLIST.TEXT" -msgid "Current Memory" -msgstr "Текущая память" - -#: tfrmmemoryviewex.cbtype.text -msgctxt "tfrmmemoryviewex.cbtype.text" -msgid "Byte" -msgstr "Байт" - -#: tfrmmemoryviewex.cbcompare.caption -msgctxt "tfrmmemoryviewex.cbcompare.caption" -msgid "Compare against" -msgstr "Сравнить с" - -#: tfrmmemoryviewex.edtpitch.hint -msgid "Number of bytes a row exists out" -msgstr "Число байт вне строки" - -#: tfrmmemoryviewex.label1.caption -msgctxt "TFRMMEMORYVIEWEX.LABEL1.CAPTION" -msgid "Type" -msgstr "Тип" - -#: tfrmmemoryviewex.label2.caption -msgid "Pixels per line" -msgstr "Пикселей на линию" - -#: tfrmmemoryviewex.label3.caption -msgid "Color" -msgstr "Цветовая модель" - -#: tfrmmemoryviewex.lbladdress.caption -msgctxt "TFRMMEMORYVIEWEX.LBLADDRESS.CAPTION" -msgid "Address:" -msgstr "Адрес:" - -#: tfrmmemoryviewex.lblzoom.caption -msgid "Zoom:" -msgstr "Масштабирование:" - -#: tfrmmemoryviewex.rbor.caption -msgid "Or" -msgstr "или" - -#: tfrmmemoryviewex.rband.caption -msgid "And" -msgstr "и" - -#: tfrmmemoryviewex.rbxor.caption -msgid "Xor" -msgstr "исключающее ИЛИ" - #: tfrmmemreccombobox.btncancel.caption -msgctxt "TFRMMEMRECCOMBOBOX.BTNCANCEL.CAPTION" +msgctxt "tfrmmemreccombobox.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tfrmmemreccombobox.btnok.caption -msgctxt "TFRMMEMRECCOMBOBOX.BTNOK.CAPTION" +msgctxt "tfrmmemreccombobox.btnok.caption" msgid "OK" msgstr "Подтвердить" #: tfrmmemreccombobox.caption -msgctxt "TFRMMEMRECCOMBOBOX.CAPTION" +msgctxt "tfrmmemreccombobox.caption" msgid "Change value" msgstr "Изменить значение" @@ -12081,7 +12389,7 @@ msgid "Apply" msgstr "Применить" #: tfrmmemviewpreferences.button3.caption -msgctxt "TFRMMEMVIEWPREFERENCES.BUTTON3.CAPTION" +msgctxt "tfrmmemviewpreferences.button3.caption" msgid "Cancel" msgstr "Отмена" @@ -12097,44 +12405,60 @@ msgstr "Стандартный" #: tfrmmemviewpreferences.cbfontquality.hint msgctxt "tfrmmemviewpreferences.cbfontquality.hint" msgid "The font quality can impact speed" -msgstr "Качество шрифта может повлиять на скорость" +msgstr "Качество шрифта может влиять на скорость" + +#: tfrmmemviewpreferences.cbfontquality.text +msgctxt "tfrmmemviewpreferences.cbfontquality.text" +msgid "Default" +msgstr "По умолчанию" + +#: tfrmmemviewpreferences.cboriginalrenderingsystem.caption +msgid "Original rendering system (Slow on mac)" +msgstr "Оригинальная система отрисовки (медленная на Mac)" + +#: tfrmmemviewpreferences.cbCenterDisassemblerWhenOutsideView.caption +msgid "Center disassembler when changing address outside of current view" +msgstr "Центрировать дизассемблер при изменении адреса вне текущего представления" #: tfrmmemviewpreferences.cbshowstatusbar.caption msgid "Show statusbar" msgstr "Показать строку состояния" -#: tfrmmemviewpreferences.groupbox6.caption -msgid "Register panel" -msgstr "Панель регистров" - -#: tfrmmemviewpreferences.lblregisterexample.caption -msgid "Example" -msgstr "Пример" - #: tfrmmemviewpreferences.groupbox1.caption -msgctxt "TFRMMEMVIEWPREFERENCES.GROUPBOX1.CAPTION" +msgctxt "tfrmmemviewpreferences.groupbox1.caption" msgid "Normal" msgstr "Стандартный" #: tfrmmemviewpreferences.groupbox2.caption -msgctxt "TFRMMEMVIEWPREFERENCES.GROUPBOX2.CAPTION" msgid "Disassembler" msgstr "Дизассемблер" #: tfrmmemviewpreferences.groupbox3.caption -msgctxt "TFRMMEMVIEWPREFERENCES.GROUPBOX3.CAPTION" msgid "Hexview" msgstr "Hex-редактор" #: tfrmmemviewpreferences.groupbox4.caption -msgctxt "TFRMMEMVIEWPREFERENCES.GROUPBOX4.CAPTION" +msgctxt "tfrmmemviewpreferences.groupbox4.caption" msgid "Jumplines" msgstr "Линии переходов" #: tfrmmemviewpreferences.groupbox5.caption -msgctxt "TFRMMEMVIEWPREFERENCES.GROUPBOX5.CAPTION" +msgctxt "tfrmmemviewpreferences.groupbox5.caption" msgid "Space between lines" -msgstr "Расстояние между линиями" +msgstr "Пространство между строками" + +#: tfrmmemviewpreferences.groupbox6.caption +msgid "Register panel" +msgstr "Панель регистров" + +#: tfrmmemviewpreferences.groupbox7.caption +msgctxt "tfrmmemviewpreferences.groupbox7.caption" +msgid "Text" +msgstr "Текст" + +#: tfrmmemviewpreferences.groupbox7.hint +msgid "Left click to change the font color, rightclick to change the background color" +msgstr "Кликните левой кнопкой мыши, чтобы изменить цвет шрифта, кликните правой - чтобы изменить цвет фона" #: tfrmmemviewpreferences.label1.caption msgctxt "tfrmmemviewpreferences.label1.caption" @@ -12144,7 +12468,7 @@ msgstr "Качество шрифта" #: tfrmmemviewpreferences.label3.caption msgctxt "tfrmmemviewpreferences.label3.caption" msgid "Space between lines" -msgstr "Расстояние между линиями" +msgstr "Пространство между строками" #: tfrmmemviewpreferences.label4.caption msgid "Thickness" @@ -12155,12 +12479,10 @@ msgid "Spacing" msgstr "Интервал" #: tfrmmemviewpreferences.label6.caption -msgctxt "tfrmmemviewpreferences.label6.caption" msgid "Above" msgstr "Сверху" #: tfrmmemviewpreferences.label7.caption -msgctxt "tfrmmemviewpreferences.label7.caption" msgid "Below" msgstr "Снизу" @@ -12179,25 +12501,71 @@ msgctxt "tfrmmemviewpreferences.lblhex.caption" msgid "Hexadecimal color" msgstr "Цвет 16-ричных значений" -#: tfrmmemviewpreferences.lblhexexample.caption -msgctxt "tfrmmemviewpreferences.lblhexexample.caption" -msgid "Example" -msgstr "Пример" +#: tfrmmemviewpreferences.lblhexbreakpoint.caption +msgctxt "tfrmmemviewpreferences.lblhexbreakpoint.caption" +msgid "Breakpoint" +msgstr "Брейкпоинт" + +#: tfrmmemviewpreferences.lblhexcursor.caption +msgid "Cursor" +msgstr "Курсор" + +#: tfrmmemviewpreferences.lblhexdifferent.caption +msgid "Different" +msgstr "Разный" + +#: tfrmmemviewpreferences.lblhexediting.caption +msgid "Editing" +msgstr "Редактирование" + +#: tfrmmemviewpreferences.lblhexfadecolor.caption +msgid "FadeColor" +msgstr "Исчезающий Цвет" + +#: tfrmmemviewpreferences.lblhexhighlighted.caption +msgctxt "tfrmmemviewpreferences.lblhexhighlighted.caption" +msgid "Highlighted" +msgstr "Выделенный" + +#: tfrmmemviewpreferences.lblhexnormal.caption +msgctxt "tfrmmemviewpreferences.lblhexnormal.caption" +msgid "Normal" +msgstr "Обычный" + +#: tfrmmemviewpreferences.lblhexsecondaryediting.caption +msgid "SecondaryEditing" +msgstr "Вторичное редактирование" + +#: tfrmmemviewpreferences.lblhexseperator.caption +msgid "Seperator line" +msgstr "Разделительная линия" + +#: tfrmmemviewpreferences.lblhexstatic.caption +msgctxt "tfrmmemviewpreferences.lblhexstatic.caption" +msgid "Static" +msgstr "Cтатичный" + +#: tfrmmemviewpreferences.lblhextopline.caption +msgid "Top line" +msgstr "Верхняя строка" #: tfrmmemviewpreferences.lblnormal.caption msgid "Default color" msgstr "Цвет по умолчанию" +#: tfrmmemviewpreferences.lblreghighlightaccess.caption +msgid "Highlight Access" +msgstr "Подсветка Доступа" + +#: tfrmmemviewpreferences.lblreghighlightchange.caption +msgid "Highlight Change" +msgstr "Подсветка Изменения" + #: tfrmmemviewpreferences.lblregister.caption msgctxt "tfrmmemviewpreferences.lblregister.caption" msgid "Register color" msgstr "Цвет регистра" -#: tfrmmemviewpreferences.lblregisterexample.caption -msgctxt "TFRMMEMVIEWPREFERENCES.LBLREGISTEREXAMPLE.CAPTION" -msgid "Example" -msgstr "Пример" - #: tfrmmemviewpreferences.lblsymbol.caption msgctxt "tfrmmemviewpreferences.lblsymbol.caption" msgid "Symbol color" @@ -12222,7 +12590,7 @@ msgstr "КУПИТЬ 100 за $8.99" #: tfrmmicrotransactions.bitbtn3.caption msgid "BUY 1000 for $79.99" -msgstr "КУПИТЬ 100 за $79.99" +msgstr "КУПИТЬ 1000 за $79.99" #: tfrmmicrotransactions.caption msgid "Cheat-E-Coins" @@ -12230,76 +12598,51 @@ msgstr "CE-Монеты" #: tfrmmicrotransactions.label1.caption msgid "Cheat-E-coins left in your inventory:" -msgstr "CE-Монет в вашем инвентаре: " - -#: tfrmmergepointerscanresultsettings.button1.caption -msgctxt "TFRMMERGEPOINTERSCANRESULTSETTINGS.BUTTON1.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmmergepointerscanresultsettings.button2.caption -msgctxt "TFRMMERGEPOINTERSCANRESULTSETTINGS.BUTTON2.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmmergepointerscanresultsettings.caption -msgctxt "tfrmmergepointerscanresultsettings.caption" -msgid "Merge pointerscan results" -msgstr "Объединение результатов поиска указателя" - -#: tfrmmergepointerscanresultsettings.groupbox1.caption -msgctxt "TFRMMERGEPOINTERSCANRESULTSETTINGS.GROUPBOX1.CAPTION" -msgid "Description" -msgstr "Описание" - -#: tfrmmergepointerscanresultsettings.rggroupmethod.caption -msgid "Group method" -msgstr "Групповой метод" +msgstr "CE-Монет в вашем инвентаре:" #: tfrmmodifyregisters.button1.caption -msgctxt "TFRMMODIFYREGISTERS.BUTTON1.CAPTION" +msgctxt "tfrmmodifyregisters.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmmodifyregisters.button2.caption -msgctxt "TFRMMODIFYREGISTERS.BUTTON2.CAPTION" +msgctxt "tfrmmodifyregisters.button2.caption" msgid "Cancel" msgstr "Отмена" +#: tfrmmodifyregisters.caption +msgid "Modify register(s) at xxxxxxxx" +msgstr "Изменить регистр(ы) в xxxxxxxx" + #: tfrmmodifyregisters.cbchangeext.caption -msgctxt "tfrmmodifyregisters.cbchangeext.caption" msgid "Change extended state (FPU/XMM)" msgstr "Изменить расширенное состояние (FPU/XMM)" #: tfrmmodifyregisters.cbusedbvm.caption msgid "Use DBVM Cloaked BP's" -msgstr "Использовать скрытые DBVM брейкопинты" +msgstr "Скрытые DBVM BP" #: tfrmmodifyregisters.edtpa.texthint msgctxt "tfrmmodifyregisters.edtpa.texthint" msgid "Physical Address" msgstr "Физический адрес" -#: tfrmmodifyregisters.caption -msgid "Modify register(s) at xxxxxxxx" -msgstr "Изменить регистр(ы) в xxxxxxxx" - -#: tfrmmodifyregisters.label16.caption -msgctxt "tfrmmodifyregisters.label16.caption" -msgid "Flags" -msgstr "Флаги" - #: tfrmmodifyregisters.label25.caption msgid "Leave blank if you don't want to edit the register or flag" msgstr "Не заполняйте, если вы не хотите редактировать регистр или флаг" +#: tfrmmodifyregisters.lblflags.caption +msgctxt "tfrmmodifyregisters.lblflags.caption" +msgid "Flags" +msgstr "Флаги" + #: tfrmmodulesafety.button1.caption -msgctxt "TFRMMODULESAFETY.BUTTON1.CAPTION" +msgctxt "tfrmmodulesafety.button1.caption" msgid "Add" msgstr "Добавить" #: tfrmmodulesafety.button2.caption -msgctxt "TFRMMODULESAFETY.BUTTON2.CAPTION" +msgctxt "tfrmmodulesafety.button2.caption" msgid "OK" msgstr "Подтвердить" @@ -12313,24 +12656,24 @@ msgstr "Общее" #: tfrmmodulesafety.rballowlist.caption msgid "Prevent all modules from getting loaded except:" -msgstr "Запретить модулям быть загруженными, кроме:" +msgstr "Предотвратить загрузку всех модулей, кроме:" #: tfrmmodulesafety.rbdenylist.caption msgid "Allow all modules to be loaded except:" msgstr "Разрешить, кроме:" #: tfrmmodulesafety.remove1.caption -msgctxt "TFRMMODULESAFETY.REMOVE1.CAPTION" +msgctxt "tfrmmodulesafety.remove1.caption" msgid "Remove" msgstr "Убрать" #: tfrmmultilineinputquery.button1.caption -msgctxt "TFRMMULTILINEINPUTQUERY.BUTTON1.CAPTION" +msgctxt "tfrmmultilineinputquery.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmmultilineinputquery.button2.caption -msgctxt "TFRMMULTILINEINPUTQUERY.BUTTON2.CAPTION" +msgctxt "tfrmmultilineinputquery.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -12340,12 +12683,12 @@ msgid "caption" msgstr "заголовок" #: tfrmnetworkconfig.btnconnect.caption -msgctxt "TFRMNETWORKCONFIG.BTNCONNECT.CAPTION" +msgctxt "tfrmnetworkconfig.btnconnect.caption" msgid "Connect" msgstr "Соединение" #: tfrmnetworkconfig.button2.caption -msgctxt "TFRMNETWORKCONFIG.BUTTON2.CAPTION" +msgctxt "tfrmnetworkconfig.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -12354,30 +12697,39 @@ msgid "Connect to server" msgstr "Подключение к серверу" #: tfrmnetworkconfig.groupbox1.caption -msgid "Discovered servers" -msgstr "Обнаруженные серверы" +msgid "Discovered and previous servers" +msgstr "Обнаруженные и предыдущие серверы" #: tfrmnetworkconfig.label1.caption -msgctxt "TFRMNETWORKCONFIG.LABEL1.CAPTION" +msgctxt "tfrmnetworkconfig.label1.caption" msgid "Host" msgstr "Хост" #: tfrmnetworkconfig.label2.caption -msgctxt "TFRMNETWORKCONFIG.LABEL2.CAPTION" +msgctxt "tfrmnetworkconfig.label2.caption" msgid "Port" msgstr "Порт" -#: tfrmnetworkconfig.listview1.columns[0].caption -msgctxt "tfrmnetworkconfig.listview1.columns[0].caption" -msgid "IP" -msgstr "IP-адрес" +#: tfrmnetworkconfig.lbloptionalname.caption +msgid "Name (Optional)" +msgstr "Имя (необязательно)" -#: tfrmnetworkconfig.listview1.columns[1].caption -msgctxt "TFRMNETWORKCONFIG.LISTVIEW1.COLUMNS[1].CAPTION" +#: tfrmnetworkconfig.lviplist.columns[0].caption +msgid "IP/Name" +msgstr "IP/Имя" + +#: tfrmnetworkconfig.lviplist.columns[1].caption +msgctxt "tfrmnetworkconfig.lviplist.columns[1].caption" msgid "Port" msgstr "Порт" -#: tfrmnetworkconfig.menuitem1.caption +#: tfrmnetworkconfig.midelete.caption +msgctxt "tfrmnetworkconfig.midelete.caption" +msgid "Delete" +msgstr "Удалить" + +#: tfrmnetworkconfig.mirefresh.caption +msgctxt "tfrmnetworkconfig.mirefresh.caption" msgid "Refresh list" msgstr "Обновить список" @@ -12386,8 +12738,12 @@ msgid "Compression level" msgstr "Уровень сжатия" #: tfrmnetworkdatacompression.label1.caption -msgid "Change the compression level you wish to use when transferring/receiving memory." -msgstr "Укажите желаемый уровень сжатия при передаче/приёме памяти. Подберите хороший баланс между мощностью процессора и пропускной способностью сети." +msgid "" +"Change the compression level you wish to use when transferring/receiving memory.\n" +"Pick a good balance between cpu power of the device and network bandwidth" +msgstr "" +"Измените уровень сжатия, который вы хотите использовать при передаче/приёме памяти.\n" +"Подберите оптимальный баланс между мощностью процессора устройства и пропускной способностью сети" #: tfrmnetworkdatacompression.lblmaxcompression.caption msgid "Max Compression" @@ -12397,67 +12753,13 @@ msgstr "Максимальное сжатие" msgid "No Compression" msgstr "Без сжатия" -#: tfrmopenfileasprocessdialog.caption -msgid "Open binary file" -msgstr "Открытый бинарный файл" - -#: tfrmopenfileasprocessdialog.label1.caption -msgctxt "TFRMOPENFILEASPROCESSDIALOG.LABEL1.CAPTION" -msgid "Start address" -msgstr "Начальный адрес" - -#: tfrmopenfileasprocessdialog.mbok.caption -msgctxt "TFRMOPENFILEASPROCESSDIALOG.MBOK.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tfrmopenfileasprocessdialog.mkcancel.caption -msgctxt "TFRMOPENFILEASPROCESSDIALOG.MKCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmopenfileasprocessdialog.rb32.caption -msgid "32-Bit" -msgstr "32-Бита" - -#: tfrmopenfileasprocessdialog.rb64.caption -msgid "64-Bit" -msgstr "64-Бита" - -#: tfrmpaging.button1.caption -msgid "Go" -msgstr "Запустить" - -#: tfrmpaging.caption -msgctxt "tfrmpaging.caption" -msgid "Paging" -msgstr "Страничная организация памяти" - -#: tfrmpaging.cb64bit.caption -msgctxt "tfrmpaging.cb64bit.caption" -msgid "64-bit" -msgstr "64-бит" - -#: tfrmpaging.cb8byteentries.caption -msgid "8-byte entries" -msgstr "8-байт. записи" - -#: tfrmpaging.label1.caption -msgid "Fill in the physical address of the paging base (or just cr3)" -msgstr "Физический базовый адрес каталога страниц (или CR3)" - -#: tfrmpaging.menuitem1.caption -msgctxt "TFRMPAGING.MENUITEM1.CAPTION" -msgid "Find" -msgstr "Поиск" - #: tfrmpastetableentry.button1.caption -msgctxt "TFRMPASTETABLEENTRY.BUTTON1.CAPTION" +msgctxt "tfrmpastetableentry.button1.caption" msgid "Paste" msgstr "Вставить" #: tfrmpastetableentry.button2.caption -msgctxt "TFRMPASTETABLEENTRY.BUTTON2.CAPTION" +msgctxt "tfrmpastetableentry.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -12467,15 +12769,15 @@ msgstr "Вставка записей в таблицу" #: tfrmpastetableentry.cbchildrenaswell.caption msgid "Adjust children as well" -msgstr "Скорректировать и дочерние записи" +msgstr "Корректировать и дочерние записи" #: tfrmpastetableentry.groupbox1.caption -msgctxt "TFRMPASTETABLEENTRY.GROUPBOX1.CAPTION" +msgctxt "tfrmpastetableentry.groupbox1.caption" msgid "Description" msgstr "Описание" #: tfrmpastetableentry.groupbox2.caption -msgctxt "TFRMPASTETABLEENTRY.GROUPBOX2.CAPTION" +msgctxt "tfrmpastetableentry.groupbox2.caption" msgid "Address" msgstr "Адрес" @@ -12489,12 +12791,16 @@ msgstr "Заменить на:" #: tfrmpastetableentry.label3.caption msgid "Adjust address by: " -msgstr "Скорректировать на: " +msgstr "Корректировать адрес на: " + +#: tfrmpastetableentry.label4.caption +msgid "Adjust pointer last offset by: " +msgstr "Корректировать последнее смещение указателя на: " #: tfrmpeinfo.button1.caption -msgctxt "TFRMPEINFO.BUTTON1.CAPTION" +msgctxt "tfrmpeinfo.button1.caption" msgid "Info" -msgstr "?" +msgstr "Информация" #: tfrmpeinfo.caption msgid "Portable Executable (PE) Info" @@ -12505,7 +12811,7 @@ msgid "MZ-Start" msgstr "MZ-Начало" #: tfrmpeinfo.groupbox2.caption -msgctxt "TFRMPEINFO.GROUPBOX2.CAPTION" +msgctxt "tfrmpeinfo.groupbox2.caption" msgid "Info" msgstr "Информация" @@ -12514,7 +12820,7 @@ msgid "No file opened" msgstr "Файл не открыт" #: tfrmpeinfo.label2.caption -msgctxt "TFRMPEINFO.LABEL2.CAPTION" +msgctxt "tfrmpeinfo.label2.caption" msgid "address" msgstr "адрес" @@ -12527,7 +12833,7 @@ msgid "Copy tab to clipboard" msgstr "Копировать вкладку в буфер обмена" #: tfrmpeinfo.radiobutton1.caption -msgctxt "TFRMPEINFO.RADIOBUTTON1.CAPTION" +msgctxt "tfrmpeinfo.radiobutton1.caption" msgid "File" msgstr "Файл" @@ -12536,7 +12842,7 @@ msgid "Memory" msgstr "Память" #: tfrmpeinfo.tabsheet1.caption -msgctxt "TFRMPEINFO.TABSHEET1.CAPTION" +msgctxt "tfrmpeinfo.tabsheet1.caption" msgid "All" msgstr "Все" @@ -12552,91 +12858,15 @@ msgstr "Экспорт" msgid "Base Relocations" msgstr "Перемещения" -#: tfrmpointerrescanconnectdialog.btncancel.caption -msgctxt "TFRMPOINTERRESCANCONNECTDIALOG.BTNCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmpointerrescanconnectdialog.btnok.caption -msgctxt "tfrmpointerrescanconnectdialog.btnok.caption" -msgid "Connect" -msgstr "Соединение" - -#: tfrmpointerrescanconnectdialog.caption -msgctxt "tfrmpointerrescanconnectdialog.caption" -msgid "Join rescan" -msgstr "Присоединиться к отсеву" - -#: tfrmpointerrescanconnectdialog.lblhost.caption -msgctxt "tfrmpointerrescanconnectdialog.lblhost.caption" -msgid "Host" -msgstr "Хост" - -#: tfrmpointerrescanconnectdialog.lblport.caption -msgctxt "tfrmpointerrescanconnectdialog.lblport.caption" -msgid "Port" -msgstr "Порт" - -#: tfrmpointerscanconnectdialog.btncancel.caption -msgctxt "TFRMPOINTERSCANCONNECTDIALOG.BTNCANCEL.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmpointerscanconnectdialog.btnok.caption -msgctxt "TFRMPOINTERSCANCONNECTDIALOG.BTNOK.CAPTION" -msgid "Connect" -msgstr "Соединение" - -#: tfrmpointerscanconnectdialog.caption -msgid "Connect to active pointerscanner" -msgstr "Соединение с активным сканером указателей" - -#: tfrmpointerscanconnectdialog.cbpriority.text -msgctxt "TFRMPOINTERSCANCONNECTDIALOG.CBPRIORITY.TEXT" -msgid "Normal" -msgstr "Обычный" - -#: tfrmpointerscanconnectdialog.cbuseloadedpointermap.caption -msgctxt "tfrmpointerscanconnectdialog.cbuseloadedpointermap.caption" -msgid "Use saved pointermap" -msgstr "Использовать сохранённую карту указателей" - -#: tfrmpointerscanconnectdialog.cbuseloadedpointermap.hint -msgid "If you use this option you can omit the downloading of the pointermap" -msgstr "Если вы воспользуетесь этой опцией, то вы можете пренебречь загрузкой карты указателей" - -#: tfrmpointerscanconnectdialog.lblhost.caption -msgctxt "TFRMPOINTERSCANCONNECTDIALOG.LBLHOST.CAPTION" -msgid "Host" -msgstr "Хост" - -#: tfrmpointerscanconnectdialog.lblnrofthread.caption -msgctxt "tfrmpointerscanconnectdialog.lblnrofthread.caption" -msgid "Nr of threads scanning: " -msgstr "Потоков сканирования: " - -#: tfrmpointerscanconnectdialog.lblport.caption -msgctxt "TFRMPOINTERSCANCONNECTDIALOG.LBLPORT.CAPTION" -msgid "Port" -msgstr "Порт" - -#: tfrmpointerscanconnectdialog.lblpriority.caption -msgctxt "tfrmpointerscanconnectdialog.lblpriority.caption" -msgid "Priority" -msgstr "Приоритет" - #: tfrmpointerscanner.btnconnect.caption -msgctxt "TFRMPOINTERSCANNER.BTNCONNECT.CAPTION" msgid "Add to connection list" msgstr "Добавить к списку соединений" #: tfrmpointerscanner.btndecreasethreadcount.caption -msgctxt "TFRMPOINTERSCANNER.BTNDECREASETHREADCOUNT.CAPTION" msgid "Decrease worker count" msgstr "Уменьшить число работников" #: tfrmpointerscanner.btnincreasethreadcount.caption -msgctxt "TFRMPOINTERSCANNER.BTNINCREASETHREADCOUNT.CAPTION" msgid "Increase worker count" msgstr "Увеличить число работников" @@ -12645,7 +12875,7 @@ msgid "Stop rescan loop" msgstr "Прекратить" #: tfrmpointerscanner.btnstopscan.caption -msgctxt "TFRMPOINTERSCANNER.BTNSTOPSCAN.CAPTION" +msgctxt "tfrmpointerscanner.btnstopscan.caption" msgid "Stop" msgstr "Остановить" @@ -12654,7 +12884,7 @@ msgid "This will stop the current scan and show you the results it has found" msgstr "Остановит текущее сканирование и выведет найденный результат" #: tfrmpointerscanner.caption -msgctxt "TFRMPOINTERSCANNER.CAPTION" +msgctxt "tfrmpointerscanner.caption" msgid "Pointer scan" msgstr "Сканирование указателей" @@ -12663,12 +12893,11 @@ msgid "Non responsive connection" msgstr "Не отвечающее соединение" #: tfrmpointerscanner.cbpriority.text -msgctxt "TFRMPOINTERSCANNER.CBPRIORITY.TEXT" +msgctxt "tfrmpointerscanner.cbpriority.text" msgid "Normal" msgstr "Обычный" #: tfrmpointerscanner.cbtestcrappyconnection.caption -msgctxt "TFRMPOINTERSCANNER.CBTESTCRAPPYCONNECTION.CAPTION" msgid "Simulate no connection" msgstr "Нет соединения" @@ -12686,27 +12915,27 @@ msgid "4 Byte" msgstr "4 Байта" #: tfrmpointerscanner.file1.caption -msgctxt "TFRMPOINTERSCANNER.FILE1.CAPTION" +msgctxt "tfrmpointerscanner.file1.caption" msgid "File" msgstr "Файл" #: tfrmpointerscanner.gbnetwork.caption -msgctxt "TFRMPOINTERSCANNER.GBNETWORK.CAPTION" +msgctxt "tfrmpointerscanner.gbnetwork.caption" msgid "Network" msgstr "Сеть" #: tfrmpointerscanner.lblip.caption -msgctxt "TFRMPOINTERSCANNER.LBLIP.CAPTION" +msgctxt "tfrmpointerscanner.lblip.caption" msgid "IP" msgstr "IP-адрес" #: tfrmpointerscanner.lblpassword.caption -msgctxt "TFRMPOINTERSCANNER.LBLPASSWORD.CAPTION" +msgctxt "tfrmpointerscanner.lblpassword.caption" msgid "Password" msgstr "Пароль" #: tfrmpointerscanner.lblport.caption -msgctxt "TFRMPOINTERSCANNER.LBLPORT.CAPTION" +msgctxt "tfrmpointerscanner.lblport.caption" msgid "Port" msgstr "Порт" @@ -12716,7 +12945,6 @@ msgid "Generating pointermap" msgstr "Генерация карты указателей" #: tfrmpointerscanner.lblthreadpriority.caption -msgctxt "TFRMPOINTERSCANNER.LBLTHREADPRIORITY.CAPTION" msgid "Scanner thread priority:" msgstr "Приоритет потока сканера:" @@ -12741,7 +12969,6 @@ msgid "Disconnect" msgstr "Отключение" #: tfrmpointerscanner.miexporttosqlite.caption -msgctxt "TFRMPOINTERSCANNER.MIEXPORTTOSQLITE.CAPTION" msgid "Export to sqlite database" msgstr "Экспортировать в базу данных sqlite" @@ -12755,7 +12982,6 @@ msgid "Hexadecimal" msgstr "Шестнадцатиричное" #: tfrmpointerscanner.miimportfromsqlite.caption -msgctxt "TFRMPOINTERSCANNER.MIIMPORTFROMSQLITE.CAPTION" msgid "Import from sqlite database" msgstr "Импортировать из базы данных sqlite" @@ -12769,12 +12995,12 @@ msgid "Signed" msgstr "Знаковое" #: tfrmpointerscanner.new1.caption -msgctxt "TFRMPOINTERSCANNER.NEW1.CAPTION" +msgctxt "tfrmpointerscanner.new1.caption" msgid "New" msgstr "Новый" #: tfrmpointerscanner.open1.caption -msgctxt "TFRMPOINTERSCANNER.OPEN1.CAPTION" +msgctxt "tfrmpointerscanner.open1.caption" msgid "Open" msgstr "Открыть" @@ -12784,7 +13010,7 @@ msgstr "Сканер указателей" #: tfrmpointerscanner.rescanmemory1.caption msgid "Rescan memory - Removes pointers not pointing to the right address" -msgstr "Отсев - Удаляет указатели, не указывающие на верный адрес" +msgstr "Отсев памяти - Удаляет указатели, не указывающие на верный адрес" #: tfrmpointerscanner.resyncmodulelist1.caption msgid "Resync modulelist" @@ -12799,12 +13025,12 @@ msgid "Specify the filename for the pointermap you're about to generate" msgstr "Определите название файла для карты указателей, которую вы собираетесь генерировать" #: tfrmpointerscannersettings.btncancel.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.BTNCANCEL.CAPTION" +msgctxt "tfrmpointerscannersettings.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tfrmpointerscannersettings.btnok.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.BTNOK.CAPTION" +msgctxt "tfrmpointerscannersettings.btnok.caption" msgid "OK" msgstr "Подтвердить" @@ -12826,19 +13052,18 @@ msgid "" "When disabled, it won't bother.\n" "\n" "pro: Fast scans\n" -"Con: On some horrible designed games that you shouldn't even play it won't find the paths\n" +"Con: On some horrible designed games that you shouldn't even play it won't find the paths" msgstr "" "Если включено, то будут проверяться только те указатели, которые хранятся в адресах, кратных 4\n" "\n" "Довод «За»: Быстрое сканирование.\n" -"Довод «Против»: В некоторых ужасно сделанных играх, в которые вам не стоит даже играть, не будет найдено ни одного указателя\n" +"Довод «Против»: В некоторых ужасно сделанных играх, в которые вам не стоит даже играть, не будет найдено ни одного указателя" #: tfrmpointerscannersettings.cballowruntimeworkers.caption msgid "Allow scanners to connect at runtime" msgstr "Разрешить подключение сканеров во время выполнения" #: tfrmpointerscannersettings.cballowruntimeworkers.hint -msgctxt "TFRMPOINTERSCANNERSETTINGS.CBALLOWRUNTIMEWORKERS.HINT" msgid "Opens a port that other systems running the pointerscanner can connect to and help out with the scan" msgstr "Открывает порт, к которому могут подключиться другие системы с запущенным сканером указателей и помочь со сканированием" @@ -12851,13 +13076,13 @@ msgid "" "Object oriented programming languages tend to implement classobjects by having a pointer in the first element to something that describes the class\n" "With this option enabled, ce will check if it's a classobject by checking that rule. If not, it won't see it as a pointer.\n" "pro:Tremendous speed increase and almost perfect pointers\n" -"con:Doesn't work with runtime generated classes (java, .net) \n" +"con:Doesn't work with runtime generated classes (java, .net) " msgstr "" "Объектно-ориентированные языки программирования обычно реализуют объекты класса посредством указателя в первом элементе на что-то, что описывает класс.\n" "Если включено, то Cheat Engine будет проверять указатель по этому принципу, но если этот принцип не соблюдается, то такой адрес не будет считаться указателем.\n" "\n" "Довод «За»: Невероятный прирост скорости и почти идеальные указатели.\n" -"Довод «Против»: Не работает с классами, сгенерированными во время выполнения (java, .net)\n" +"Довод «Против»: Не работает с классами, сгенерированными во время выполнения (java, .net) " #: tfrmpointerscannersettings.cbcomparetootherpointermaps.caption msgid "Compare results with other saved pointermap(s)" @@ -12881,15 +13106,14 @@ msgid "" "Compresses the generated .PTR files slightly so they take less space on the disk and less time writing to disk.\n" "Most of the time the bottleneck of a pointerscan is disk writing, so it is recommended to use this option.\n" "\n" -"Compressed .PTR files can not be read out by older Cheat Engine versions\n" +"Compressed .PTR files can not be read out by older Cheat Engine versions" msgstr "" "Слегка сжимает создаваемые .PTR файлы. Таким образом, они занимают меньше места и тем самым ускоряется время их записи на диск.\n" "В большинстве случаев, узким местом сканера указателей является скорость записи на диск, поэтому эта опция рекомендуема к использованию.\n" "\n" -"Сжатые .PTR файлы не будут читаться более старыми версиями Cheat Engine\n" +"Сжатые .PTR файлы не будут читаться более старыми версиями Cheat Engine" #: tfrmpointerscannersettings.cbconnecttonode.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.CBCONNECTTONODE.CAPTION" msgid "Connect to pointerscan node" msgstr "Подключиться к узлу сканера указателей" @@ -12897,22 +13121,22 @@ msgstr "Подключиться к узлу сканера указателей msgid "" "When checked will send a broadcast message on the local network which will tell pointer scanner systems to join this scan if they are set to auto join\n" "\n" -"You can use \"Setup specific IP's to notify\" to notify systems of this scan that are outside of the local network\n" +"You can use \"Setup specific IP's to notify\" to notify systems of this scan that are outside of the local network" msgstr "" "Если включено, то по локальной сети будет отправлено сообщение, которое велит другим устройствам с запущенным сканером указателей присоединиться к текущему сканированию, если у них включена опция «Автоприсоединение к поиску и отсеву».\n" "\n" -"Вы можете воспользоваться кнопкой «Уведомляемые IP-адреса», чтобы зарегистрировать устройства, находящиеся за пределами локальной сети\n" +"Вы можете воспользоваться кнопкой «Уведомляемые IP-адреса», чтобы зарегистрировать устройства, находящиеся за пределами локальной сети" #: tfrmpointerscannersettings.cbheaponly.caption msgid "Only allow static and heap addresses in the path" -msgstr "Только статические адреса и адреса куч" +msgstr "Только статичные адреса и адреса куч" #: tfrmpointerscannersettings.cbheaponly.hint msgid "If the address you search for isn't a heap address, the scan will return 0 results" msgstr "Если адрес, который вы ищете, не является адресом кучи, то результатом сканирования будет 0" #: tfrmpointerscannersettings.cbincludesystemmodules.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.CBINCLUDESYSTEMMODULES.CAPTION" +msgctxt "tfrmpointerscannersettings.cbincludesystemmodules.caption" msgid "Include system modules" msgstr "Включая системные модули" @@ -12931,13 +13155,13 @@ msgid "" "With this feature enabled the pointerscan will only check the first few pointers with that value.\n" "\n" "pro: Extremely fast, and the results have the lowest pointer paths possible.\n" -"con: You'll miss a lot of pointers that might be valid too \n" +"con: You'll miss a lot of pointers that might be valid too " msgstr "" "Когда сканер указателей ищет определённое значение в списке указателей, то он проходит по каждому указателю, имеющему это значение, каждый раз немного увеличивая смещение.\n" "С использованием данной опции, сканер указателей проверит только несколько первых указателей с искомым значением.\n" "\n" "Довод «За»: Чрезвычайно быстро. Указатели имеют наименьший уровень .\n" -"Довод «Против»: Вы пропустите много верных указателей\n" +"Довод «Против»: Вы пропустите много верных указателей " #: tfrmpointerscannersettings.cbmustendwithspecificoffset.caption msgid "Pointers must end with specific offsets" @@ -12945,15 +13169,15 @@ msgstr "Указатели оканчиваются конкретными см #: tfrmpointerscannersettings.cbmuststartwithbase.caption msgid "Base address must be in specific range" -msgstr "Диапазон базового адреса" +msgstr "Базовый адрес должен находиться в определённом диапазоне" #: tfrmpointerscannersettings.cbmuststartwithbase.hint msgid "" "Will only mark the given range as valid base address (Will reduce the number of results)\n" -"This internally makes use of the \"Only find paths with a static address\" feature by marking the provided range as static only, so it must be enabled.\n" +"This internally makes use of the \"Only find paths with a static address\" feature by marking the provided range as static only, so it must be enabled." msgstr "" -"Указанный диапазон адресов будет использован для поиска правильного базового адреса (Сократит количество результатов).\n" -"Работает совместно с опцией «Искать только цепочки со статическим адресом».\n" +"Указанный диапазон будет отмечен как допустимый базовый адрес (Сократит количество результатов).\n" +"Работает совместно с опцией «Искать только цепочки со статичным адресом»." #: tfrmpointerscannersettings.cbnegativeoffsets.caption msgid "Also scan for negative offsets" @@ -12962,10 +13186,10 @@ msgstr "Сканировать и на наличие отрицательных #: tfrmpointerscannersettings.cbnegativeoffsets.hint msgid "" "Let's you scan for negative offsets\n" -"Can not be used in combination with compressed pointerscan files\n" +"Can not be used in combination with compressed pointerscan files" msgstr "" "Позволяет вам производить сканирование на наличие отрицательных смещений\n" -"Не может использоваться совместно с «Сжатие файла с результатом сканирования»\n" +"Не может использоваться совместно с «Сжатие файла с результатом сканирования»" #: tfrmpointerscannersettings.cbnoloop.caption msgid "No looping pointers" @@ -12980,7 +13204,7 @@ msgid "" "you could just as well do base->p1->p4 then, so throw this one away (base->p1->p4 will be found another way)\n" "\n" "pro: Less results so less diskspace used\n" -"con: slightly slows down the scan as it needs to check for loops every single iteration \n" +"con: slightly slows down the scan as it needs to check for loops every single iteration " msgstr "" "Будут отфильтровываться циклические указатели.\n" "Пример циклического указателя:\n" @@ -12989,7 +13213,7 @@ msgstr "" "С таким же успехом, можно сделать просто «Базовый указатель->у1->у4», отбросив все остальные указатели в цепочке.\n" "\n" "Довод «За»: Меньше результатов, меньше необходимого места на диске\n" -"Довод «Против»: Слегка замедляет сканирование, т.к. нужно будет многократно проверять на цикличность\n" +"Довод «Против»: Слегка замедляет сканирование, т.к. нужно будет многократно проверять на цикличность " #: tfrmpointerscannersettings.cbnoreadonly.caption msgid "Don't include pointers with read-only nodes" @@ -13003,38 +13227,45 @@ msgid "" "\n" "\n" "pro: faster, less useless results\n" -"con: If the game decides to mark a pointer as readonly ce won't find it \n" +"con: If the game decides to mark a pointer as readonly ce won't find it " msgstr "" "Если включено, то сканер указателей будет отбрасывать память «только для чтения». Поэтому, при поиске\n" "цепочек указателя, сканер не столкнётся с цепочками, пересекающимися с блоками памяти «только для чтения».\n" "\n" "Довод «За»: Быстрее, меньше бесполезных результатов.\n" -"Довод «Против»: Если игра решает отметить указатель как «только для чтения», то Cheat Engine его не найдёт\n" +"Довод «Против»: Если игра решает отметить указатель как «только для чтения», то Cheat Engine его не найдёт " #: tfrmpointerscannersettings.cbonlyonestatic.caption msgid "Stop traversing a path when a static has been found" -msgstr "Остановить прохождение по цепочке при нахождении статического адреса" +msgstr "Остановить прохождение по цепочке при нахождении статичного адреса" #: tfrmpointerscannersettings.cbonlyonestatic.hint msgid "" "When the pointerscanner goes through the list of pointervalues with a specific value, this will stop exploring other paths as soon as it encounters a static pointer to that value\n" "\n" "pro: Fast\n" -"con: You may miss some valid results \n" +"con: You may miss some valid results " msgstr "" -"Когда сканер указателей проходит по списку со значениями указателя, ища определённое значение, и натыкается на статический указатель на это значение, то анализ прекращается.\n" +"Когда сканер указателей проходит по списку со значениями указателя, ища определённое значение, и натыкается на статичный указатель на это значение, то анализ прекращается.\n" "\n" "Довод «За»: Высокая скорость.\n" -"Довод «Против»: Вы можете пропустить некоторые рабочие указатели\n" +"Довод «Против»: Вы можете пропустить некоторые рабочие указатели " + +#: tfrmpointerscannersettings.cbscanresidentmemory.caption +msgid "Only scan resident memory" +msgstr "Сканировать только резидентную память" + +#: tfrmpointerscannersettings.cbscanresidentmemory.hint +msgid "Skip paged out memory pages" +msgstr "Пропускает выгруженные из памяти страницы" #: tfrmpointerscannersettings.cbshowadvancedoptions.caption msgid "Show advanced options" msgstr "Показать дополнительные настройки" -#: tfrmpointerscannersettings.cbshowadvancedoptions.caption #: tfrmpointerscannersettings.cbstackonly.caption msgid "Stack addresses as ONLY static address" -msgstr "Рассматривать адреса стека только как статические" +msgstr "Рассматривать адреса стека только как статичные" #: tfrmpointerscannersettings.cbstackonly.hint msgid "" @@ -13042,17 +13273,17 @@ msgid "" "Combine this with \"Only find paths with a static address\" (default on) else this option will have no effect\n" "\n" "pro: You'll only get paths from the stack\n" -"con: You don't get get paths from random dll's or the .exe \n" +"con: You don't get paths from random dll's or the .exe " msgstr "" "Включите, если вы хотите найти только цепочки указателей с адресом стека. Используйте только вместе с опцией\n" -"«Искать только цепочки со статическим адресом» (включена по умолчанию), в противном случае, не будет никакого эффекта.\n" +"«Искать только цепочки со статичным адресом» (включена по умолчанию), в противном случае, не будет никакого эффекта.\n" "\n" "Довод «За»: Будут находится только цепочки указателей к стеку\n" -"Довод «Против»: Не будут находится цепочки указателей к различным dll или .exe\n" +"Довод «Против»: Не будут находится цепочки указателей к различным dll или .exe " #: tfrmpointerscannersettings.cbstaticonly.caption msgid "Only find paths with a static address" -msgstr "Искать только цепочки со статическим адресом" +msgstr "Искать только цепочки со статичным адресом" #: tfrmpointerscannersettings.cbstaticonly.hint msgid "" @@ -13060,17 +13291,17 @@ msgid "" "When it's disabled, it finds every single pointer path\n" "\n" "pro: Fast\n" -"con: It may miss pointers that are accessed by special paths like thread local storage. (but even then they'd be useless for ce as they will change)\n" +"con: It may miss pointers that are accessed by special paths like thread local storage. (but even then they'd be useless for ce as they will change)" msgstr "" -"Если включено, то сканер указателей будет сохранять только цепочки, начинающиеся со статического адреса (или с легко находимого адреса).\n" +"Если включено, то сканер указателей будет сохранять только цепочки, начинающиеся со статичного адреса (или с легко находимого адреса).\n" "Если выключено, то будут сохраняться любые цепочки.\n" "\n" "Довод «За»: Высокая скорость.\n" -"Довод «Против»: Могут быть пропущены указатели, доступ к которым осуществляется по специальным цепочкам, наподобие локальной памяти потока (в любом случае, они бесполезны для Cheat Engine, так как будут меняться)\n" +"Довод «Против»: Могут быть пропущены указатели, к которым обращаются по специальным цепочкам, наподобие локальной памяти потока (в любом случае, они бесполезны для Cheat Engine, так как будут меняться)" #: tfrmpointerscannersettings.cbstaticstacks.caption msgid "Allow stack addresses of the first thread(s) to be handled as static" -msgstr "Обрабатывать адреса стека первого потока как статические" +msgstr "Обрабатывать адреса стека первого потока как статичные" #: tfrmpointerscannersettings.cbstaticstacks.hint msgid "" @@ -13084,11 +13315,11 @@ msgid "" "With max stack offset: you can set the max size that can be deemed as static enough.\n" "\n" "pro: It finds paths otherwise never found\n" -"con: More results, more diskspace \n" +"con: More results, more diskspace " msgstr "" -"Позволяет стекам потоков быть замеченными сканером указателей как статические адреса.\n" +"Позволяет стекам потоков быть рассмотренными сканером указателей как статичные адреса.\n" "Основной поток всегда будет первым в списке. Второй создаваемый поток, зачастую, тоже весьма стабилен.\n" -"А вот при большем числе потоков бывают большие изменения, т.к. другие потоки создаются и уничтожаются в произвольном порядке.\n" +"При большем их количестве существует большая вероятность того, что они будут создаваться и уничтожаться случайным образом.\n" "\n" "Когда программа входит и выходит из функции, то указатель стека увеличивается/уменьшается и в него записываются данные.\n" "Чем глубже игра находится в вызовах функции, тем более статическими становятся старые данные.\n" @@ -13096,7 +13327,7 @@ msgstr "" "С максимальным смещением стека вы можете задать максимальный размер, который может считаться достаточно статичным.\n" "\n" "Довод «За»: Найдутся такие цепочки, которые иначе не нашлись бы.\n" -"Довод «Против»: Больше результатов, больше необходимого места на диске.\n" +"Довод «Против»: Больше результатов, больше необходимого места на диске. " #: tfrmpointerscannersettings.cbuseheapdata.caption msgid "Improve pointerscan with gathered heap data" @@ -13108,35 +13339,35 @@ msgid "" "pro: Greatly improve speed and a lot less useless results\n" "con: if the game allocates gigantic chunks of heap memory, and then divides it up itself, this will give wrong results.\n" "\n" -"In other cases this will give perfect pointers \n" +"In other cases this will give perfect pointers " msgstr "" "Если включено, то будут использоваться данные из кучи, чтобы вычислить размеры смещения, вместо слепого их угадывания\n" "\n" "Довод «За:» Значительно улучшается скорость и уменьшается число бесполезных результатов.\n" "Довод «Против:» Если игра выделяет гигантские блоки памяти из «кучи», а затем распределяет их для себя, то будет дан неверный результат.\n" "\n" -"В других случаях это даёт идеальные указатели\n" +"В других случаях это даёт идеальные указатели" #: tfrmpointerscannersettings.cbuseloadedpointermap.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.CBUSELOADEDPOINTERMAP.CAPTION" +msgctxt "tfrmpointerscannersettings.cbuseloadedpointermap.caption" msgid "Use saved pointermap" msgstr "Использовать сохранённую карту указателей" #: tfrmpointerscannersettings.cbuseloadedpointermap.hint msgid "" "Use this if you have created a pointermap on a system that runs the game, but you wish to do the scan on another system (or multiple systems).\n" -"Checking this option will open a dialog where you can select the pointermap\n" +"Checking this option will open a dialog where you can select the pointermap" msgstr "" -"Воспользуйтесь этим, если вы создали карту указателей игры на одной операционной системе и желаете выполнить сканирование на другой системе.\n" -"Включение этой опции откроет диалог, где вы сможете выбрать карту указателей\n" +"Воспользуйтесь этим, если вы создали карту указателей на одной системе, но желаете выполнить сканирование на другой системе (или нескольких системах).\n" +"Включение этой опции откроет диалог, где вы сможете выбрать карту указателей" #: tfrmpointerscannersettings.cbvaluetype.text -msgctxt "TFRMPOINTERSCANNERSETTINGS.CBVALUETYPE.TEXT" +msgctxt "tfrmpointerscannersettings.cbvaluetype.text" msgid "4 Byte" msgstr "4 Байта" #: tfrmpointerscannersettings.combobox1.text -msgctxt "TFRMPOINTERSCANNERSETTINGS.COMBOBOX1.TEXT" +msgctxt "tfrmpointerscannersettings.combobox1.text" msgid "Normal" msgstr "Обычный" @@ -13144,69 +13375,70 @@ msgstr "Обычный" msgid "" "Fill in the total number of threads that should be allowed to be used as a stack lookup.\n" "Thread 1 is usually the main thread of the game, but if that one spawns another thread for game related events, you might want to have that secondary thread as well.\n" -"More threads is not recommend as they may get created and destroyed on the fly, and are therefore useless as a lookup base, but it depends on the game.\n" +"More threads is not recommend as they may get created and destroyed on the fly, and are therefore useless as a lookup base, but it depends on the game." msgstr "" "Заполните общее количество потоков, для которых будет включен поиск в стеке.\n" "Поток 1 - обычно это главный поток игры, но если игра создает ещё один поток для связанных с ней событий, то вам может потребоваться и он.\n" -"Число потоков больше, чем 2 не рекомендуется, т.к. остальные могут создаваться и уничтожаться на лету, а значит бесполезны в качестве базы для поиска. Впрочем, это зависит от игры\n" +"Число потоков больше, чем 2 не рекомендуется, т.к. остальные могут создаваться и уничтожаться на лету, а значит бесполезны в качестве базы для поиска. Впрочем, это зависит от игры." #: tfrmpointerscannersettings.label1.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.LABEL1.CAPTION" +msgctxt "tfrmpointerscannersettings.label1.caption" msgid "Password" msgstr "Пароль" #: tfrmpointerscannersettings.label10.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.LABEL10.CAPTION" +msgctxt "tfrmpointerscannersettings.label10.caption" msgid "From" msgstr "От" #: tfrmpointerscannersettings.label11.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.LABEL11.CAPTION" +msgctxt "tfrmpointerscannersettings.label11.caption" msgid "To:" msgstr "До:" #: tfrmpointerscannersettings.label12.caption msgid "Max level" -msgstr "Макс. уровень:" +msgstr "Максимальный уровень" #: tfrmpointerscannersettings.label13.caption msgid "Pointer path may only be inside this region:" -msgstr "Регион в котором может быть цепочка указателя:" +msgstr "Цепочка указателя может быть только внутри этого региона:" #: tfrmpointerscannersettings.label2.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.LABEL2.CAPTION" +msgctxt "tfrmpointerscannersettings.label2.caption" msgid "To" msgstr "До" #: tfrmpointerscannersettings.label3.caption msgid "Maximum offset value:" -msgstr "Макс. значение смещения:" +msgstr "Максимальное значение смещения:" + +#: tfrmpointerscannersettings.label4.caption +msgctxt "tfrmpointerscannersettings.label4.caption" +msgid "From" +msgstr "От" #: tfrmpointerscannersettings.label9.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.LABEL9.CAPTION" msgid "Nr of threads scanning: " -msgstr "Потоков сканирования: " +msgstr "Кол-во потоков сканирования: " #: tfrmpointerscannersettings.lblnumberofstackthreads.caption msgid "Number of threads from oldest to newest:" -msgstr "Количество потоков от старых до новейших:" +msgstr "Количество потоков от самых старых до самых новых:" #: tfrmpointerscannersettings.lblport.caption -msgctxt "tfrmpointerscannersettings.lblport.caption" msgid "Port:" msgstr "Порт:" #: tfrmpointerscannersettings.lblstacksize.caption msgid "Max stackoffset to be deemed static enough:" -msgstr "Максимальное смещение от статического адреса:" +msgstr "Мак. смещение стека, считающееся достаточно статичным:" #: tfrmpointerscannersettings.rbfindaddress.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.RBFINDADDRESS.CAPTION" msgid "Scan for address" msgstr "Поиск адреса" #: tfrmpointerscannersettings.rbfindvalue.caption -msgctxt "TFRMPOINTERSCANNERSETTINGS.RBFINDVALUE.CAPTION" msgid "Scan for addresses with value" msgstr "Поиск значения адреса" @@ -13215,13 +13447,8 @@ msgctxt "tfrmpointerscannersettings.rbgeneratepointermap.caption" msgid "Generate pointermap" msgstr "Создание карты указателей" -#: tfrmrescanpointer.cbusesavedpointermap.caption -msgctxt "tfrmrescanpointer.cbusesavedpointermap.caption" -msgid "Use saved pointermap" -msgstr "Использовать сохранённую карту указателей" - #: tfrmprocessinfo.button1.caption -msgctxt "TFRMPROCESSINFO.BUTTON1.CAPTION" +msgctxt "tfrmprocessinfo.button1.caption" msgid "OK" msgstr "Подтвердить" @@ -13233,22 +13460,6 @@ msgstr "Потоки>>" msgid "Process/System Info" msgstr "Информация о процессе/системе" -#: tfrmprocessinfo.label4.caption -msgid "IDT:" -msgstr "IDT:" - -#: tfrmprocessinfo.label5.caption -msgid "SDT:" -msgstr "SDT:" - -#: tfrmprocessinfo.label6.caption -msgid "SSDT:" -msgstr "SSDT:" - -#: tfrmprocessinfo.label7.caption -msgid "GDT:" -msgstr "GDT:" - #: tfrmprocessinfo.label8.caption msgid "Valid Handle:" msgstr "Дескриптор:" @@ -13274,9 +13485,17 @@ msgstr "Показать идентификаторы потока" msgid "Processwatcher Extra" msgstr "Дополнительно" +#: tfrmrearrangestructurelist.caption +msgid "Manage structure list" +msgstr "Управление списком структур" + +#: tfrmrearrangestructurelist.menuitem1.caption +msgid "Delete selected records" +msgstr "Удалить выбранные записи" + #: tfrmrearrangestructurelist.caption msgid "Rearrange structure list" -msgstr "Упорядочивание списка структур" +msgstr "Перестроение списка структур" #: tfrmreferencedfunctions.caption msgctxt "tfrmreferencedfunctions.caption" @@ -13284,7 +13503,7 @@ msgid "Referenced functions" msgstr "Ссылки на функции" #: tfrmreferencedfunctions.lvcalllist.columns[0].caption -msgctxt "TFRMREFERENCEDFUNCTIONS.LVCALLLIST.COLUMNS[0].CAPTION" +msgctxt "tfrmreferencedfunctions.lvcalllist.columns[0].caption" msgid "Address" msgstr "Адрес" @@ -13297,32 +13516,45 @@ msgstr "Ссылок" msgid "Copy list to clipboard" msgstr "Копировать список в буфер обмена" +#: tfrmreferencedfunctions.mifilter.caption +msgid "Filter by name" +msgstr "Фильтровать по названию" + +#: tfrmreferencedfunctions.mifind.caption +msgctxt "tfrmreferencedfunctions.mifind.caption" +msgid "Find..." +msgstr "Найти..." + +#: tfrmreferencedfunctions.misort.caption +msgid "Sort by name" +msgstr "Сортировать по названию" + #: tfrmreferencedstrings.caption msgid "Referenced Strings" msgstr "Ссылки на строки" #: tfrmreferencedstrings.find1.caption -msgctxt "TFRMREFERENCEDSTRINGS.FIND1.CAPTION" +msgctxt "tfrmreferencedstrings.find1.caption" msgid "Find" msgstr "Найти" #: tfrmreferencedstrings.findnext1.caption -msgctxt "TFRMREFERENCEDSTRINGS.FINDNEXT1.CAPTION" +msgctxt "tfrmreferencedstrings.findnext1.caption" msgid "Find Next" msgstr "Найти далее" #: tfrmreferencedstrings.lvstringlist.columns[0].caption -msgctxt "TFRMREFERENCEDSTRINGS.LVSTRINGLIST.COLUMNS[0].CAPTION" +msgctxt "tfrmreferencedstrings.lvstringlist.columns[0].caption" msgid "Address" msgstr "Адрес" #: tfrmreferencedstrings.lvstringlist.columns[1].caption -msgctxt "TFRMREFERENCEDSTRINGS.LVSTRINGLIST.COLUMNS[1].CAPTION" +msgctxt "tfrmreferencedstrings.lvstringlist.columns[1].caption" msgid "Refcount" msgstr "Ссылок" -#: tfrmreferencedstrings.lvstringlist.columns[2].caption -msgctxt "tfrmreferencedstrings.lvstringlist.columns[2].caption" +#: tfrmreferencedstrings.lvstringlist.columns[3].caption +msgctxt "tfrmreferencedstrings.lvstringlist.columns[3].caption" msgid "String" msgstr "Строка" @@ -13332,25 +13564,24 @@ msgid "Search" msgstr "Поиск" #: tfrmrescanpointer.button1.caption -msgctxt "TFRMRESCANPOINTER.BUTTON1.CAPTION" +msgctxt "tfrmrescanpointer.button1.caption" msgid "OK" msgstr "Подтвердить" #: tfrmrescanpointer.button2.caption -msgctxt "TFRMRESCANPOINTER.BUTTON2.CAPTION" +msgctxt "tfrmrescanpointer.button2.caption" msgid "Cancel" msgstr "Отмена" #: tfrmrescanpointer.caption msgid "Rescan pointerlist" -msgstr "Отсеивание списка указателей" +msgstr "Отсев списка указателей" #: tfrmrescanpointer.cbbasepointermustbeinrange.caption msgid "Base pointer must be in range" msgstr "Базовый указатель должен быть в диапазоне" #: tfrmrescanpointer.cbchangebasepointeroffset.caption -msgctxt "TFRMRESCANPOINTER.CBCHANGEBASEPOINTEROFFSET.CAPTION" msgid "Change base pointer address by specific offset" msgstr "Изменить базовый адрес указателя на определённое смещение" @@ -13364,20 +13595,20 @@ msgstr "Отсеивать только доступные указатели" #: tfrmrescanpointer.cbluafilter.caption msgid "Lua filter. function" -msgstr "Lua фильтр. function" +msgstr "Lua фильтр. функция" #: tfrmrescanpointer.cbluafilter.hint msgid "" "When checked this will call the given function for every pointer being evaluated. Return true if it's valid, false if not\n" "base is the base address (integer)\n" "offset is a table with offsets\n" -"target is the address the pointer points to. Can be nil\n" +"target is the address the pointer points to. Can be nil" msgstr "" "Если галочка установлена, то указанная функция будет вызываться для каждого проверяемого указателя.\n" "Возвращает true, если указатель верный и false, если нет\n" "«base» - базовый адрес (целое число)\n" "«offsets» - таблица со смещениями\n" -"«target» - адрес, на который указывает указатель. Может быть нулём\n" +"«target» - адрес, на который указывает указатель. Может быть нулём" #: tfrmrescanpointer.cbmustendwithspecificoffsets.caption msgid "Must end with offsets" @@ -13389,34 +13620,31 @@ msgstr "Должно начинаться со смещения" #: tfrmrescanpointer.cbnovaluecheck.caption msgid "Only filter out invalid pointers" -msgstr "Отсеивать только неверные указатели" +msgstr "Отсеивать только недопустимые указатели" #: tfrmrescanpointer.cbrepeat.caption msgid "Repeat rescan until stopped" -msgstr "Повторять отсеивание до нажатия кнопки «Прекратить»" +msgstr "Повторять отсев до нажатия кнопки «Прекратить»" #: tfrmrescanpointer.cbusesavedpointermap.caption -msgctxt "TFRMRESCANPOINTER.CBUSESAVEDPOINTERMAP.CAPTION" +msgctxt "tfrmrescanpointer.cbusesavedpointermap.caption" msgid "Use saved pointermap" msgstr "Использовать сохранённую карту указателей" #: tfrmrescanpointer.cbusesavedpointermap.hint msgid "" "Normally this should not be used. Saved pointermaps are best suited for the initial scan.\n" -"One case where it could be useful is where you have a pointerfile that is too big to send to someone else, but the scandata file is not. In that case, ask the other person for the scandata and do the scan on your system against the current pointerfile\n" +"One case where it could be useful is where you have a pointerfile that is too big to send to someone else, but the scandata file is not. In that case, ask the other person for the scandata and do the scan on your system against the current pointerfile" msgstr "" "Как правило, эта опция не должна быть задействована, т.к. сохранённые карты указателей лучше всего подходят для первоначального поиска.\n" -"Единственный случай, когда это может быть полезно, это если у вас есть файл с указателями, который слишком велик, чтобы отправить его кому-то другому, но файлы сканирования весят намного меньше. В этом случае, попросите у другого человека файлы сканирования и произведите поиск на своей системе по отношению к текущему файлу с указателями.\n" +"Это может быть полезно, только если у вас есть файл с указателями, который слишком велик, чтобы отправить его кому-то другому, но файлы сканирования весят намного меньше.\n" +"В этом случае, попросите у другого человека файлы сканирования и произведите поиск на своей системе по отношению к текущему файлу с указателями" #: tfrmrescanpointer.cbvaluetype.text msgctxt "tfrmrescanpointer.cbvaluetype.text" msgid "4 Byte" msgstr "4 Байта" -#: tfrmrescanpointer.edtrescanfunction.text -msgid "RescanFilter" -msgstr "RescanFilter" - #: tfrmrescanpointer.label1.caption msgid "seconds" msgstr "секунд" @@ -13427,7 +13655,7 @@ msgstr "Новый базовый адрес" #: tfrmrescanpointer.label3.caption msgid "Original base address" -msgstr "Оригинальный базовый адрес" +msgstr "Исходный базовый адрес" #: tfrmrescanpointer.lbland.caption msgctxt "tfrmrescanpointer.lbland.caption" @@ -13439,7 +13667,7 @@ msgid "(base, offsets, target):bool" msgstr "(base, offsets, target):bool" #: tfrmrescanpointer.lbloriginalbase.caption -msgctxt "TFRMRESCANPOINTER.LBLORIGINALBASE.CAPTION" +msgctxt "tfrmrescanpointer.lbloriginalbase.caption" msgid "
" msgstr "<адрес>" @@ -13453,93 +13681,18 @@ msgctxt "tfrmrescanpointer.rbfindvalue.caption" msgid "Value to find:" msgstr "Поиск значения адреса:" -#: tfrmresumepointerscan.btnnotifyspecificips.caption -msgctxt "TFRMRESUMEPOINTERSCAN.BTNNOTIFYSPECIFICIPS.CAPTION" -msgid "Setup specific IP's to notify" -msgstr "Уведомляемые IP-адреса" - -#: tfrmresumepointerscan.button1.caption -msgctxt "tfrmresumepointerscan.button1.caption" -msgid "Resume" -msgstr "Возобновить" - -#: tfrmresumepointerscan.button2.caption -msgctxt "TFRMRESUMEPOINTERSCAN.BUTTON2.CAPTION" -msgid "Cancel" -msgstr "Отмена" - -#: tfrmresumepointerscan.caption -msgid "Resume pointerscan" -msgstr "Возобновление поиска указателя" - -#: tfrmresumepointerscan.cbbroadcast.caption -msgctxt "TFRMRESUMEPOINTERSCAN.CBBROADCAST.CAPTION" -msgid "Broadcast that a scan has started" -msgstr "Уведомить о начале сканирования" - -#: tfrmresumepointerscan.cbbroadcast.hint -msgctxt "tfrmresumepointerscan.cbbroadcast.hint" -msgid "When checked will send a broadcast message on the local network which will tell pointer scanner systems to join this scan if they are set to auto join" -msgstr "" -"Если включено, то по локальной сети будет отправлено сообщение, которое велит другим устройствам с запущенным сканером указателей присоединиться к этому сканированию, если у них включена опция «Автоприсоединение к поиску и отсеву».\n" -"\n" -"Вы можете воспользоваться кнопкой «Уведомляемые IP-адреса», чтобы зарегистрировать устройства, находящиеся за пределами локальной сети" - -#: tfrmresumepointerscan.cbdistributedscanning.caption -msgctxt "TFRMRESUMEPOINTERSCAN.CBDISTRIBUTEDSCANNING.CAPTION" -msgid "Allow distributed scanning" -msgstr "Разрешить распределённое сканирование" - -#: tfrmresumepointerscan.cbdistributedscanning.hint -msgctxt "tfrmresumepointerscan.cbdistributedscanning.hint" -msgid "Opens a port that other systems running the pointerscanner can connect to and help out with the scan" -msgstr "Открывает порт, к которому могут подключиться другие системы с запущенным сканером указателей и помочь со сканированием" - -#: tfrmresumepointerscan.combobox1.text -msgctxt "TFRMRESUMEPOINTERSCAN.COMBOBOX1.TEXT" -msgid "Normal" -msgstr "Обычный" - -#: tfrmresumepointerscan.label1.caption -msgid "Rescan pointermaps" -msgstr "Отсев" - -#: tfrmresumepointerscan.label9.caption -msgctxt "TFRMRESUMEPOINTERSCAN.LABEL9.CAPTION" -msgid "Nr of threads scanning: " -msgstr "Потоков сканирования: " - -#: tfrmresumepointerscan.lblport.caption -msgctxt "tfrmresumepointerscan.lblport.caption" -msgid "Port:" -msgstr "Порт:" - -#: tfrmresumepointerscan.listview1.columns[0].caption -msgctxt "TFRMRESUMEPOINTERSCAN.LISTVIEW1.COLUMNS[0].CAPTION" -msgid "Filename" -msgstr "Название файла" - -#: tfrmresumepointerscan.listview1.columns[1].caption -msgctxt "TFRMRESUMEPOINTERSCAN.LISTVIEW1.COLUMNS[1].CAPTION" -msgid "Address" -msgstr "Адрес" - -#: tfrmresumepointerscan.listview1.columns[2].caption -msgid "Found" -msgstr "Найдено" - #: tfrmsavedisassembly.button1.caption -msgctxt "TFRMSAVEDISASSEMBLY.BUTTON1.CAPTION" +msgctxt "tfrmsavedisassembly.button1.caption" msgid "Save" msgstr "Сохранить" #: tfrmsavedisassembly.caption -msgctxt "TFRMSAVEDISASSEMBLY.CAPTION" +msgctxt "tfrmsavedisassembly.caption" msgid "Save disassembled output" -msgstr "Сохранить диапазон памяти" +msgstr "Сохранить выходные данные дизассемблера" #: tfrmsavedisassembly.cbaddress.caption -msgctxt "TFRMSAVEDISASSEMBLY.CBADDRESS.CAPTION" +msgctxt "tfrmsavedisassembly.cbaddress.caption" msgid "Address" msgstr "Адрес" @@ -13548,27 +13701,32 @@ msgctxt "tfrmsavedisassembly.cbbytes.caption" msgid "bytes" msgstr "байты" +#: tfrmsavedisassembly.cbcomment.caption +msgctxt "tfrmsavedisassembly.cbcomment.caption" +msgid "Comment" +msgstr "Комментарий" + #: tfrmsavedisassembly.cbopcode.caption msgid "opcode" -msgstr "инструкции" +msgstr "инструкция" #: tfrmsavedisassembly.label1.caption -msgctxt "TFRMSAVEDISASSEMBLY.LABEL1.CAPTION" +msgctxt "tfrmsavedisassembly.label1.caption" msgid "From" msgstr "От" #: tfrmsavedisassembly.label2.caption -msgctxt "TFRMSAVEDISASSEMBLY.LABEL2.CAPTION" +msgctxt "tfrmsavedisassembly.label2.caption" msgid "To" msgstr "До" #: tfrmsavememoryregion.button1.caption -msgctxt "TFRMSAVEMEMORYREGION.BUTTON1.CAPTION" +msgctxt "tfrmsavememoryregion.button1.caption" msgid "Save" msgstr "Сохранить" #: tfrmsavememoryregion.button2.caption -msgctxt "TFRMSAVEMEMORYREGION.BUTTON2.CAPTION" +msgctxt "tfrmsavememoryregion.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -13590,12 +13748,12 @@ msgid "Add the region(s) of memory you want to save" msgstr "Добавьте регион(ы) памяти для сохранения" #: tfrmsavememoryregion.label2.caption -msgctxt "TFRMSAVEMEMORYREGION.LABEL2.CAPTION" +msgctxt "tfrmsavememoryregion.label2.caption" msgid "From" msgstr "От" #: tfrmsavememoryregion.label3.caption -msgctxt "TFRMSAVEMEMORYREGION.LABEL3.CAPTION" +msgctxt "tfrmsavememoryregion.label3.caption" msgid "To" msgstr "До" @@ -13609,6 +13767,7 @@ msgid "Combined select" msgstr "Комбинированный выбор" #: tfrmsavesnapshots.btndone.caption +msgctxt "tfrmsavesnapshots.btndone.caption" msgid "Done" msgstr "Готово" @@ -13629,7 +13788,7 @@ msgid "Deselect all" msgstr "Убрать выбранное" #: tfrmsavesnapshots.lblselectall.caption -msgctxt "TFRMSAVESNAPSHOTS.LBLSELECTALL.CAPTION" +msgctxt "tfrmsavesnapshots.lblselectall.caption" msgid "Select all" msgstr "Выбрать все" @@ -13650,34 +13809,12 @@ msgctxt "tfrmselectionlist.label1.caption" msgid "caption" msgstr "заголовок" -#: tfrmsetcrosshair.btnapply.caption -msgid "Apply crosshair" -msgstr "Применить перекрестие" - -#: tfrmsetcrosshair.caption -msgid "D3D: Set Crosshair" -msgstr "D3D: Установка перекрестия" - -#: tfrmsetcrosshair.label1.caption -msgid "Alphablend" -msgstr "AlphaBlend" - -#: tfrmsetcrosshair.menuitem1.caption -msgctxt "TFRMSETCROSSHAIR.MENUITEM1.CAPTION" -msgid "File" -msgstr "Файл" - -#: tfrmsetcrosshair.menuitem2.caption -msgid "Load image" -msgstr "Загрузить изображение" - #: tfrmsetuppsnnode.btncancel.caption -msgctxt "TFRMSETUPPSNNODE.BTNCANCEL.CAPTION" +msgctxt "tfrmsetuppsnnode.btncancel.caption" msgid "Cancel" msgstr "Отмена" #: tfrmsetuppsnnode.btnok.caption -msgctxt "TFRMSETUPPSNNODE.BTNOK.CAPTION" msgid "Launch" msgstr "Запуск" @@ -13702,7 +13839,11 @@ msgid "Allow temp file usage" msgstr "Разрешить использование временных файлов" #: tfrmsetuppsnnode.cballowtempfiles.hint -msgid "When checked it will save the scandata files it receives into temporary files on the harddisk" +msgid "" +"When checked it will save the scandata files it receives into temporary files on the harddisk\n" +"If it's unchecked these files will stay in memory in their original file format as well as their extracted format\n" +"\n" +"This can be useful when on a system with no disk access but lots of RAM" msgstr "" "Если галочка установлена, то будут сохранены файлы с данными сканирования, которые будут получены из временных файлов на жёстком диске.\n" "Если галочка снята, то эти файлы будут оставаться в оперативной памяти как в их оригинальном, так и в извлечённом формате.\n" @@ -13710,13 +13851,17 @@ msgstr "" "Это может быть полезно на системах без доступа к диску, но с большим объёмом оперативной памяти" #: tfrmsetuppsnnode.cbautotrustchildren.caption -msgctxt "TFRMSETUPPSNNODE.CBAUTOTRUSTCHILDREN.CAPTION" msgid "Automatically trust stability of all new childnodes" msgstr "Доверять стабильности всех новых узлов-потомков" #: tfrmsetuppsnnode.cbautotrustchildren.hint -msgctxt "TFRMSETUPPSNNODE.CBAUTOTRUSTCHILDREN.HINT" -msgid "Normally when a worker terminates before the scan is done it will send all it's paths to it's connected node and then close, but if the system would crash it wouldn't be able to send it's queues to the node, causing in a loss of possible paths to examine" +msgid "" +"Normally when a worker terminates before the scan is done it will send all it's paths to it's connected node and then close, but if the system would crash it wouldn't be able to send it's queues to the node, causing in a loss of possible paths to examine\n" +"\n" +"When unchecked the owning controller/scanner will only send it one pointerpath queue element at a time and remembers that queue element until the worker reports that it has 0 queue elements, meaning it successfully completed the work item.\n" +"Also note that under normal circumstaces the node will accept new paths from the worker, but in the case of non stable workers this is not done and the worker has to do all the sub paths it generated itself\n" +"\n" +"In the node screen you will be able to change the state of a worker" msgstr "" "Обычно, когда работник прекращает работу до окончания сканирования, он отправляет все найденные цепочки указателя узлу с которым он соединён, а затем закрывается, но если система аварийно завершит работу, то он не сможет сделать этого, что приведёт к утере возможных цепочек указателя для проверки.\n" "\n" @@ -13730,33 +13875,39 @@ msgid "Connect to other node as" msgstr "Подключиться к другому узлу как" #: tfrmsetuppsnnode.cbconnecttoothernode.hint -msgctxt "TFRMSETUPPSNNODE.CBCONNECTTOOTHERNODE.HINT" +msgctxt "tfrmsetuppsnnode.cbconnecttoothernode.hint" msgid "Connect to another system as it's parent or child" msgstr "Подключиться к другой системе в качестве его родителя или потомка" #: tfrmsetuppsnnode.cbmaxfoundresults.caption -msgctxt "TFRMSETUPPSNNODE.CBMAXFOUNDRESULTS.CAPTION" +msgctxt "tfrmsetuppsnnode.cbmaxfoundresults.caption" msgid "Stop scans after finding max amount of results" -msgstr "Прервать сканирование при нахождении макс. кол-ва результатов" +msgstr "Остановить сканирование при нахождении макс. кол-ва результатов" #: tfrmsetuppsnnode.cbmaxfoundresults.hint -msgid "This will terminate all the children and disconnect from the parent after having found at least the given amount of results" +msgid "" +"This will terminate all the children and disconnect from the parent after having found at least the given amount of results\n" +"It's slightly innacurate as the check is only done every 10 seconds or so\n" +"\n" +"Note: This only has effect when there is at least one parent in the queue. Otherwise it's not going to disconnect" msgstr "" -"Завершит работу всех потомков и отключит от родителя после нахождения заданного результата\n" -"Т.к. проверка делается примерно каждые 10 секунд, то конечный результат может оказаться неточным\n" +"Завершит работу всех потомков и отключит от родителя после нахождения по крайней мере заданного количества результатов\n" +"Действие будет не совсем точным, т.к. проверка происходит примерно каждые 10 секунд\n" "\n" "Примечание: Только если в очереди находится хотя бы один родитель, в противном случае отключения не произойдёт" #: tfrmsetuppsnnode.cbmaxtimetoscan.caption -msgctxt "TFRMSETUPPSNNODE.CBMAXTIMETOSCAN.CAPTION" +msgctxt "tfrmsetuppsnnode.cbmaxtimetoscan.caption" msgid "Stop scans after specific time" -msgstr "Прервать сканирование через определённое время" +msgstr "Остановить сканирование через определённое время" #: tfrmsetuppsnnode.cbmaxtimetoscan.hint -msgid "This will terminate all the children and disconnect from the parent after scanning for the given amount of time." +msgid "" +"This will terminate all the children and disconnect from the parent after scanning for the given amount of time.\n" +"\n" +"Note: This only has effect when there is at least one parent in the queue. Otherwise it's not going to disconnect" msgstr "" -"Завершит работу всех потомков и отключит от родителя после окончания заданного времени\n" -"Т.к. проверка делается примерно каждые 10 секунд, то конечный результат может быть неточным\n" +"Завершит работу всех потомков и отключит от родителя после сканирования в течение заданного периода времени..\n" "\n" "Примечание: Только если в очереди находится хотя бы один родитель, в противном случае отключения не произойдёт" @@ -13766,7 +13917,9 @@ msgid "Lower" msgstr "Ниже обычного" #: tfrmsetuppsnnode.edtthreadcount.hint -msgid "The number of threads to scan." +msgid "" +"The number of threads to scan.\n" +"Hint: Can be 0" msgstr "" "Число потоков сканирования.\n" "Подсказка: Может быть 0" @@ -13786,17 +13939,16 @@ msgid "IP" msgstr "IP-адрес" #: tfrmsetuppsnnode.lbllistenport.caption -msgctxt "TFRMSETUPPSNNODE.LBLLISTENPORT.CAPTION" msgid "Listen port" -msgstr "Слушающий порт" +msgstr "Порт прослушивания" #: tfrmsetuppsnnode.lblpassword.caption -msgctxt "TFRMSETUPPSNNODE.LBLPASSWORD.CAPTION" +msgctxt "tfrmsetuppsnnode.lblpassword.caption" msgid "Password" msgstr "Пароль" #: tfrmsetuppsnnode.lblpasswordchild.caption -msgctxt "TFRMSETUPPSNNODE.LBLPASSWORDCHILD.CAPTION" +msgctxt "tfrmsetuppsnnode.lblpasswordchild.caption" msgid "Password" msgstr "Пароль" @@ -13806,12 +13958,11 @@ msgid "Password" msgstr "Пароль" #: tfrmsetuppsnnode.lblport.caption -msgctxt "TFRMSETUPPSNNODE.LBLPORT.CAPTION" +msgctxt "tfrmsetuppsnnode.lblport.caption" msgid "Port" msgstr "Порт" #: tfrmsetuppsnnode.lblpriority.caption -msgctxt "TFRMSETUPPSNNODE.LBLPRIORITY.CAPTION" msgid "Priority" msgstr "Приоритет" @@ -13832,6 +13983,7 @@ msgid "parent" msgstr "родитель" #: tfrmsnapshothandler.btncompare.caption +msgctxt "tfrmsnapshothandler.btncompare.caption" msgid "Compare" msgstr "Сравнить" @@ -13845,7 +13997,7 @@ msgid "Compare selected snapshots" msgstr "Сравнить выбранные снимки" #: tfrmsnapshothandler.menuitem1.caption -msgctxt "TFRMSNAPSHOTHANDLER.MENUITEM1.CAPTION" +msgctxt "tfrmsnapshothandler.menuitem1.caption" msgid "File" msgstr "Файл" @@ -13857,6 +14009,11 @@ msgstr "Конфигурация" msgid "Open snapshot(s)" msgstr "Открыть снимок" +#: tfrmsnapshothandler.menuitem8.caption +msgctxt "tfrmsnapshothandler.menuitem8.caption" +msgid "Clear List" +msgstr "Очистить список" + #: tfrmsnapshothandler.miconfig.caption msgid "Configure snapshot settings" msgstr "Настройка параметров снимка" @@ -13871,7 +14028,7 @@ msgid "Stack" msgstr "Стек" #: tfrmsortpointerlist.button1.caption -msgctxt "TFRMSORTPOINTERLIST.BUTTON1.CAPTION" +msgctxt "tfrmsortpointerlist.button1.caption" msgid "Cancel" msgstr "Отмена" @@ -13884,10 +14041,70 @@ msgid "Sorting the pointerlist. Please wait...." msgstr "Сортировка списка указателей. Подождите..." #: tfrmsortpointerlist.lbltimeleft.caption -msgctxt "TFRMSORTPOINTERLIST.LBLTIMELEFT.CAPTION" +msgctxt "tfrmsortpointerlist.lbltimeleft.caption" msgid "Estimated time left:" msgstr "Время до окончания:" +#: tfrmsourcedisplay.caption +msgid "frmSourceDisplay" +msgstr "Отображение источника" + +#: tfrmsourcedisplay.menuitem1.caption +msgid "View Disassembly" +msgstr "Просмотр дизассемблера" + +#: tfrmsourcedisplay.menuitem2.caption +msgid "Toggle BP" +msgstr "Переключить брейкпоинт" + +#: tfrmsourcedisplay.menuitem3.caption +msgctxt "tfrmsourcedisplay.menuitem3.caption" +msgid "Run" +msgstr "Выполнить" + +#: tfrmsourcedisplay.menuitem4.caption +msgctxt "tfrmsourcedisplay.menuitem4.caption" +msgid "Step Into" +msgstr "Шаг с заходом" + +#: tfrmsourcedisplay.menuitem5.caption +msgctxt "tfrmsourcedisplay.menuitem5.caption" +msgid "Step Over" +msgstr "Шаг с обходом" + +#: tfrmsourcedisplay.menuitem6.caption +msgctxt "tfrmsourcedisplay.menuitem6.caption" +msgid "Step Out" +msgstr "Шаг с выходом" + +#: tfrmsourcedisplay.menuitem7.caption +msgid "Run Till..." +msgstr "Выполнить до..." + +#: tfrmsourcedisplay.tbrun.hint +msgid "Run (F9)" +msgstr "Выполнить (F9)" + +#: tfrmsourcedisplay.tbruntill.hint +msgid "(Run Till...) F4" +msgstr "(Выполнить до...) F4" + +#: tfrmsourcedisplay.tbstepinto.hint +msgid "Step Into (F7)" +msgstr "Шаг с заходом (F7)" + +#: tfrmsourcedisplay.tbstepout.hint +msgid "(Step Out) Shift+F8" +msgstr "(Шаг с выходом) Shift+F8" + +#: tfrmsourcedisplay.tbstepover.hint +msgid "Step Over(F8)" +msgstr "Шаг с обходом(F8)" + +#: tfrmsourcedisplay.tbtogglebreakpoint.hint +msgid "Toggle Breakpoint (F5)" +msgstr "Переключить брейкпоинт (F5)" + #: tfrmstacktrace.caption msgctxt "tfrmstacktrace.caption" msgid "Stacktrace" @@ -13929,12 +14146,12 @@ msgid "Stack View" msgstr "Просмотр стека" #: tfrmstackview.lvstack.columns[0].caption -msgctxt "TFRMSTACKVIEW.LVSTACK.COLUMNS[0].CAPTION" +msgctxt "tfrmstackview.lvstack.columns[0].caption" msgid "Address" msgstr "Адрес" #: tfrmstackview.lvstack.columns[1].caption -msgctxt "TFRMSTACKVIEW.LVSTACK.COLUMNS[1].CAPTION" +msgctxt "tfrmstackview.lvstack.columns[1].caption" msgid "Value" msgstr "Значение" @@ -13944,7 +14161,7 @@ msgstr "Вторичное" #: tfrmstackview.menuitem3.caption msgid "Lock and add this view to a structure dissect window" -msgstr "Заблокировать и добавить это представление в «Анализ структур»" +msgstr "Фиксировать и добавить это представление в «Анализ структур»" #: tfrmstackview.menuitem6.caption msgid "Copy Line" @@ -13968,90 +14185,30 @@ msgid "Copy Value" msgstr "Копировать значение" #: tfrmstackview.mifind.caption -msgctxt "TFRMSTACKVIEW.MIFIND.CAPTION" +msgctxt "tfrmstackview.mifind.caption" msgid "Find" msgstr "Найти" #: tfrmstackview.mifindnext.caption +msgctxt "tfrmstackview.mifindnext.caption" msgid "Find Next..." msgstr "Найти далее..." #: tfrmstackview.milockandtrace.caption msgid "Lock and do manual stacktrace" -msgstr "Заблокировать и выполнить ручную трассировку стека" +msgstr "Фиксировать и выполнить ручную трассировку стека" #: tfrmstackview.misetcolor.caption msgid "Set background color to address" msgstr "Выбрать цвет фона адреса" -#: tfrmstringmap.btnfree.caption -msgid "Free the current list" -msgstr "Очистить текущий список" - -#: tfrmstringmap.btnscan.caption -msgctxt "tfrmstringmap.btnscan.caption" -msgid "Generate string map" -msgstr "Создать карту строк" - -#: tfrmstringmap.btnshowlist.caption -msgctxt "tfrmstringmap.btnshowlist.caption" -msgid "<5 and value~=8\n" +"value>5 and value~=8" msgstr "" -"Если флажок установлен, значение будет интерпретироваться как Lua скрипт.\n" +"Если эта опция включена, значение будет интерпретироваться как скрипт Lua.\n" "доступны локальные переменные:\n" "значение, предыдущее значение\n" "\n" "пример:\n" -"значение>5 и значение~=8\n" +"значение>5 и значение~=8" #: tmainform.cbnewluastate.caption msgid "Separate Lua state" -msgstr "Отдельные Lua состояния" +msgstr "Отдельное состояние Lua" #: tmainform.cbnewluastate.hint msgid "" "When checked, the Lua environment used will be limited to just some basic functions and you won't have access to userdefined functions.\n" -"The positive side is that this allows multiple threads to scan at the same time, so will be a lot faster\n" +"The positive side is that this allows multiple threads to scan at the same time, so will be a lot faster" msgstr "" -"Если флажок установлен, используемая среда Lua будет ограничена только некоторыми базовыми функциями и у вас не будет доступа к пользовательским функциям.\n" -"Положительным моментом является то, что это позволяет сканировать одновременно несколько потоков, поэтому будет намного быстрее\n" +"Если галочка установлена, то используемая среда Lua будет ограничена только некоторыми базовыми функциями, и у вас не будет доступа к пользовательским функциям.\n" +"Положительная сторона в том, что это позволит производить одновременное сканирование нескольким потокам, что будет намного быстрее" #: tmainform.cbnot.caption msgid "Not" @@ -16406,15 +16392,24 @@ msgstr "Приостановить процесс игры при поиске" msgid "Percent" msgstr "Процент" +#: tmainform.cbpresentmemoryonly.caption +msgid "Active memory only" +msgstr "Только активная память" + +#: tmainform.cbpresentmemoryonly.hint +msgid "Only scans the working set of a process" +msgstr "Сканирует только рабочий набор процесса" + #: tmainform.cbrepeatuntilstopped.caption msgid "Repeat" msgstr "Повторение" #: tmainform.cbrepeatuntilstopped.hint msgid "Repeats the unchanged value scan until it gets stopped" -msgstr "Повторяет поиск неизмененного значения до тех пор, пока он не будет остановлено" +msgstr "Повторяет отсев «Значение не изменилось» до тех пор, пока он не будет остановлен" #: tmainform.cbspeedhack.caption +msgctxt "tmainform.cbspeedhack.caption" msgid "Enable Speedhack" msgstr "Включить спидхак" @@ -16422,13 +16417,8 @@ msgstr "Включить спидхак" msgid "Enable speedhack" msgstr "Включить спидхак" -#: tmainform.cbunicode.caption -msgctxt "tmainform.cbunicode.caption" -msgid "UTF-16" -msgstr "UTF-16" - #: tmainform.cbunrandomizer.caption -msgctxt "TMAINFORM.CBUNRANDOMIZER.CAPTION" +msgctxt "tmainform.cbunrandomizer.caption" msgid "Unrandomizer" msgstr "Антирандомайзер" @@ -16461,7 +16451,7 @@ msgid "Change record" msgstr "Изменить запись" #: tmainform.changescript1.caption -msgctxt "TMAINFORM.CHANGESCRIPT1.CAPTION" +msgctxt "tmainform.changescript1.caption" msgid "Change script" msgstr "Изменить скрипт" @@ -16470,12 +16460,12 @@ msgid "Table Extras" msgstr "Дополнение к таблице" #: tmainform.copy1.caption -msgctxt "TMAINFORM.COPY1.CAPTION" +msgctxt "tmainform.copy1.caption" msgid "Copy" msgstr "Копировать" #: tmainform.copy2.caption -msgctxt "TMAINFORM.COPY2.CAPTION" +msgctxt "tmainform.copy2.caption" msgid "Copy" msgstr "Копировать" @@ -16488,17 +16478,17 @@ msgid "Create Header" msgstr "Создать заголовок" #: tmainform.createprocess1.caption -msgctxt "TMAINFORM.CREATEPROCESS1.CAPTION" +msgctxt "tmainform.createprocess1.caption" msgid "Create Process" msgstr "Создать процесс" #: tmainform.cut1.caption -msgctxt "TMAINFORM.CUT1.CAPTION" +msgctxt "tmainform.cut1.caption" msgid "Cut" msgstr "Вырезать" #: tmainform.cut2.caption -msgctxt "TMAINFORM.CUT2.CAPTION" +msgctxt "tmainform.cut2.caption" msgid "Cut" msgstr "Вырезать" @@ -16507,7 +16497,7 @@ msgid "Delete this record" msgstr "Удалить эту запись" #: tmainform.description1.caption -msgctxt "TMAINFORM.DESCRIPTION1.CAPTION" +msgctxt "tmainform.description1.caption" msgid "Description" msgstr "Описание" @@ -16522,10 +16512,10 @@ msgstr "&Файл" #: tmainform.findoutwhataccessesthisaddress1.caption msgctxt "tmainform.findoutwhataccessesthisaddress1.caption" msgid "Find out what accesses this address" -msgstr "Найти инструкции, обращающиеся к этому адресу" +msgstr "Выяснить, что обращается к этому адресу" #: tmainform.forcerechecksymbols1.caption -msgctxt "TMAINFORM.FORCERECHECKSYMBOLS1.CAPTION" +msgctxt "tmainform.forcerechecksymbols1.caption" msgid "Force recheck symbols" msgstr "Принудительная перепроверка символов" @@ -16534,17 +16524,17 @@ msgid "This shows the amount of addresses found" msgstr "Общее количество найденных адресов" #: tmainform.foundlist3.columns[0].caption -msgctxt "TMAINFORM.FOUNDLIST3.COLUMNS[0].CAPTION" +msgctxt "tmainform.foundlist3.columns[0].caption" msgid "Address" msgstr "Адрес" #: tmainform.foundlist3.columns[1].caption -msgctxt "TMAINFORM.FOUNDLIST3.COLUMNS[1].CAPTION" +msgctxt "tmainform.foundlist3.columns[1].caption" msgid "Value" msgstr "Значение" #: tmainform.foundlist3.columns[2].caption -msgctxt "TMAINFORM.FOUNDLIST3.COLUMNS[2].CAPTION" +msgctxt "tmainform.foundlist3.columns[2].caption" msgid "Previous" msgstr "Прежнее" @@ -16565,17 +16555,17 @@ msgid "Cheat Engine Help" msgstr "Справка" #: tmainform.label1.caption -msgctxt "TMAINFORM.LABEL1.CAPTION" +msgctxt "tmainform.label1.caption" msgid "Start" msgstr "От" #: tmainform.label2.caption -msgctxt "TMAINFORM.LABEL2.CAPTION" +msgctxt "tmainform.label2.caption" msgid "Stop" msgstr "До" #: tmainform.label54.caption -msgctxt "TMAINFORM.LABEL54.CAPTION" +msgctxt "tmainform.label54.caption" msgid "Speed" msgstr "Скорость" @@ -16591,17 +16581,17 @@ msgstr "Тип поиска" #: tmainform.lblsigned.caption msgid "" "This table has been signed by\n" -"Someone\n" +"Someone" msgstr "" "Эта таблица была подписана\n" -"Кем-то\n" +"Кем-то" #: tmainform.lblvaluetype.caption msgid "Value Type" msgstr "Тип значения" #: tmainform.load1.caption -msgctxt "TMAINFORM.LOAD1.CAPTION" +msgctxt "tmainform.load1.caption" msgid "Load" msgstr "Загрузить" @@ -16609,20 +16599,28 @@ msgstr "Загрузить" msgid "Select All" msgstr "Выбрать все" -#: tmainform.menuitem12.caption -msgid "Cheat Engine Tutorial (64-Bit)" -msgstr "Учебное руководство (64-битная версия)" - #: tmainform.menuitem15.caption msgid "Cheat Engine Tutorial Games" msgstr "Игровое учебное руководство" +#: tmainform.menuitem16.caption +msgid "Cheat Engine Tutorial (AArch64)" +msgstr "Учебное руководство (AArch64)" + +#: tmainform.menuitem17.caption +msgid "Memory read method" +msgstr "Метод чтения из памяти" + +#: tmainform.menuitem18.caption +msgid "Memory write method" +msgstr "Метод записи в память" + #: tmainform.menuitem7.caption msgid "Quit" msgstr "Выйти" #: tmainform.menuitem8.caption -msgctxt "TMAINFORM.MENUITEM8.CAPTION" +msgctxt "tmainform.menuitem8.caption" msgid "Open Process" msgstr "Открыть процесс" @@ -16635,7 +16633,7 @@ msgid "D3D" msgstr "D3D" #: tmainform.miabout.caption -msgctxt "TMAINFORM.MIABOUT.CAPTION" +msgctxt "tmainform.miabout.caption" msgid "About" msgstr "О Программе" @@ -16649,7 +16647,7 @@ msgstr "Добавить файл(ы)" #: tmainform.miaddtab.caption msgid "Add scan tab" -msgstr "Добавить поисковую вкладку" +msgstr "Добавить вкладку поиска" #: tmainform.miallowcollapse.caption msgid "Allow left and right arrow keys to collapse and expand" @@ -16685,13 +16683,18 @@ msgstr "Изменить значение выбранных адресов" #: tmainform.michangevalueback.caption msgid "Change value of selected addresses back to previous/saved value" -msgstr "Изменить значение выбранных адресов на прежнее/сохранённое" +msgstr "Изменить значение выбранных адресов на прежнее/сохранённое значение" + +#: tmainform.miclearworkingset.caption +msgid "Clear active memory" +msgstr "Очистить активную память" #: tmainform.miclosetab.caption msgid "Close tab" msgstr "Закрыть вкладку" #: tmainform.micompression.caption +msgctxt "tmainform.micompression.caption" msgid "Compression" msgstr "Сжатие" @@ -16701,7 +16704,7 @@ msgstr "Создать форму" #: tmainform.midbvmfindwhatwritesoraccesses.caption msgid "DBVM Find out what writes or accesses this address" -msgstr "DBVM поиск инструкций, записывающие или получающие доступ к этому адресу" +msgstr "DBVM Выяснить, что записывает или обращается к этому адресу" #: tmainform.midefinenewcustomtype.caption msgid "Define new custom type (Auto Assembler)" @@ -16715,76 +16718,76 @@ msgstr "Определить новый пользовательский тип msgid "Delete selected custom type" msgstr "Удалить выбранный пользовательский тип" +#: tmainform.mideletesavedscanresults.caption +msgid "Delete scanresult" +msgstr "Удалить результат сканирования" + #: tmainform.midisassemble.caption msgctxt "tmainform.midisassemble.caption" msgid "Disassemble this memory region" -msgstr "Разобрать этот регион памяти" +msgstr "Дизассемблировать этот регион памяти" #: tmainform.midisplay2byte.caption -msgctxt "TMAINFORM.MIDISPLAY2BYTE.CAPTION" +msgctxt "tmainform.midisplay2byte.caption" msgid "2 Bytes" msgstr "2 Байта" #: tmainform.midisplay4byte.caption -msgctxt "TMAINFORM.MIDISPLAY4BYTE.CAPTION" +msgctxt "tmainform.midisplay4byte.caption" msgid "4 Bytes" msgstr "4 Байта" #: tmainform.midisplay8byte.caption -msgctxt "TMAINFORM.MIDISPLAY8BYTE.CAPTION" +msgctxt "tmainform.midisplay8byte.caption" msgid "8 Bytes" msgstr "8 Байт" #: tmainform.midisplaybyte.caption -msgctxt "TMAINFORM.MIDISPLAYBYTE.CAPTION" +msgctxt "tmainform.midisplaybyte.caption" msgid "Byte" -msgstr "1 Байт" +msgstr "Байт" #: tmainform.midisplaydefault.caption -msgctxt "TMAINFORM.MIDISPLAYDEFAULT.CAPTION" +msgctxt "tmainform.midisplaydefault.caption" msgid "Default" msgstr "По умолчанию" #: tmainform.midisplaydouble.caption -msgctxt "TMAINFORM.MIDISPLAYDOUBLE.CAPTION" +msgctxt "tmainform.midisplaydouble.caption" msgid "Double" msgstr "Double" #: tmainform.midisplayfloat.caption -msgctxt "TMAINFORM.MIDISPLAYFLOAT.CAPTION" +msgctxt "tmainform.midisplayfloat.caption" msgid "Float" msgstr "Float" #: tmainform.midisplayhex.caption -msgctxt "TMAINFORM.MIDISPLAYHEX.CAPTION" +msgctxt "tmainform.midisplayhex.caption" msgid "Hexadecimal" msgstr "Шестнадцатеричное" -#: tmainform.midotnet.caption -msgid ".Net" -msgstr ".Net" - #: tmainform.mieditcustomtype.caption msgid "Edit selected custom type" msgstr "Редактировать выбранный пользовательский тип" #: tmainform.mienablelcldebug.caption -msgid "Enable LCL Debug" -msgstr "Включить LCL отладку" +msgid "Generate errorlogs" +msgstr "Создание журнала ошибок" #: tmainform.miflfindwhataccesses.caption -msgctxt "TMAINFORM.MIFLFINDWHATACCESSES.CAPTION" +msgctxt "tmainform.miflfindwhataccesses.caption" msgid "Find out what accesses this address" -msgstr "Найти инструкции, обращающиеся к этому адресу" +msgstr "Выяснить, что обращается к этому адресу" #: tmainform.miflfindwhatwrites.caption -msgctxt "TMAINFORM.MIFLFINDWHATWRITES.CAPTION" +msgctxt "tmainform.miflfindwhatwrites.caption" msgid "Find out what writes to this address" -msgstr "Найти инструкции, записывающие по этому адресу" +msgstr "Выяснить, что записывает по этому адресу" #: tmainform.miforgotscan.caption msgid "Reload the previous value list (Forgot value scan)" -msgstr "Перезагрузить предыдущий список значений (Искомое значение забыто)" +msgstr "Перезагрузить список прежних значений" #: tmainform.mifoundlistpreferences.caption msgctxt "tmainform.mifoundlistpreferences.caption" @@ -16814,7 +16817,7 @@ msgstr "Настройка группы" #: tmainform.mihelp.caption msgid "&Help" -msgstr "Справка" +msgstr "&Справка" #: tmainform.mihidechildren.caption msgid "Hide children when deactivated" @@ -16825,17 +16828,17 @@ msgid "Hook Direct3D" msgstr "Перехват Direct3D" #: tmainform.milanguages.caption -msgctxt "TMAINFORM.MILANGUAGES.CAPTION" +msgctxt "tmainform.milanguages.caption" msgid "Languages" msgstr "Язык" #: tmainform.miloadrecent.caption msgid "Load Recent" -msgstr "Загрузить последние" +msgstr "Загрузить Недавние" #: tmainform.milockmouseingame.caption msgid "Lock mouse in game window" -msgstr "Заблокировать курсор в пределах окна игры" +msgstr "Фиксировать курсор в пределах окна игры" #: tmainform.miluadocumentation.caption msgid "Lua documentation" @@ -16850,7 +16853,12 @@ msgctxt "tmainform.minetwork.caption" msgid "Network" msgstr "Сеть" +#: tmainform.mionlyshowcurrentcomparetocolumn.caption +msgid "Only show current \"compare to\" column" +msgstr "Показать только текущий столбец «Сравнить с»" + #: tmainform.miopenfile.caption +msgctxt "tmainform.miopenfile.caption" msgid "Open File" msgstr "Открыть файл" @@ -16867,23 +16875,27 @@ msgid "Setting a value to this entry sets same value to children" msgstr "Установка значения для этой записи устанавливает то же значение дочерним записям" #: tmainform.mirenametab.caption -msgctxt "TMAINFORM.MIRENAMETAB.CAPTION" +msgctxt "tmainform.mirenametab.caption" msgid "Rename" msgstr "Переименовать" #: tmainform.miresetrange.caption msgid "Reset range" -msgstr "Диапазон по умолчанию" +msgstr "Сбросить диапазон" #: tmainform.miresyncformswithlua.caption msgid "Resynchronize forms with Lua" msgstr "Синхронизировать формы с Lua" #: tmainform.misave.caption -msgctxt "TMAINFORM.MISAVE.CAPTION" +msgctxt "tmainform.misave.caption" msgid "Save" msgstr "Сохранить" +#: tmainform.misavefile.caption +msgid "Save File" +msgstr "Сохранить файл" + #: tmainform.misavescanresults.caption msgid "Save current scanresults" msgstr "Сохранить результат текущего поиска" @@ -16909,11 +16921,12 @@ msgid "Start and configure snapshot recording" msgstr "Запуск и настройка записи снимка" #: tmainform.mishowasbinary.caption -msgctxt "TMAINFORM.MISHOWASBINARY.CAPTION" +msgctxt "tmainform.mishowasbinary.caption" msgid "Show as binary" msgstr "Показать как двоичное" #: tmainform.mishowassigned.caption +msgctxt "tmainform.mishowassigned.caption" msgid "Show as signed" msgstr "Показать как знаковое" @@ -16926,14 +16939,15 @@ msgid "Show Cheat Table Lua Script" msgstr "Показать Lua скрипт" #: tmainform.mishowpreviousvalue.caption -msgid "Show previous value column" -msgstr "Отображать прежнее значение адреса" +msgid "Show previous value column(s)" +msgstr "Показать столбец прежнего значения адреса" #: tmainform.misigntable.caption msgid "Sign table" msgstr "Подпись таблицы" #: tmainform.misnapshothandler.caption +msgctxt "tmainform.misnapshothandler.caption" msgid "Snapshot handler" msgstr "Обработчик снимка" @@ -16941,10 +16955,24 @@ msgstr "Обработчик снимка" msgid "Table" msgstr "Таблица" +#: tmainform.mitestaccessviolationthread.caption +msgid "Test access violation in thread" +msgstr "Проверка несанкционированного доступа в потоке" + +#: tmainform.mitriggeraccessviolation.caption +msgctxt "tmainform.mitriggeraccessviolation.caption" +msgid "Test access violation" +msgstr "Проверка несанкционированного доступа" + #: tmainform.mitutorial.caption msgid "Cheat Engine Tutorial" msgstr "Учебное руководство" +#: tmainform.mitutorial64.caption +msgctxt "tmainform.mitutorial64.caption" +msgid "Cheat Engine Tutorial (x86_64)" +msgstr "Учебное руководство (x86_64)" + #: tmainform.miundovalue.caption msgctxt "tmainform.miundovalue.caption" msgid "Undo last edit" @@ -16963,7 +16991,7 @@ msgid "Zero-Terminate string" msgstr "Нуль-терминированная строка" #: tmainform.new1.caption -msgctxt "TMAINFORM.NEW1.CAPTION" +msgctxt "tmainform.new1.caption" msgid "Clear list" msgstr "Очистить таблицу" @@ -16976,17 +17004,17 @@ msgid "Open Process window" msgstr "Открыть окно процессов" #: tmainform.paste1.caption -msgctxt "TMAINFORM.PASTE1.CAPTION" +msgctxt "tmainform.paste1.caption" msgid "Paste" msgstr "Вставить" #: tmainform.paste2.caption -msgctxt "TMAINFORM.PASTE2.CAPTION" +msgctxt "tmainform.paste2.caption" msgid "Paste" msgstr "Вставить" #: tmainform.plugins1.caption -msgctxt "TMAINFORM.PLUGINS1.CAPTION" +msgctxt "tmainform.plugins1.caption" msgid "Plugins" msgstr "Плагины" @@ -17015,7 +17043,7 @@ msgid "Bits" msgstr "Биты" #: tmainform.rbdec.caption -msgctxt "TMAINFORM.RBDEC.CAPTION" +msgctxt "tmainform.rbdec.caption" msgid "Decimal" msgstr "Десятичное" @@ -17036,7 +17064,7 @@ msgid "When set and fastscan is enabled will only scan and return addresses that msgstr "Если «Быстрый поиск» включен вместе с этой опцией, то будут сканироваться только адреса, оканчивающиеся указанной цифрой" #: tmainform.removeselectedaddresses1.caption -msgctxt "TMAINFORM.REMOVESELECTEDADDRESSES1.CAPTION" +msgctxt "tmainform.removeselectedaddresses1.caption" msgid "Remove selected addresses" msgstr "Удалить выбранные адреса" @@ -17053,10 +17081,14 @@ msgid "Truncated" msgstr "Усечённое" #: tmainform.save1.caption -msgctxt "TMAINFORM.SAVE1.CAPTION" +msgctxt "tmainform.save1.caption" msgid "Save As..." msgstr "Сохранить как..." +#: tmainform.sbclearactivememory.hint +msgid "Clear RAM usage of target process" +msgstr "Очистить оперативную память выбранного процесса" + #: tmainform.sbopenprocess.hint msgid "Select a process to open" msgstr "Выбор процесса для открытия" @@ -17067,7 +17099,7 @@ msgid "Scan Value" msgstr "Значение" #: tmainform.scantext2.caption -msgctxt "TMAINFORM.SCANTEXT2.CAPTION" +msgctxt "tmainform.scantext2.caption" msgid "Scan Value" msgstr "Значение" @@ -17082,14 +17114,14 @@ msgstr "Выбрать все элементы" #: tmainform.setbreakpoint1.caption msgctxt "tmainform.setbreakpoint1.caption" msgid "Find out what writes to this address" -msgstr "Найти инструкции, записывающие по этому адресу" +msgstr "Выяснить, что записывает по этому адресу" #: tmainform.sethotkey1.caption msgid "Assign Hotkey" msgstr "Назначить горячую клавишу" #: tmainform.settings1.caption -msgctxt "TMAINFORM.SETTINGS1.CAPTION" +msgctxt "tmainform.settings1.caption" msgid "Settings" msgstr "Настройки" @@ -17099,7 +17131,7 @@ msgid "Settings" msgstr "Настройки" #: tmainform.showashexadecimal1.caption -msgctxt "TMAINFORM.SHOWASHEXADECIMAL1.CAPTION" +msgctxt "tmainform.showashexadecimal1.caption" msgid "Show as hexadecimal" msgstr "Показать как шестнадцатеричное" @@ -17113,19 +17145,19 @@ msgstr "Удалить все адреса из таблицы" #: tmainform.speedbutton3.hint msgid "Copy all selected items to the address list" -msgstr "Копировать выбранные адреса в таблицу" +msgstr "Копировать все выбранные элементы в таблицу" #: tmainform.type1.caption -msgctxt "TMAINFORM.TYPE1.CAPTION" +msgctxt "tmainform.type1.caption" msgid "Type" msgstr "Тип" #: tmainform.undoscan.caption msgid "Undo Scan" -msgstr "Возврат" +msgstr "Отменить поиск" #: tmainform.value1.caption -msgctxt "TMAINFORM.VALUE1.CAPTION" +msgctxt "tmainform.value1.caption" msgid "Value" msgstr "Значение" @@ -17135,12 +17167,13 @@ msgid "Binary" msgstr "Двоичное" #: tmemorybrowser.addthisaddresstothelist1.caption +msgctxt "tmemorybrowser.addthisaddresstothelist1.caption" msgid "Add this address to the list" msgstr "Добавить этот адрес в таблицу" #: tmemorybrowser.all1.caption msgid "Full stack" -msgstr "Полноценный стек" +msgstr "Весь стек" #: tmemorybrowser.allocatenonpagedmemory1.caption msgid "Allocate nonpaged memory" @@ -17152,7 +17185,7 @@ msgstr "Ассемблировать" #: tmemorybrowser.assemblycode1.caption msgid "Find assembly code" -msgstr "Поиск инструкций" +msgstr "Поиск ассемблерного кода" #: tmemorybrowser.autoinject1.caption msgid "Auto Assemble" @@ -17176,7 +17209,7 @@ msgid "Memory Viewer" msgstr "Редактор памяти" #: tmemorybrowser.change1.caption -msgctxt "TMEMORYBROWSER.CHANGE1.CAPTION" +msgctxt "tmemorybrowser.change1.caption" msgid "Edit" msgstr "Редактировать" @@ -17189,7 +17222,7 @@ msgid "Continue and detach debugger" msgstr "Продолжить, отсоединив отладчик" #: tmemorybrowser.copybytes.caption -msgctxt "TMEMORYBROWSER.COPYBYTES.CAPTION" +msgctxt "tmemorybrowser.copybytes.caption" msgid "Bytes" msgstr "Байты" @@ -17206,7 +17239,7 @@ msgid "Opcodes" msgstr "Инструкции" #: tmemorybrowser.copytoclipboard1.caption -msgctxt "TMEMORYBROWSER.COPYTOCLIPBOARD1.CAPTION" +msgctxt "tmemorybrowser.copytoclipboard1.caption" msgid "Copy to clipboard" msgstr "Копировать в буфер обмена" @@ -17219,17 +17252,13 @@ msgctxt "tmemorybrowser.cut1.caption" msgid "Copy to clipboard" msgstr "Копировать в буфер обмена" -#: tmemorybrowser.dbvmfindoutwhataddressesthisinstructionaccesses.caption -msgid "DBVM Find out what addresses this instruction accesses" -msgstr "DBVM поиск адресов, к которым обращается эта инструкция" - #: tmemorybrowser.debug1.caption -msgctxt "TMEMORYBROWSER.DEBUG1.CAPTION" +msgctxt "tmemorybrowser.debug1.caption" msgid "Debug" msgstr "Отладка" #: tmemorybrowser.debugstrings1.caption -msgctxt "TMEMORYBROWSER.DEBUGSTRINGS1.CAPTION" +msgctxt "tmemorybrowser.debugstrings1.caption" msgid "Debug strings" msgstr "Отладочные строки" @@ -17239,14 +17268,14 @@ msgstr "Анализ окон" #: tmemorybrowser.dispbytes.caption msgid "Byte hex" -msgstr "1 Байт (шестнадцатеричное)" +msgstr "Байт (шестнадцатеричное)" #: tmemorybrowser.dispchar.caption msgid "Byte decimal" -msgstr "1 Байт (десятичное)" +msgstr "Байт (десятичное)" #: tmemorybrowser.dispdouble.caption -msgctxt "TMEMORYBROWSER.DISPDOUBLE.CAPTION" +msgctxt "tmemorybrowser.dispdouble.caption" msgid "Double" msgstr "Double" @@ -17255,7 +17284,7 @@ msgid "4 Byte hex" msgstr "4 Байта (шестнадцатеричное)" #: tmemorybrowser.dispfloat.caption -msgctxt "TMEMORYBROWSER.DISPFLOAT.CAPTION" +msgctxt "tmemorybrowser.dispfloat.caption" msgid "Float" msgstr "Float" @@ -17288,7 +17317,7 @@ msgid "Dissect code" msgstr "Анализ кода" #: tmemorybrowser.dissectdata1.caption -msgctxt "TMEMORYBROWSER.DISSECTDATA1.CAPTION" +msgctxt "tmemorybrowser.dissectdata1.caption" msgid "Pointer scan" msgstr "Сканирование указателей" @@ -17297,7 +17326,7 @@ msgid "Dissect PE headers" msgstr "Анализ заголовков PE" #: tmemorybrowser.driverlist1.caption -msgctxt "TMEMORYBROWSER.DRIVERLIST1.CAPTION" +msgctxt "tmemorybrowser.driverlist1.caption" msgid "Driver list" msgstr "Список драйверов" @@ -17306,12 +17335,12 @@ msgid "Enumerate DLL's and Symbols" msgstr "Список загруженных dll и символов" #: tmemorybrowser.extra1.caption -msgctxt "TMEMORYBROWSER.EXTRA1.CAPTION" +msgctxt "tmemorybrowser.extra1.caption" msgid "Tools" msgstr "Инструменты" #: tmemorybrowser.file1.caption -msgctxt "TMEMORYBROWSER.FILE1.CAPTION" +msgctxt "tmemorybrowser.file1.caption" msgid "File" msgstr "Файл" @@ -17325,12 +17354,12 @@ msgstr "Поиск в памяти" #: tmemorybrowser.findoutwhataddressesthisinstructionaccesses1.caption msgid "Find out what addresses this instruction accesses" -msgstr "Найти адреса, к которым обращается эта инструкция" +msgstr "Выяснить, к каким адресам обращается эта инструкция" #: tmemorybrowser.findstaticpointers1.caption -msgctxt "TMEMORYBROWSER.FINDSTATICPOINTERS1.CAPTION" +msgctxt "tmemorybrowser.findstaticpointers1.caption" msgid "Find static addresses" -msgstr "Поиск статических адресов" +msgstr "Поиск статичных адресов" #: tmemorybrowser.follow1.caption msgctxt "tmemorybrowser.follow1.caption" @@ -17363,7 +17392,7 @@ msgstr "Таблица дескрипторов прерываний" #: tmemorybrowser.injectdll1.caption msgid "Inject DLL" -msgstr "Инъекция DLL" +msgstr "Внедрение dll" #: tmemorybrowser.jumplines1.caption msgctxt "tmemorybrowser.jumplines1.caption" @@ -17372,21 +17401,22 @@ msgstr "Линии переходов" #: tmemorybrowser.kerneltools1.caption msgid "Kernel tools" -msgstr "Инструменты ядра" +msgstr "Инструментарий ядра" -#: tmemorybrowser.label14.caption -msgctxt "TMEMORYBROWSER.LABEL14.CAPTION" -msgid "Registers:" -msgstr "Регистры:" - -#: tmemorybrowser.label15.caption -msgctxt "TMEMORYBROWSER.LABEL15.CAPTION" +#: tmemorybrowser.lblflags.caption +msgctxt "tmemorybrowser.lblflags.caption" msgid "Flags" msgstr "Флаги" -#: tmemorybrowser.label16.caption -msgid "Segment Registers" -msgstr "Сегментные регистры" +#: tmemorybrowser.lblregisters.caption +msgctxt "tmemorybrowser.lblregisters.caption" +msgid "Registers:" +msgstr "Регистры:" + +#: tmemorybrowser.lblspecial.caption +msgctxt "tmemorybrowser.lblspecial.caption" +msgid "Special" +msgstr "Особые" #: tmemorybrowser.loadmemolryregion1.caption msgid "Load memory region" @@ -17397,7 +17427,7 @@ msgid "Load symbol file" msgstr "Загрузить файл с символами" #: tmemorybrowser.lvstacktracedata.columns[0].caption -msgctxt "TMEMORYBROWSER.LVSTACKTRACEDATA.COLUMNS[0].CAPTION" +msgctxt "tmemorybrowser.lvstacktracedata.columns[0].caption" msgid "Address" msgstr "Адрес" @@ -17406,17 +17436,18 @@ msgid "DWORD" msgstr "DWORD" #: tmemorybrowser.lvstacktracedata.columns[2].caption -msgctxt "TMEMORYBROWSER.LVSTACKTRACEDATA.COLUMNS[2].CAPTION" +msgctxt "tmemorybrowser.lvstacktracedata.columns[2].caption" msgid "Value" msgstr "Значение" #: tmemorybrowser.lvstacktracedata.hint msgid "" "Shows the current stack.\n" -"Tip: When doubleclicking the value and it represents an address, then you can hold shift to make it show in the disassembler, and ctrl to make it show in the memory view. Else Cheat Engine will guess it for you based on if it's executable memory or not\n" +"Tip: When doubleclicking the value and it represents an address, then you can hold shift to make it show in the disassembler, and ctrl to make it show in the memory view. Else Cheat Engine will guess it for you based on if it's executable memory or not" msgstr "" "Показывает текущий стек.\n" -"Совет: При двойном клике по значению и содержащему его адресу, вы можете удерживать клавишу «Shift» для его отображения в дизассемблере или «Ctrl» для отображения в редакторе памяти. Иначе Cheat Engine попытается предположить место его отображения за вас, в зависимости от того, исполняемая это память или нет\n" +"Совет: При двойном клике по значению, представляющему адрес, вы можете удерживать «Shift» для его отображения в дизассемблере или «Ctrl» для отображения в Hex-редакторе.\n" +"Иначе Cheat Engine попытается предположить место его отображения за вас, в зависимости от того, исполняемая это память или нет" #: tmemorybrowser.makepagewritable1.caption msgid "Change page protection" @@ -17434,10 +17465,6 @@ msgstr "Регионы памяти" msgid "All strings" msgstr "Все строки" -#: tmemorybrowser.menuitem11.caption -msgid "Search for accessible strings" -msgstr "Поиск доступных строк" - #: tmemorybrowser.menuitem12.caption msgid "Apply changes to file" msgstr "Применить изменения к файлу" @@ -17458,71 +17485,26 @@ msgstr "Создать структуру из потока данных и ша msgid "Graphical memory view" msgstr "Графическое представление памяти" -#: tmemorybrowser.menuitem2.caption -msgid "Select current function" -msgstr "Выбрать текущую функцию" - -#: tmemorybrowser.menuitem20.caption -msgid "Load trace" -msgstr "Загрузить трассировку" - -#: tmemorybrowser.menuitem21.caption -msgid "Text Encoding" -msgstr "Кодировка текста" - -#: tmemorybrowser.menuitem22.caption -msgid "Watch memory page access" -msgstr "Наблюдение за обращением к странице памяти" - -#: tmemorybrowser.menuitem23.caption -msgid "Set/Unset bookmark" -msgstr "Установить/Убрать закладку" - -#: tmemorybrowser.menuitem24.caption -msgid "Goto bookmark" -msgstr "Перейти к закладке" - -#: tmemorybrowser.menuitem25.caption -msgid "User write history" -msgstr "История пользовательских записей" - -#: tmemorybrowser.menuitem27.caption -msgid "Watchlist" -msgstr "Список наблюдения" - -#: tmemorybrowser.menuitem29.caption -msgid "Compare data/structures" -msgstr "Сравнение данных/структур" - #: tmemorybrowser.menuitem4.caption msgid "Disable toolbar" msgstr "Отключить панель инструментов" -#: tmemorybrowser.menuitem4.caption -msgid "Data Breakpoint" -msgstr "Брейкпоинт по данным" - -#: tmemorybrowser.menuitem5.caption -msgctxt "TMEMORYBROWSER.MENUITEM5.CAPTION" -msgid "Break on Access" -msgstr "Прерваться на Доступе" - -#: tmemorybrowser.menuitem6.caption -msgctxt "TMEMORYBROWSER.MENUITEM6.CAPTION" -msgid "Break on Write" -msgstr "Прерваться на Записи" - -#: tmemorybrowser.menuitem8.caption -msgctxt "TMEMORYBROWSER.MENUITEM8.CAPTION" -msgid "Break and trace" -msgstr "Прерваться и трассировать" - #: tmemorybrowser.menuitem9.caption msgid "Change fade timer" msgstr "Изменить интервал обновления" +#: tmemorybrowser.menuitem5.caption +msgctxt "tmemorybrowser.menuitem5.caption" +msgid "Break on Access" +msgstr "Прерваться на Доступе" + +#: tmemorybrowser.menuitem6.caption +msgctxt "tmemorybrowser.menuitem6.caption" +msgid "Break on Write" +msgstr "Прерваться на Записи" + #: tmemorybrowser.miaddref.caption -msgctxt "TMEMORYBROWSER.MIADDREF.CAPTION" +msgctxt "tmemorybrowser.miaddref.caption" msgid "(ref+*) Ref will be %x" msgstr "(ref+*) Ссылкой будет %x" @@ -17530,12 +17512,17 @@ msgstr "(ref+*) Ссылкой будет %x" msgid "Add to the code list" msgstr "Добавить в список кодов" -#: tmemorybrowser.mibinutils.caption -msgid "BinUtils" -msgstr "BinUtils" +#: tmemorybrowser.miarchautodetect.caption +msgctxt "tmemorybrowser.miarchautodetect.caption" +msgid "Autodetect" +msgstr "Автоопределение" + +#: tmemorybrowser.miarchitecture.caption +msgid "Architecture" +msgstr "Архитектура" #: tmemorybrowser.mibinutilsselect.caption -msgctxt "TMEMORYBROWSER.MIBINUTILSSELECT.CAPTION" +msgctxt "tmemorybrowser.mibinutilsselect.caption" msgid "None" msgstr "Нет" @@ -17549,7 +17536,7 @@ msgid "Break on unexpected exceptions" msgstr "Прерываться на непредвиденных исключениях" #: tmemorybrowser.michangeprotectionr.caption -msgctxt "TMEMORYBROWSER.MICHANGEPROTECTIONR.CAPTION" +msgctxt "tmemorybrowser.michangeprotectionr.caption" msgid "Read" msgstr "Чтение" @@ -17565,11 +17552,20 @@ msgstr "Чтение-Запись" msgid "Read Write Execute" msgstr "Чтение-Запись-Выполнение" +#: tmemorybrowser.miclearcache.caption +msgid "Clear GDB cache for this page" +msgstr "Очистить кэш GDB для этой страницы" + #: tmemorybrowser.micodefilter.caption -msgctxt "TMEMORYBROWSER.MICODEFILTER.CAPTION" +msgctxt "tmemorybrowser.micodefilter.caption" msgid "Code Filter" msgstr "Фильтр кода" +#: tmemorybrowser.micomparestructures.caption +msgctxt "tmemorybrowser.micomparestructures.caption" +msgid "Compare data/structures" +msgstr "Сравнение данных/структур" + #: tmemorybrowser.miconditionalbreak.caption msgid "Set/Change break condition" msgstr "Задать/Изменить условие прерывания" @@ -17586,8 +17582,11 @@ msgstr "Только байты (без адреса)" msgid "Opcodes only (no address)" msgstr "Только инструкции (без адреса)" +#: tmemorybrowser.micr3switcher.caption +msgid "CR3 Switcher" +msgstr "Переключатель CR3" + #: tmemorybrowser.midatabreakpointmenu.caption -msgctxt "tmemorybrowser.midatabreakpointmenu.caption" msgid "Data Breakpoint" msgstr "Брейкпоинт по данным" @@ -17599,8 +17598,12 @@ msgstr "DBVM Активировать маскировку" msgid "DBVM Disable Cloak" msgstr "DBVM Деактивировать маскировку" +#: tmemorybrowser.midbvmfindoutwhataddressesthisinstructionaccesses.caption +msgid "DBVM Find out what addresses this instruction accesses" +msgstr "DBVM Выяснить, к каким адресам обращается эта инструкция" + #: tmemorybrowser.midebugbreak.caption -msgctxt "TMEMORYBROWSER.MIDEBUGBREAK.CAPTION" +msgctxt "tmemorybrowser.midebugbreak.caption" msgid "Break" msgstr "Прерваться" @@ -17610,12 +17613,12 @@ msgstr "Отладочные события" #: tmemorybrowser.midebugexecutetillreturn.caption msgid "Step Out - Execute till return" -msgstr "Шаг с выходом - Выполнить до возврата" +msgstr "Шаг с выходом" #: tmemorybrowser.midebugrun.caption -msgctxt "TMEMORYBROWSER.MIDEBUGRUN.CAPTION" +msgctxt "tmemorybrowser.midebugrun.caption" msgid "Run" -msgstr "Запустить" +msgstr "Выполнить" #: tmemorybrowser.midebugruntill.caption msgctxt "tmemorybrowser.midebugruntill.caption" @@ -17637,7 +17640,6 @@ msgid "Step Over" msgstr "Шаг с обходом" #: tmemorybrowser.midebugtogglebreakpoint.caption -msgctxt "TMEMORYBROWSER.MIDEBUGTOGGLEBREAKPOINT.CAPTION" msgid "Toggle breakpoint" msgstr "Переключить брейкпоинт" @@ -17647,7 +17649,7 @@ msgstr "Удалить брейкпоинт" #: tmemorybrowser.midisassemblertype.caption msgid "Disassembly output" -msgstr "Дизассемблированный вывод" +msgstr "Выходные данные дизассемблера" #: tmemorybrowser.midisassembly32.caption msgid "32-bit" @@ -17658,6 +17660,7 @@ msgid "64-bit" msgstr "64-бита" #: tmemorybrowser.midisassemblyautodetect.caption +msgctxt "tmemorybrowser.midisassemblyautodetect.caption" msgid "Autodetect" msgstr "Автоопределение" @@ -17674,22 +17677,22 @@ msgid "Manage exception code filter" msgstr "Управление фильтром кода исключения" #: tmemorybrowser.miexceptionregionautoaddallocs.caption -msgctxt "TMEMORYBROWSER.MIEXCEPTIONREGIONAUTOADDALLOCS.CAPTION" +msgctxt "tmemorybrowser.miexceptionregionautoaddallocs.caption" msgid "Automatically add allocated memory by CE as watched regions" msgstr "Автоматически добавлять выделенную Cheat Engine'ом память в качестве наблюдаемого региона" #: tmemorybrowser.miexceptionregionmanagelist.caption msgid "Manage exception region list" -msgstr "Управление списком исключений в регионах" +msgstr "Управление списком регионов исключений" #: tmemorybrowser.mifindwhataccesses.caption -msgctxt "TMEMORYBROWSER.MIFINDWHATACCESSES.CAPTION" +msgctxt "tmemorybrowser.mifindwhataccesses.caption" msgid "Find out what accesses this address" -msgstr "Найти инструкции, обращающиеся к этому адресу" +msgstr "Выяснить, что обращается к этому адресу" #: tmemorybrowser.mifindwhatwrites.caption msgid "Find out what writes this address" -msgstr "Найти инструкции, записывающие по этому адресу" +msgstr "Выяснить, что записывает по этому адресу" #: tmemorybrowser.mifollowinhexview.caption msgid "Follow in hexview when stepping" @@ -17699,98 +17702,108 @@ msgstr "Следовать в Hex-редактор при степпинге" msgid "GNU Assembler" msgstr "GNU Ассемблер" +#: tmemorybrowser.migotobookmark.caption +msgctxt "tmemorybrowser.migotobookmark.caption" +msgid "Goto bookmark" +msgstr "Перейти к закладке" + #: tmemorybrowser.migotobookmark0.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK0.CAPTION" +msgctxt "tmemorybrowser.migotobookmark0.caption" msgid "Bookmark 0" msgstr "Закладка 0" #: tmemorybrowser.migotobookmark1.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK1.CAPTION" +msgctxt "tmemorybrowser.migotobookmark1.caption" msgid "Bookmark 1" msgstr "Закладка 1" #: tmemorybrowser.migotobookmark2.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK2.CAPTION" +msgctxt "tmemorybrowser.migotobookmark2.caption" msgid "Bookmark 2" msgstr "Закладка 2" #: tmemorybrowser.migotobookmark3.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK3.CAPTION" +msgctxt "tmemorybrowser.migotobookmark3.caption" msgid "Bookmark 3" msgstr "Закладка 3" #: tmemorybrowser.migotobookmark4.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK4.CAPTION" +msgctxt "tmemorybrowser.migotobookmark4.caption" msgid "Bookmark 4" msgstr "Закладка 4" #: tmemorybrowser.migotobookmark5.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK5.CAPTION" +msgctxt "tmemorybrowser.migotobookmark5.caption" msgid "Bookmark 5" msgstr "Закладка 5" #: tmemorybrowser.migotobookmark6.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK6.CAPTION" +msgctxt "tmemorybrowser.migotobookmark6.caption" msgid "Bookmark 6" msgstr "Закладка 6" #: tmemorybrowser.migotobookmark7.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK7.CAPTION" +msgctxt "tmemorybrowser.migotobookmark7.caption" msgid "Bookmark 7" msgstr "Закладка 7" #: tmemorybrowser.migotobookmark8.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK8.CAPTION" +msgctxt "tmemorybrowser.migotobookmark8.caption" msgid "Bookmark 8" msgstr "Закладка 8" #: tmemorybrowser.migotobookmark9.caption -msgctxt "TMEMORYBROWSER.MIGOTOBOOKMARK9.CAPTION" +msgctxt "tmemorybrowser.migotobookmark9.caption" msgid "Bookmark 9" msgstr "Закладка 9" #: tmemorybrowser.mihidetoolbar.caption msgid "Hide toolbar" -msgstr "Спрятать панель инструментов" +msgstr "Скрыть панель инструментов" #: tmemorybrowser.mihvback.caption -msgctxt "TMEMORYBROWSER.MIHVBACK.CAPTION" +msgctxt "tmemorybrowser.mihvback.caption" msgid "Back" msgstr "Назад" #: tmemorybrowser.mihvfollow.caption -msgctxt "TMEMORYBROWSER.MIHVFOLLOW.CAPTION" +msgctxt "tmemorybrowser.mihvfollow.caption" msgid "Follow" msgstr "Следовать" +#: tmemorybrowser.miiptlog.caption +msgid "IPT Log" +msgstr "Журнал IPT" + #: tmemorybrowser.mikernelmodesymbols.caption -msgctxt "tmemorybrowser.mikernelmodesymbols.caption" msgid "Kernelmode symbols" msgstr "Символы режима ядра" +#: tmemorybrowser.miloadtrace.caption +msgctxt "tmemorybrowser.miloadtrace.caption" +msgid "Load trace" +msgstr "Загрузить трассировку" + #: tmemorybrowser.milock.caption -msgctxt "TMEMORYBROWSER.MILOCK.CAPTION" +msgctxt "tmemorybrowser.milock.caption" msgid "Link with other hexview" msgstr "Связать с другим Hex-редактором" #: tmemorybrowser.milockrowsize.caption -msgid "Lock current rowsize" -msgstr "Заблокировать текущий размер строки" - -#: tmemorybrowser.miluaengine.caption -msgctxt "TMEMORYBROWSER.MILUAENGINE.CAPTION" -msgid "Lua Engine" -msgstr "Lua Engine" +msgctxt "tmemorybrowser.milockrowsize.caption" +msgid "Set custom alignment" +msgstr "Установить пользовательское выравнивание" #: tmemorybrowser.miopenindissectdata.caption msgid "Open in dissect data/structure" -msgstr "Открыть анализ данных/структуры" +msgstr "Открыть в анализе данных/структур" #: tmemorybrowser.mipaging.caption msgid "Paging" msgstr "Страничная организация памяти" #: tmemorybrowser.mipointerspider.caption +msgctxt "tmemorybrowser.mipointerspider.caption" msgid "Structure spider" msgstr "Структурный паук" @@ -17799,30 +17812,41 @@ msgid "Referenced functions" msgstr "Ссылки на функции" #: tmemorybrowser.mireplacewithnops.caption -msgctxt "TMEMORYBROWSER.MIREPLACEWITHNOPS.CAPTION" +msgctxt "tmemorybrowser.mireplacewithnops.caption" msgid "Replace with code that does nothing" msgstr "Заменить ничего не делающим кодом (NOP)" #: tmemorybrowser.mirununhandled.caption +msgctxt "tmemorybrowser.mirununhandled.caption" msgid "Run Unhandled" -msgstr "Запуск без обработки" +msgstr "Выполнить без обработки" + +#: tmemorybrowser.misearchforaccessiblestrings.caption +msgctxt "tmemorybrowser.misearchforaccessiblestrings.caption" +msgid "Search for accessible strings" +msgstr "Поиск доступных строк" + +#: tmemorybrowser.miselectcurrentfunction.caption +msgctxt "tmemorybrowser.miselectcurrentfunction.caption" +msgid "Select current function" +msgstr "Выбрать текущую функцию" #: tmemorybrowser.miseperators.caption msgid "Seperators" msgstr "Разделители" #: tmemorybrowser.misepevery2bytes.caption -msgctxt "TMEMORYBROWSER.MISEPEVERY2BYTES.CAPTION" +msgctxt "tmemorybrowser.misepevery2bytes.caption" msgid "2 Bytes" msgstr "2 Байта" #: tmemorybrowser.misepevery4bytes.caption -msgctxt "TMEMORYBROWSER.MISEPEVERY4BYTES.CAPTION" +msgctxt "tmemorybrowser.misepevery4bytes.caption" msgid "4 Bytes" msgstr "4 Байта" #: tmemorybrowser.misepevery8bytes.caption -msgctxt "TMEMORYBROWSER.MISEPEVERY8BYTES.CAPTION" +msgctxt "tmemorybrowser.misepevery8bytes.caption" msgid "8 Bytes" msgstr "8 Байт" @@ -17883,10 +17907,9 @@ msgstr "DBVM брейкпоинт (+1 инструкция)" #: tmemorybrowser.misetbreakpointhw.caption msgctxt "tmemorybrowser.misetbreakpointhw.caption" msgid "Hardware Breakpoint" -msgstr "Аппаратные брейкпоинт" +msgstr "Аппаратный брейкпоинт" #: tmemorybrowser.misetbreakpointpe.caption -msgctxt "tmemorybrowser.misetbreakpointpe.caption" msgid "Exception Breakpoint (+1 instruction)" msgstr "Исключение (+1 инструкция)" @@ -17896,12 +17919,16 @@ msgid "Software Breakpoint" msgstr "Программный брейкпоинт" #: tmemorybrowser.misetspecificbreakpoint.caption -msgctxt "tmemorybrowser.misetspecificbreakpoint.caption" msgid "Set specific breakpoint type" -msgstr "Установить определенный тип брейкпоинта" +msgstr "Установить определённый тип брейкпоинта" + +#: tmemorybrowser.misetunsetbookmark.caption +msgctxt "tmemorybrowser.misetunsetbookmark.caption" +msgid "Set/Unset bookmark" +msgstr "Установить/Убрать закладку" #: tmemorybrowser.mishowdifference.caption -msgctxt "TMEMORYBROWSER.MISHOWDIFFERENCE.CAPTION" +msgctxt "tmemorybrowser.mishowdifference.caption" msgid "Show difference" msgstr "Показать различие" @@ -17914,46 +17941,46 @@ msgid "Show in hexview" msgstr "Показать в Hex-редакторе" #: tmemorybrowser.mishowmoduleaddresses.caption -msgctxt "tmemorybrowser.mishowmoduleaddresses.caption" msgid "Show module addresses" -msgstr "Показать модульную адресацию" +msgstr "Показывать модульную адресацию" #: tmemorybrowser.mishowrelative.caption +msgctxt "tmemorybrowser.mishowrelative.caption" +msgid "Show relative addresses" +msgstr "Показывать относительные адреса" + +#: tmemorybrowser.mishowrelativedisassembler.caption +msgctxt "tmemorybrowser.mishowrelativedisassembler.caption" msgid "Show relative addresses" msgstr "Показывать относительные адреса" #: tmemorybrowser.mishowsectionaddresses.caption msgid "Show section addresses" -msgstr "Показать адреса разделов" +msgstr "Показывать адреса разделов" #: tmemorybrowser.mishowsymbols.caption -msgctxt "tmemorybrowser.mishowsymbols.caption" msgid "Show symbols" -msgstr "Показать символы" +msgstr "Показывать символы" #: tmemorybrowser.misvcopy.caption -msgctxt "TMEMORYBROWSER.MISVCOPY.CAPTION" +msgctxt "tmemorybrowser.misvcopy.caption" msgid "Copy" msgstr "Копировать" -#: tmemorybrowser.mitextencoding16.caption -msgctxt "tmemorybrowser.mitextencoding16.caption" -msgid "UTF-16" -msgstr "UTF-16" +#: tmemorybrowser.mitextencoding.caption +msgctxt "tmemorybrowser.mitextencoding.caption" +msgid "Text Encoding" +msgstr "Кодировка текста" #: tmemorybrowser.mitextencodingascii.caption msgid "Ascii" msgstr "ASCII" #: tmemorybrowser.mitextencodingcodepage.caption -msgctxt "TMEMORYBROWSER.MITEXTENCODINGCODEPAGE.CAPTION" +msgctxt "tmemorybrowser.mitextencodingcodepage.caption" msgid "Codepage" msgstr "Кодовая страница" -#: tmemorybrowser.mitextencodingutf8.caption -msgid "UTF-8" -msgstr "UTF-8" - #: tmemorybrowser.mitextpreferences.caption msgctxt "tmemorybrowser.mitextpreferences.caption" msgid "Preferences" @@ -17965,6 +17992,7 @@ msgid "Set breakpoint" msgstr "Установить брейкпоинт" #: tmemorybrowser.miultimap.caption +msgctxt "tmemorybrowser.miultimap.caption" msgid "Ultimap" msgstr "Ultimap" @@ -17979,17 +18007,16 @@ msgid "Undo last edit" msgstr "Отменить последнее редактирование" #: tmemorybrowser.miunexpectedexceptionbreakalways.caption -msgctxt "TMEMORYBROWSER.MIUNEXPECTEDEXCEPTIONBREAKALWAYS.CAPTION" +msgctxt "tmemorybrowser.miunexpectedexceptionbreakalways.caption" msgid "Always" msgstr "Всегда" #: tmemorybrowser.miunexpectedexceptionbreakifinregion.caption -msgctxt "TMEMORYBROWSER.MIUNEXPECTEDEXCEPTIONBREAKIFINREGION.CAPTION" msgid "Only in specified regions" msgstr "Только в указанных регионах" #: tmemorybrowser.miunexpectedexceptionbreaknever.caption -msgctxt "TMEMORYBROWSER.MIUNEXPECTEDEXCEPTIONBREAKNEVER.CAPTION" +msgctxt "tmemorybrowser.miunexpectedexceptionbreaknever.caption" msgid "Never" msgstr "Никогда" @@ -18002,10 +18029,14 @@ msgid "Set/Change header" msgstr "Установить/Изменить заголовок" #: tmemorybrowser.miuserdefinedsymbols.caption -msgctxt "tmemorybrowser.miuserdefinedsymbols.caption" msgid "Userdefined symbols" msgstr "Пользовательские символы" +#: tmemorybrowser.miuserwriteinteger.caption +msgctxt "tmemorybrowser.miuserwriteinteger.caption" +msgid "User write history" +msgstr "История пользовательских записей" + #: tmemorybrowser.miwatchaccess.caption msgctxt "tmemorybrowser.miwatchaccess.caption" msgid "Break on Access" @@ -18024,7 +18055,17 @@ msgstr "Исключение" #: tmemorybrowser.miwatchbphardware.caption msgctxt "tmemorybrowser.miwatchbphardware.caption" msgid "Hardware Breakpoint" -msgstr "Аппаратные брейкпоинт" +msgstr "Аппаратный брейкпоинт" + +#: tmemorybrowser.miwatchlist.caption +msgctxt "tmemorybrowser.miwatchlist.caption" +msgid "Watchlist" +msgstr "Список наблюдения" + +#: tmemorybrowser.miwatchmemorypageaccess.caption +msgctxt "tmemorybrowser.miwatchmemorypageaccess.caption" +msgid "Watch memory page access" +msgstr "Наблюдение за обращением к страницам памяти" #: tmemorybrowser.miwatchwrite.caption msgctxt "tmemorybrowser.miwatchwrite.caption" @@ -18036,7 +18077,7 @@ msgid "Modules only" msgstr "Только модули" #: tmemorybrowser.newwindow1.caption -msgctxt "TMEMORYBROWSER.NEWWINDOW1.CAPTION" +msgctxt "tmemorybrowser.newwindow1.caption" msgid "New window" msgstr "Новое окно" @@ -18046,18 +18087,18 @@ msgstr "Только не системные модули" #: tmemorybrowser.onlyshowjumplineswithinrange1.caption msgid "Only show jumplines within range" -msgstr "Показывать линии переходов только в пределах досягаемости" +msgstr "Показывать линии переходов только в пределах диапазона" #: tmemorybrowser.opendlldialog.title msgid "Select the module you want to inject" -msgstr "Выберите модуль для инъекции" +msgstr "Выберите модуль, который вы хотите внедрить" #: tmemorybrowser.pastefromclipboard1.caption msgid "Paste from clipboard" msgstr "Вставить из буфера обмена" #: tmemorybrowser.plugins1.caption -msgctxt "TMEMORYBROWSER.PLUGINS1.CAPTION" +msgctxt "tmemorybrowser.plugins1.caption" msgid "Plugins" msgstr "Плагины" @@ -18070,9 +18111,9 @@ msgid "Allocate Memory" msgstr "Выделить память" #: tmemorybrowser.savedisassemledoutput1.caption -msgctxt "TMEMORYBROWSER.SAVEDISASSEMLEDOUTPUT1.CAPTION" +msgctxt "tmemorybrowser.savedisassemledoutput1.caption" msgid "Save disassembled output" -msgstr "Сохранить диапазон памяти" +msgstr "Сохранить выходные данные дизассемблера" #: tmemorybrowser.savememoryregion1.caption msgid "Save memory region" @@ -18087,7 +18128,7 @@ msgid "Search memory..." msgstr "Поиск в памяти..." #: tmemorybrowser.search2.caption -msgctxt "TMEMORYBROWSER.SEARCH2.CAPTION" +msgctxt "tmemorybrowser.search2.caption" msgid "Search" msgstr "Поиск" @@ -18101,7 +18142,7 @@ msgstr "Задать путь поиска символа" #: tmemorybrowser.showdebugtoolbar1.caption msgid "Show debug toolbar" -msgstr "Показать панель инструментов отладки" +msgstr "Показывать панель инструментов отладки" #: tmemorybrowser.showjumplines1.caption msgid "Show jumplines" @@ -18109,15 +18150,15 @@ msgstr "Показывать линии переходов" #: tmemorybrowser.showvaluesofstaticaddresses1.caption msgid "Show 'Comment' row" -msgstr "Показывать столбец «Комментарий»" +msgstr "Показывать ряд «Комментарий»" #: tmemorybrowser.stacktrace1.caption -msgctxt "TMEMORYBROWSER.STACKTRACE1.CAPTION" +msgctxt "tmemorybrowser.stacktrace1.caption" msgid "Stacktrace" msgstr "Трассировка стека" #: tmemorybrowser.stacktrace2.caption -msgctxt "TMEMORYBROWSER.STACKTRACE2.CAPTION" +msgctxt "tmemorybrowser.stacktrace2.caption" msgid "Stacktrace" msgstr "Трассировка стека" @@ -18131,12 +18172,18 @@ msgctxt "tmemorybrowser.tbruntill.caption" msgid "Run till..." msgstr "Выполнить до..." +#: tmemorybrowser.tbrununhandled.caption +msgctxt "tmemorybrowser.tbrununhandled.caption" +msgid "Run Unhandled" +msgstr "Выполнить без обработки" + #: tmemorybrowser.tbstepinto.caption msgctxt "tmemorybrowser.tbstepinto.caption" msgid "Step Into" msgstr "Шаг с заходом" #: tmemorybrowser.tbstepout.caption +msgctxt "tmemorybrowser.tbstepout.caption" msgid "Step Out" msgstr "Шаг с выходом" @@ -18150,12 +18197,12 @@ msgid "Toggle Breakpoint" msgstr "Переключить брейкпоинт" #: tmemorybrowser.threadlist1.caption -msgctxt "TMEMORYBROWSER.THREADLIST1.CAPTION" +msgctxt "tmemorybrowser.threadlist1.caption" msgid "Threadlist" msgstr "Список потоков" #: tmemorybrowser.view1.caption -msgctxt "TMEMORYBROWSER.VIEW1.CAPTION" +msgctxt "tmemorybrowser.view1.caption" msgid "View" msgstr "Просмотр" @@ -18164,31 +18211,26 @@ msgid "Watch memory allocations" msgstr "Наблюдение за распределением памяти" #: tprocesswindow.btnattachdebugger.caption -msgctxt "tprocesswindow.btnattachdebugger.caption" msgid "Attach debugger to process" msgstr "Присоединить отладчик к процессу" #: tprocesswindow.btnnetwork.caption -msgctxt "TPROCESSWINDOW.BTNNETWORK.CAPTION" +msgctxt "tprocesswindow.btnnetwork.caption" msgid "Network" msgstr "Сеть" -#: tprocesswindow.button4.caption -msgid "Attach debugger to process" -msgstr "Присоединить отладчик к процессу" - #: tprocesswindow.cancelbutton.caption -msgctxt "TPROCESSWINDOW.CANCELBUTTON.CAPTION" +msgctxt "tprocesswindow.cancelbutton.caption" msgid "Cancel" msgstr "Отмена" #: tprocesswindow.caption -msgctxt "TPROCESSWINDOW.CAPTION" +msgctxt "tprocesswindow.caption" msgid "Process List" msgstr "Список процессов" #: tprocesswindow.filter1.caption -msgctxt "TPROCESSWINDOW.FILTER1.CAPTION" +msgctxt "tprocesswindow.filter1.caption" msgid "Filter" msgstr "Фильтр" @@ -18197,21 +18239,22 @@ msgid "Input PID manually" msgstr "Ввести идентификатор процесса" #: tprocesswindow.menuitem1.caption -msgctxt "TPROCESSWINDOW.MENUITEM1.CAPTION" +msgctxt "tprocesswindow.menuitem1.caption" msgid "File" msgstr "Файл" #: tprocesswindow.menuitem3.caption +msgctxt "tprocesswindow.menuitem3.caption" msgid "Process watcher" -msgstr "«Наблюдатель процесса»" +msgstr "Наблюдатель процесса" #: tprocesswindow.menuitem4.caption -msgctxt "TPROCESSWINDOW.MENUITEM4.CAPTION" +msgctxt "tprocesswindow.menuitem4.caption" msgid "View" msgstr "Вид" #: tprocesswindow.menuitem5.caption -msgctxt "TPROCESSWINDOW.MENUITEM5.CAPTION" +msgctxt "tprocesswindow.menuitem5.caption" msgid "Preferences" msgstr "Настройки" @@ -18224,15 +18267,19 @@ msgid "Convert PID to decimal" msgstr "Преобразовать идентификатор процесса в десятичное число" #: tprocesswindow.micreateprocess.caption -msgctxt "TPROCESSWINDOW.MICREATEPROCESS.CAPTION" +msgctxt "tprocesswindow.micreateprocess.caption" msgid "Create Process" msgstr "Создать процесс" #: tprocesswindow.miopenfile.caption -msgctxt "TPROCESSWINDOW.MIOPENFILE.CAPTION" +msgctxt "tprocesswindow.miopenfile.caption" msgid "Open File" msgstr "Открыть файл" +#: tprocesswindow.miownprocessesonly.caption +msgid "Only show processes of the current user" +msgstr "Показывать процессы только текущего пользователя" + #: tprocesswindow.miprocesslistlong.caption msgid "Process List (Long)" msgstr "Полный список процессов" @@ -18246,9 +18293,10 @@ msgstr "Обновить" msgid "Show invisible windows" msgstr "Показывать скрытые окна" -#: tprocesswindow.miownprocessesonly.caption -msgid "Only show processes of the current user" -msgstr "Показывать процессы только текущего пользователя" +#: tprocesswindow.okbutton.caption +msgctxt "tprocesswindow.okbutton.caption" +msgid "Open" +msgstr "Открыть" #: tprocesswindow.tsapplications.caption msgctxt "tprocesswindow.tsapplications.caption" @@ -18276,7 +18324,7 @@ msgstr "О трейнере" #: trainergenerator.rsalreadyatrainerformdefined msgid "There is already a trainer form defined. Continuing will erase the current trainerscript and cheats in the trainer and replace them with the current hotkeys defined in your current cheat table (Layout and images will remain unchanged). Continue ?" -msgstr "Заготовка трейнера уже существует. Продолжение сотрёт текущие скрипты и список читов в трейнере, и заменит их на читы из текущей таблицы (Дизайн трейнера не изменится). Продолжить?" +msgstr "Форма тренера уже определена. Продолжение сотрёт текущие скрипты и читы в трейнере, и заменит их на читы из текущей таблицы (Дизайн трейнера не изменится). Продолжить?" #: trainergenerator.rsareyousure msgctxt "trainergenerator.rsareyousure" @@ -18372,8 +18420,9 @@ msgid "Select the cheat entry you want to set the hotkey for" msgstr "Выберите запись для присвоения ей горячей клавиши" #: trainergenerator.rsset +msgctxt "trainergenerator.rsset" msgid "Set" -msgstr "Изменить значение" +msgstr "Установить" #: trainergenerator.rsthankyou msgid "Thank you! :)" @@ -18399,36 +18448,46 @@ msgstr "В таблице отсутствуют какие-либо запис msgid "Registers" msgstr "Регистры" -#: tregisters.label14.caption -msgctxt "tregisters.label14.caption" +#: tregisters.labelregisters.caption +msgctxt "tregisters.labelregisters.caption" msgid "Registers:" msgstr "Регистры:" -#: tregisters.menuitem1.caption -msgid "Copy registers to clipboard" -msgstr "Копировать регистры в буфер обмена" +#: tregisters.mibrowsememoryregion.caption +msgctxt "tregisters.mibrowsememoryregion.caption" +msgid "Browse this memory region" +msgstr "Просмотреть этот регион памяти" -#: tregisters.menuitem2.caption -msgid "Copy full context block to clipboard" -msgstr "Копировать весь контекстный блок в буфер обмена" +#: tregisters.micopyallregisterstoclipboard.caption +msgid "Copy all registers values to clipboard" +msgstr "Копировать значения всех регистров в буфер обмена" + +#: tregisters.micopyregistervaluetoclipboard.caption +msgid "Copy selected register value to clipboard" +msgstr "Копировать значение выбранного регистра в буфер обмена" + +#: tregisters.midisassemblememoryregion.caption +msgctxt "tregisters.midisassemblememoryregion.caption" +msgid "Disassemble this memory region" +msgstr "Дизассемблировать этот регион памяти" #: tregisters.sbshowfloats.caption -msgctxt "TREGISTERS.SBSHOWFLOATS.CAPTION" +msgctxt "tregisters.sbshowfloats.caption" msgid "F" msgstr "F" #: tregisters.sbshowfloats.hint -msgctxt "TREGISTERS.SBSHOWFLOATS.HINT" +msgctxt "tregisters.sbshowfloats.hint" msgid "Floating point registers" msgstr "Регистры с плавающей точкой" #: tregisters.sbshowstack.caption -msgctxt "TREGISTERS.SBSHOWSTACK.CAPTION" +msgctxt "tregisters.sbshowstack.caption" msgid "S" msgstr "С" #: tregisters.sbshowstack.hint -msgctxt "TREGISTERS.SBSHOWSTACK.HINT" +msgctxt "tregisters.sbshowstack.hint" msgid "Stack view" msgstr "Просмотр стека" @@ -18451,12 +18510,12 @@ msgid "OK" msgstr "Подтвердить" #: ttypeform.caption -msgctxt "TTYPEFORM.CAPTION" +msgctxt "ttypeform.caption" msgid "Type" msgstr "Тип" #: ttypeform.cbcodepage.caption -msgctxt "TTYPEFORM.CBCODEPAGE.CAPTION" +msgctxt "ttypeform.cbcodepage.caption" msgid "Codepage" msgstr "Кодовая страница" @@ -18479,8 +18538,8 @@ msgstr "Юникод" msgid "Select the new type:" msgstr "Выберите новый тип:" -#: ttypeform.labelbit6.caption -msgctxt "ttypeform.labelbit6.caption" +#: ttypeform.labelbitlength.caption +msgctxt "ttypeform.labelbitlength.caption" msgid "Length" msgstr "Длина" @@ -18495,12 +18554,12 @@ msgid "Binary" msgstr "Двоичный" #: tvaluechangeform.button1.caption -msgctxt "TVALUECHANGEFORM.BUTTON1.CAPTION" +msgctxt "tvaluechangeform.button1.caption" msgid "OK" msgstr "Подтвердить" #: tvaluechangeform.button2.caption -msgctxt "TVALUECHANGEFORM.BUTTON2.CAPTION" +msgctxt "tvaluechangeform.button2.caption" msgid "Cancel" msgstr "Отмена" @@ -18509,7 +18568,7 @@ msgid "Change Offset: ########" msgstr "Изменить смещение: ########" #: tvaluechangeform.cbunicode.caption -msgctxt "TVALUECHANGEFORM.CBUNICODE.CAPTION" +msgctxt "tvaluechangeform.cbunicode.caption" msgid "Unicode" msgstr "Юникод" @@ -18517,10 +18576,6 @@ msgstr "Юникод" msgid "1 Byte" msgstr "1 Байт" -#: tvaluechangeform.valuetext.text -msgid "ValueText" -msgstr "Значение/Текст" - #: typepopup.rsinvalidlength msgid "Invalid length" msgstr "Недопустимая длина" @@ -18563,7 +18618,7 @@ msgstr "Двоичный" #: vartypestrings.rs_vtbyte msgctxt "vartypestrings.rs_vtbyte" msgid "Byte" -msgstr "1 Байт" +msgstr "Байт" #: vartypestrings.rs_vtbytearray msgctxt "vartypestrings.rs_vtbytearray" @@ -18597,6 +18652,10 @@ msgctxt "vartypestrings.rs_vtpointer" msgid "Pointer" msgstr "Указатель" +#: vartypestrings.rs_vtpointerornested +msgid "Pointer or Nested Structure" +msgstr "Указатель или Вложенная структура" + #: vartypestrings.rs_vtqword msgctxt "vartypestrings.rs_vtqword" msgid "8 Bytes" @@ -18612,14 +18671,14 @@ msgctxt "vartypestrings.rs_vtstring" msgid "String" msgstr "Строка" -#: vartypestrings.rs_vtwidestring -msgid "Widestring" -msgstr "Widestring" - #: vartypestrings.rs_vtunicodestring msgid "Unicode String" msgstr "Строка юникода" +#: vartypestrings.rs_vtwidestring +msgid "Widestring" +msgstr "Widestring" + #: vartypestrings.rs_vtword msgctxt "vartypestrings.rs_vtword" msgid "2 Bytes" @@ -18631,19 +18690,19 @@ msgstr "Cheat Engine не смог получить конфигурацию в #: vehdebugger.rserrorwhiletryingtocreatetheconfigurationstructure msgid "Error while trying to create the configuration structure! (Which effectively renders this whole feature useless) Errorcode=%s" -msgstr "Ошибка при попытке создать конфигурационную структуру! Код ошибки = %s" +msgstr "Ошибка при попытке создать структуру конфигурации! (Что фактически делает всю эту функцию бесполезной) Код ошибки = %s" #: vehdebugger.rsfailureduplicatingtheeventhandlestotheotherprocess msgid "Failure duplicating the event handles to the other process" -msgstr "Не удалось продублировать обработчики событий к другому процессу" +msgstr "Не удалось продублировать дескриптор событий к другому процессу" #: vehdebugger.rsfailureduplicatingthefilemapping msgid "Failure duplicating the filemapping" -msgstr "Не удалось продублировать маппинг файла" +msgstr "Не удалось продублировать сопоставление файла" #: vehdebugger.rsthevehdllseemstohavefailedtoload msgid "The VEH dll seems to have failed to load" -msgstr "Кажется, не удалось загрузить VEH dll" +msgstr "Похоже, что VEH dll не удалось загрузить" #: vehdebugger.rsvehdebugerror msgid "VEH Debug error" @@ -18651,7 +18710,7 @@ msgstr "Ошибка VEH отладки" #: vehdebugger.rswrongvehdllversion msgid "The version of the VEH dll inside the target process (%x) does not match what was expected %x" -msgstr "Версия VEH dll внутри процесса цели (%x) не соответствует ожидаемой %x" +msgstr "Версия VEH dll внутри выбранного процесса (%x) не соответствует ожидаемой %x" #: virtualmemory.rsnomemoryfoundinthespecifiedregion msgctxt "virtualmemory.rsnomemoryfoundinthespecifiedregion" @@ -18681,14 +18740,6 @@ msgstr "ошибка" msgid "Error attaching the windows debugger: %s" msgstr "Ошибка присоединения отладчика Windows: %s" -#: xmplayer_server.rsfailedcreatingtheaudiopipe -msgid "Failed creating the audio pipe" -msgstr "Не удалось создать аудио канал" - -#: xmplayer_server.rsxmplayerexeismissing -msgid "xmplayer.exe is missing" -msgstr "отсутствует xmplayer.exe" - #: zstreamext.rsaseekwasdoneforanotherpurpose msgid "A seek was done for another purpose than getting the position" msgstr "Поиск проводился в иных целях, нежели получение позиции" @@ -18696,18 +18747,902 @@ msgstr "Поиск проводился в иных целях, нежели п msgid "Cheat Engine Scan Busy" msgstr "Сканирование занято" +#: frmbusyunit.rsbusy msgid "The previous scan is still being processed. Please wait" msgstr "Предыдущее сканирование всё ещё обрабатывается. Пожалуйста, подождите" +#: frmbusyunit.rsjustfinished +msgid "(Just starting to process)" +msgstr "(Только начал обрабатывать)" + +#: frmbusyunit.rsoptimizingscanresults +msgid "(Optimizing result list for improved speed)" +msgstr "(Оптимизация списка результатов для повышения скорости)" + +#: frmbusyunit.rsterminatingthreads +msgid "(Freeing scanner thread memory)" +msgstr "(Освобождение памяти потока сканера)" + +#: frmbusyunit.rssavingfirstscanresults +msgid "(Copying results for first scan scanner option)" +msgstr "(Копирование результатов первого сканирования)" + +#: frmbusyunit.rssavingfirstscanresults2 +msgid "(Still copying the results for the first scan scanner option)" +msgstr "(Всё ещё копируются результаты для первого варианта сканирования)" + #: tprocesswindow.cbskipsystemprocesses.caption msgid "Only show non-system processes" msgstr "Показывать только несистемные процессы" #: frmstructurecompareunit.rsunlock msgid "Unlock" -msgstr "Разблокировать" +msgstr "Снять фиксацию" #: frmstructurecompareunit.rslock msgctxt "frmstructurecompareunit.rslock" msgid "Lock" -msgstr "Заблокировать" +msgstr "Фиксировать" + +#: tfrmthreadlistex.button1.caption +msgctxt "tfrmthreadlistex.button1.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmthreadlistex.caption +msgid "ThreadInfo" +msgstr "Информация о потоке" + +#: tformsettings.cbprocessiconsonly.caption +msgid "Only show processes with an icon" +msgstr "Показывать только процессы с иконкой" + +#: tfrmapihooktemplatesettings.button1.caption +msgctxt "tfrmapihooktemplatesettings.button1.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmapihooktemplatesettings.button2.caption +msgctxt "tfrmapihooktemplatesettings.button2.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmapihooktemplatesettings.caption +msgid "Api hook template" +msgstr "Шаблон перехвата API" + +#: tfrmapihooktemplatesettings.label1.caption +msgid "Original api address:" +msgstr "Оригинальный адрес API:" + +#: tfrmapihooktemplatesettings.label2.caption +msgid "New api address:" +msgstr "Новый адрес API:" + +#: tfrmapihooktemplatesettings.label3.caption +msgid "Address where to store the new original api call:" +msgstr "Адрес хранения нового вызова оригинального API:" + +#: tfrmapihooktemplatesettings.label4.caption +msgid "(optional, in case your dll uses a variable for the call)" +msgstr "(в случае, если ваша dll использует переменную для вызова)" + +#: tfrmapihooktemplatesettings.label5.caption +msgid "Note: The addresses can also be exportnames of dll's" +msgstr "Примечание: Адресами так же могут быть экспортные имена dll" + +#: tfrmadconfig.caption +msgid "Support Cheat Engine" +msgstr "Поддержка Cheat Engine" + +#: tfrmadconfig.cbcanclose.caption +msgid "Has header" +msgstr "Имеет заголовок" + +#: tfrmadconfig.cbownurl.caption +msgid "Show my own page" +msgstr "Показать собственную страницу" + +#: tfrmadconfig.groupbox1.caption +msgctxt "tfrmadconfig.groupbox1.caption" +msgid "Position" +msgstr "Позиция" + +#: tfrmadconfig.groupbox2.caption +msgid "Extra url" +msgstr "Дополнительный url" + +#: tfrmadconfig.label1.caption +msgid "Thank you for supporting Cheat Engine. And to thank you for that I'll let you share in the generated traffic" +msgstr "Спасибо за поддержку Cheat Engine. И в благодарность за это я позволю вам участвовать в генерируемом трафике" + +#: tfrmadconfig.label2.caption +msgid "Format" +msgstr "Формат" + +#: tfrmadconfig.lblextra.caption +msgid "Extra parameters" +msgstr "Дополнительные параметры" + +#: tfrmadconfig.lblpercentage.caption +msgid "Percentage shown: 75%" +msgstr "Процент показа: 75%" + +#: tfrmadconfig.lblurl.caption +msgid "Url" +msgstr "URL-адрес" + +#: tfrmcelistviewitemeditor.btnadditem.caption +msgctxt "tfrmcelistviewitemeditor.btnadditem.caption" +msgid "Add Item" +msgstr "Добавить элемент" + +#: tfrmcelistviewitemeditor.btnaddsubitem.caption +msgid "Add SubItem" +msgstr "Добавить подэлемент" + +#: tfrmcelistviewitemeditor.btncancel.caption +msgctxt "tfrmcelistviewitemeditor.btncancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmcelistviewitemeditor.btndelete.caption +msgctxt "tfrmcelistviewitemeditor.btndelete.caption" +msgid "Delete" +msgstr "Удалить" + +#: tfrmcelistviewitemeditor.btnok.caption +msgctxt "tfrmcelistviewitemeditor.btnok.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmcelistviewitemeditor.caption +msgid "Item editor" +msgstr "Редактор элементов" + +#: tfrmcelistviewitemeditor.lbltext.caption +msgctxt "tfrmcelistviewitemeditor.lbltext.caption" +msgid "Text" +msgstr "Текст" + +#: tfrmdebugevents.button1.caption +msgctxt "tfrmdebugevents.button1.caption" +msgid "Close" +msgstr "Закрыть" + +#: tfrmdebugevents.caption +msgid "Debug Events" +msgstr "Отладочные события" + +#: tfrmdebugevents.menuitem1.caption +msgctxt "tfrmdebugevents.menuitem1.caption" +msgid "Clear" +msgstr "Очистить" + +#: tfrmdriverloaded.label1.caption +msgid "DBK64 LOADED" +msgstr "DBK64 ЗАГРУЖЕН" + +#: tfrmexceptionregionlist.btnadd.caption +msgctxt "tfrmexceptionregionlist.btnadd.caption" +msgid "Add" +msgstr "Добавить" + +#: tfrmexceptionregionlist.caption +msgid "Exception region list" +msgstr "Список исключений в регионах" + +#: tfrmexceptionregionlist.cbautoaddallocs.caption +msgid "Automatically add user allocations" +msgstr "Автодобавление пользовательских выделений" + +#: tfrmexceptionregionlist.label1.caption +msgid "The following regions will cause a debugger break when an unhandled exception happens inside them" +msgstr "Следующие регионы вызовут прерывание отладчика, когда в них произойдёт необработанное исключение" + +#: tfrmexceptionregionlist.label2.caption +msgctxt "tfrmexceptionregionlist.label2.caption" +msgid "Start address" +msgstr "Стартовый адрес" + +#: tfrmexceptionregionlist.label3.caption +msgid "End address" +msgstr "Конечный адрес" + +#: tfrmexceptionregionlist.miclear.caption +msgctxt "tfrmexceptionregionlist.miclear.caption" +msgid "Clear" +msgstr "Очистить" + +#: tfrmexceptionregionlist.mifile.caption +msgctxt "tfrmexceptionregionlist.mifile.caption" +msgid "File" +msgstr "Файл" + +#: tfrmexceptionregionlist.miopen.caption +msgid "Open..." +msgstr "Открыть..." + +#: tfrmexceptionregionlist.misave.caption +msgid "Save..." +msgstr "Сохранить..." + +#: tfrmgnuassembler.caption +msgid "GNU Assembler+" +msgstr "GNU Ассемблер+" + +#: tfrmfilepatcher.button1.caption +msgid "Patch" +msgstr "Патч" + +#: tfrmfilepatcher.caption +msgid "File patcher" +msgstr "Исправитель файла" + +#: tfrmfilepatcher.lblbaseaddress.caption +msgid "Base address (MZ header)" +msgstr "Базовый адрес (MZ заголовок)" + +#: tfrmfilepatcher.lblfilename.caption +msgctxt "tfrmfilepatcher.lblfilename.caption" +msgid "Filename" +msgstr "Название файла" + +#: tfrmfilepatcher.rbauto.caption +msgid "Apply changes for specified module" +msgstr "Применить изменения для указанного модуля" + +#: tfrmfilepatcher.rbmanual.caption +msgid "Manual" +msgstr "Вручную" + +#: tfrmhotkeyex.button1.caption +msgctxt "tfrmhotkeyex.button1.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmhotkeyex.button2.caption +msgctxt "tfrmhotkeyex.button2.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmhotkeyex.button3.caption +msgctxt "tfrmhotkeyex.button3.caption" +msgid "Clear" +msgstr "Очистить" + +#: tfrmhotkeyex.caption +msgid "Set Hotkey" +msgstr "Назначение горячих клавиш" + +#: tfrmhotkeyex.label1.caption +msgid "Press the key combination you want to use" +msgstr "Нажмите комбинацию, которую хотите использовать" + +#: tfrmidt.caption +msgid "IDT" +msgstr "Таблица дескрипторов прерываний" + +#: tfrmmanualstacktraceconfig.btncancel.caption +msgctxt "tfrmmanualstacktraceconfig.btncancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmmanualstacktraceconfig.btnok.caption +msgctxt "tfrmmanualstacktraceconfig.btnok.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmmanualstacktraceconfig.caption +msgid "Manual stacktrace config" +msgstr "Ручная настройка трассировки стека" + +#: tfrmmanualstacktraceconfig.cbuseshadow.caption +msgid "Use shadow copy" +msgstr "Использовать теневую копию" + +#: tfrmmanualstacktraceconfig.label1.caption +msgid "Original base" +msgstr "Исходная база" + +#: tfrmmanualstacktraceconfig.label3.caption +msgctxt "tfrmmanualstacktraceconfig.label3.caption" +msgid "Size" +msgstr "Размер" + +#: tfrmmanualstacktraceconfig.label4.caption +msgid "New copy" +msgstr "Новая копия" + +#: tfrmmemoryviewex.btnmemmap.caption +msgid "Fetch memory map" +msgstr "Получить карту памяти" + +#: tfrmmemoryviewex.btnmemmap.hint +msgid "Current memory size of visible screen, press to set scroll size to match this as closely as possible" +msgstr "Текущий размер памяти видимого экрана. Нажмите, чтобы установить размер прокрутки как можно точнее" + +#: tfrmmemoryviewex.caption +msgid "Graphical Memory View " +msgstr "Графическое представление памяти " + +#: tfrmmemoryviewex.cbaddresslist.text +msgctxt "tfrmmemoryviewex.cbaddresslist.text" +msgid "Current Memory" +msgstr "Текущая память" + +#: tfrmmemoryviewex.cbaddresslistonly.caption +msgid "Only show addresslist memory" +msgstr "Показывать только адреса из списка найденных адресов" + +#: tfrmmemoryviewex.cbsavedlist.text +msgctxt "tfrmmemoryviewex.cbsavedlist.text" +msgid "Current Memory" +msgstr "Текущая память" + +#: tfrmmemoryviewex.cbtype.text +msgctxt "tfrmmemoryviewex.cbtype.text" +msgid "Byte" +msgstr "Байт" + +#: tfrmmemoryviewex.cbcompare.caption +msgctxt "tfrmmemoryviewex.cbcompare.caption" +msgid "Compare against" +msgstr "Сравнить с" + +#: tfrmmemoryviewex.edtpitch.hint +msgid "Number of bytes a row exists out" +msgstr "Количество байтов в строке" + +#: tfrmmemoryviewex.label1.caption +msgctxt "tfrmmemoryviewex.label1.caption" +msgid "Type" +msgstr "Тип" + +#: tfrmmemoryviewex.label2.caption +msgid "Pixels per line" +msgstr "Пикселей на линию" + +#: tfrmmemoryviewex.label3.caption +msgid "Color" +msgstr "Цветовая модель" + +#: tfrmmemoryviewex.lbladdress.caption +msgctxt "tfrmmemoryviewex.lbladdress.caption" +msgid "Address:" +msgstr "Адрес:" + +#: tfrmmemoryviewex.lblzoom.caption +msgid "Zoom:" +msgstr "Масштаб:" + +#: tfrmmemoryviewex.rbor.caption +msgid "Or" +msgstr "Or" + +#: tfrmmemoryviewex.rband.caption +msgid "And" +msgstr "And" + +#: tfrmmemoryviewex.rbxor.caption +msgid "Xor" +msgstr "Xor" + +#: tfrmmemviewpreferences.lblregisterexample.caption +msgctxt "tfrmmemviewpreferences.lblregisterexample.caption" +msgid "Example" +msgstr "Пример" + +#: tfrmmergepointerscanresultsettings.button2.caption +msgctxt "tfrmmergepointerscanresultsettings.button2.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmmergepointerscanresultsettings.caption +msgctxt "tfrmmergepointerscanresultsettings.caption" +msgid "Merge pointerscan results" +msgstr "Объединение результатов поиска указателя" + +#: tfrmmergepointerscanresultsettings.groupbox1.caption +msgctxt "tfrmmergepointerscanresultsettings.groupbox1.caption" +msgid "Description" +msgstr "Описание" + +#: tfrmmergepointerscanresultsettings.rggroupmethod.caption +msgid "Group method" +msgstr "Групповой метод" + +#: tfrmmergepointerscanresultsettings.button1.caption +msgctxt "tfrmmergepointerscanresultsettings.button1.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmopenfileasprocessdialog.caption +msgid "Open binary file" +msgstr "Открытый бинарный файл" + +#: tfrmopenfileasprocessdialog.label1.caption +msgctxt "tfrmopenfileasprocessdialog.label1.caption" +msgid "Start address" +msgstr "Начальный адрес" + +#: tfrmopenfileasprocessdialog.mbok.caption +msgctxt "tfrmopenfileasprocessdialog.mbok.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tfrmopenfileasprocessdialog.mkcancel.caption +msgctxt "tfrmopenfileasprocessdialog.mkcancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmopenfileasprocessdialog.rb32.caption +msgid "32-Bit" +msgstr "32-Бита" + +#: tfrmopenfileasprocessdialog.rb64.caption +msgid "64-Bit" +msgstr "64-Бита" + +#: tfrmpaging.button1.caption +msgid "Go" +msgstr "Запустить" + +#: tfrmpaging.caption +msgctxt "tfrmpaging.caption" +msgid "Paging" +msgstr "Страничная организация памяти" + +#: tfrmpaging.cb64bit.caption +msgctxt "tfrmpaging.cb64bit.caption" +msgid "64-bit" +msgstr "64-бит" + +#: tfrmpaging.cb8byteentries.caption +msgid "8-byte entries" +msgstr "8-байт. записи" + +#: tfrmpaging.label1.caption +msgid "Fill in the physical address of the paging base (or just cr3)" +msgstr "Физический базовый адрес каталога страниц (или CR3)" + +#: tfrmpaging.menuitem1.caption +msgctxt "tfrmpaging.menuitem1.caption" +msgid "Find" +msgstr "Поиск" + +#: tfrmpointerrescanconnectdialog.btncancel.caption +msgctxt "tfrmpointerrescanconnectdialog.btncancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmpointerrescanconnectdialog.btnok.caption +msgctxt "tfrmpointerrescanconnectdialog.btnok.caption" +msgid "Connect" +msgstr "Соединение" + +#: tfrmpointerrescanconnectdialog.caption +msgctxt "tfrmpointerrescanconnectdialog.caption" +msgid "Join rescan" +msgstr "Присоединиться к отсеву" + +#: tfrmpointerrescanconnectdialog.lblhost.caption +msgctxt "tfrmpointerrescanconnectdialog.lblhost.caption" +msgid "Host" +msgstr "Хост" + +#: tfrmpointerrescanconnectdialog.lblport.caption +msgctxt "tfrmpointerrescanconnectdialog.lblport.caption" +msgid "Port" +msgstr "Порт" + +#: tfrmpointerscanconnectdialog.btncancel.caption +msgctxt "tfrmpointerscanconnectdialog.btncancel.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmpointerscanconnectdialog.btnok.caption +msgctxt "tfrmpointerscanconnectdialog.btnok.caption" +msgid "Connect" +msgstr "Соединение" + +#: tfrmpointerscanconnectdialog.caption +msgid "Connect to active pointerscanner" +msgstr "Соединение с активным сканером указателей" + +#: tfrmpointerscanconnectdialog.cbpriority.text +msgctxt "tfrmpointerscanconnectdialog.cbpriority.text" +msgid "Normal" +msgstr "Обычный" + +#: tfrmpointerscanconnectdialog.cbuseloadedpointermap.caption +msgctxt "tfrmpointerscanconnectdialog.cbuseloadedpointermap.caption" +msgid "Use saved pointermap" +msgstr "Использовать сохранённую карту указателей" + +#: tfrmpointerscanconnectdialog.cbuseloadedpointermap.hint +msgid "If you use this option you can omit the downloading of the pointermap" +msgstr "Если вы воспользуетесь этой опцией, то вы можете пренебречь загрузкой карты указателей" + +#: tfrmpointerscanconnectdialog.lblhost.caption +msgctxt "tfrmpointerscanconnectdialog.lblhost.caption" +msgid "Host" +msgstr "Хост" + +#: tfrmpointerscanconnectdialog.lblnrofthread.caption +msgctxt "tfrmpointerscanconnectdialog.lblnrofthread.caption" +msgid "Nr of threads scanning: " +msgstr "Кол-во потоков сканирования: " + +#: tfrmpointerscanconnectdialog.lblport.caption +msgctxt "tfrmpointerscanconnectdialog.lblport.caption" +msgid "Port" +msgstr "Порт" + +#: tfrmpointerscanconnectdialog.lblpriority.caption +msgctxt "tfrmpointerscanconnectdialog.lblpriority.caption" +msgid "Priority" +msgstr "Приоритет" + +#: tfrmresumepointerscan.btnnotifyspecificips.caption +msgctxt "tfrmresumepointerscan.btnnotifyspecificips.caption" +msgid "Setup specific IP's to notify" +msgstr "Уведомляемые IP-адреса" + +#: tfrmresumepointerscan.button1.caption +msgctxt "tfrmresumepointerscan.button1.caption" +msgid "Resume" +msgstr "Возобновить" + +#: tfrmresumepointerscan.button2.caption +msgctxt "tfrmresumepointerscan.button2.caption" +msgid "Cancel" +msgstr "Отмена" + +#: tfrmresumepointerscan.caption +msgid "Resume pointerscan" +msgstr "Возобновление поиска указателя" + +#: tfrmresumepointerscan.cbbroadcast.caption +msgctxt "tfrmresumepointerscan.cbbroadcast.caption" +msgid "Broadcast that a scan has started" +msgstr "Уведомить о начале сканирования" + +#: tfrmresumepointerscan.cbbroadcast.hint +msgctxt "tfrmresumepointerscan.cbbroadcast.hint" +msgid "When checked will send a broadcast message on the local network which will tell pointer scanner systems to join this scan if they are set to auto join" +msgstr "" +"Если включено, то по локальной сети будет отправлено сообщение, которое велит другим устройствам с запущенным сканером указателей присоединиться к этому сканированию, если у них включена опция «Автоприсоединение к поиску и отсеву».\n" +"\n" +"Вы можете воспользоваться кнопкой «Уведомляемые IP-адреса», чтобы зарегистрировать устройства, находящиеся за пределами локальной сети" + +#: tfrmresumepointerscan.cbdistributedscanning.caption +msgctxt "tfrmresumepointerscan.cbdistributedscanning.caption" +msgid "Allow distributed scanning" +msgstr "Разрешить распределённое сканирование" + +#: tfrmresumepointerscan.cbdistributedscanning.hint +msgctxt "tfrmresumepointerscan.cbdistributedscanning.hint" +msgid "Opens a port that other systems running the pointerscanner can connect to and help out with the scan" +msgstr "Открывает порт, к которому могут подключиться другие системы с запущенным сканером указателей и помочь со сканированием" + +#: tfrmresumepointerscan.combobox1.text +msgctxt "tfrmresumepointerscan.combobox1.text" +msgid "Normal" +msgstr "Обычный" + +#: tfrmresumepointerscan.label1.caption +msgid "Rescan pointermaps" +msgstr "Отсев карт указателей" + +#: tfrmresumepointerscan.label9.caption +msgctxt "tfrmresumepointerscan.label9.caption" +msgid "Nr of threads scanning: " +msgstr "Кол-во потоков сканирования: " + +#: tfrmresumepointerscan.lblport.caption +msgctxt "tfrmresumepointerscan.lblport.caption" +msgid "Port:" +msgstr "Порт:" + +#: tfrmresumepointerscan.listview1.columns[0].caption +msgctxt "tfrmresumepointerscan.listview1.columns[0].caption" +msgid "Filename" +msgstr "Название файла" + +#: tfrmresumepointerscan.listview1.columns[1].caption +msgctxt "tfrmresumepointerscan.listview1.columns[1].caption" +msgid "Address" +msgstr "Адрес" + +#: tfrmresumepointerscan.listview1.columns[2].caption +msgid "Found" +msgstr "Найдено" + +#: tfrmsetcrosshair.btnapply.caption +msgid "Apply crosshair" +msgstr "Применить перекрестие" + +#: tfrmsetcrosshair.caption +msgid "D3D: Set Crosshair" +msgstr "D3D: Установка перекрестия" + +#: tfrmsetcrosshair.label1.caption +msgid "Alphablend" +msgstr "AlphaBlend" + +#: tfrmsetcrosshair.menuitem1.caption +msgctxt "tfrmsetcrosshair.menuitem1.caption" +msgid "File" +msgstr "Файл" + +#: tfrmsetcrosshair.menuitem2.caption +msgid "Load image" +msgstr "Загрузить изображение" + +#: tfrmstringpointerscan.combocomparetype.text +msgctxt "tfrmstringpointerscan.combocomparetype.text" +msgid "4 Bytes" +msgstr "4 Байта" + +#: tfrmstringpointerscan.combotype.text +msgctxt "tfrmstringpointerscan.combotype.text" +msgid "String" +msgstr "Строка" + +#: tfrmstringmap.btnfree.caption +msgid "Free the current list" +msgstr "Освободить текущий список" + +#: tfrmstringmap.btnscan.caption +msgctxt "tfrmstringmap.btnscan.caption" +msgid "Generate string map" +msgstr "Создать карту строк" + +#: tfrmstringmap.btnshowlist.caption +msgctxt "tfrmstringmap.btnshowlist.caption" +msgid "<" +msgstr "<Ошибка: Нечитаемая строка>" + +#: dotnetinfo-Scnbw +msgid "Strings can not be written" +msgstr "Строки не могут быть записаны" + +#: dotnetinfo-Uft +msgid "Unsupported field type" +msgstr "Неподдерживаемый тип поля" + +#: dotnetinfo-vcf +msgid "value convertor failure" +msgstr "сбой преобразователя значений" + +#: dotnetinfo-ItNCD +msgid "Inject the .NET Control DLL into the target process?" +msgstr "Внедрить библиотеку .NET Control DLL в процесс цели?" + +#: dotnetinfo-Cvo +msgid "Change value of " +msgstr "Изменить значение " + +#: dotnetinfo-TcsttN +msgid "" +"To change string types the .NET Control DLL needs to be injected into the " +"target. Inject it?" +msgstr "" +"Чтобы изменить типы строк, необходимо внедрить в процесс библиотеку .NET " +"Control DLL. Внедрить ее?" + +#: dotnetinfo-NNif +msgid "No .NET info found" +msgstr "Информация о .NET не найдена" diff --git a/Cheat Engine/bin/languages/ru_RU/dotnetsearch.po b/Cheat Engine/bin/languages/ru_RU/dotnetsearch.po new file mode 100644 index 00000000..eb07a3a5 --- /dev/null +++ b/Cheat Engine/bin/languages/ru_RU/dotnetsearch.po @@ -0,0 +1,23 @@ +#: dotnetsearch-FindC +msgid "Find Class" +msgstr "Найти Класс" + +#: dotnetsearch-Ltci +msgid "Limit to current image" +msgstr "Ограничение текущего изображения" + +#: dotnetsearch-FindF +msgid "Find Field" +msgstr "Найти Поле" + +#: dotnetsearch-Ltcc +msgid "Limit to current class" +msgstr "Ограничение текущего класса" + +#: dotnetsearch-FM +msgid "Find Method" +msgstr "Найти Метод" + +#: dotnetsearch-sear +msgid "Search" +msgstr "Поиск" \ No newline at end of file diff --git a/Cheat Engine/bin/languages/ru_RU/lclstrconsts.po b/Cheat Engine/bin/languages/ru_RU/lclstrconsts.po index b41067d1..9a336974 100755 --- a/Cheat Engine/bin/languages/ru_RU/lclstrconsts.po +++ b/Cheat Engine/bin/languages/ru_RU/lclstrconsts.po @@ -1,1384 +1,1394 @@ -msgid "" -msgstr "" -"Last-Translator: Maxim Ganetsky \n" -"Project-Id-Version: lazaruside\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"POT-Creation-Date: \n" -"PO-Revision-Date: 2018-08-28 01:50+0300\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Language: ru\n" -"X-Generator: Poedit 1.7.7\n" - -#: lclstrconsts.hhshelpbrowsernotexecutable -msgid "Browser \"%s\" not executable." -msgstr "Браузер \"%s\" не является исполнимым файлом." - -#: lclstrconsts.hhshelpbrowsernotfound -msgid "Browser \"%s\" not found." -msgstr "Браузер \"%s\" не найден." - -#: lclstrconsts.hhshelperrorwhileexecuting -msgid "Error while executing \"%s\":%s%s" -msgstr "Ошибка при исполнении \"%s\":%s%s" - -#: lclstrconsts.hhshelpnohtmlbrowserfound -msgid "Unable to find a HTML browser." -msgstr "Невозможно найти браузер HTML." - -#: lclstrconsts.hhshelpnohtmlbrowserfoundpleasedefineone -msgid "No HTML Browser found.%sPlease define one in Tools -> Options -> Help -> Help Options" -msgstr "Браузер HTML не найден.%sЗадайте его в меню Сервис -> Параметры -> Параметры справки" - -#: lclstrconsts.hhshelpthehelpdatabasewasunabletofindfile -msgid "The help database \"%s\" was unable to find file \"%s\"." -msgstr "База данных справки \"%s\" не смогла найти файл \"%s\"." - -#: lclstrconsts.hhshelpthemacrosinbrowserparamswillbereplacedbytheurl -msgid "The macro %s in BrowserParams will be replaced by the URL." -msgstr "Макрос %s в BrowserParams будет заменён на URL." - -#: lclstrconsts.ifsalt -msgid "Alt" -msgstr "Alt" - -#: lclstrconsts.ifsctrl -msgid "Ctrl" -msgstr "Ctrl" - -#: lclstrconsts.ifsvk_cmd -msgid "Cmd" -msgstr "Cmd" - -#: lclstrconsts.ifsvk_help -msgctxt "lclstrconsts.ifsvk_help" -msgid "Help" -msgstr "Справка" - -#: lclstrconsts.ifsvk_meta -msgid "Meta" -msgstr "Meta" - -#: lclstrconsts.ifsvk_shift -msgid "Shift" -msgstr "Shift" - -#: lclstrconsts.ifsvk_super -msgid "Super" -msgstr "Super" - -#: lclstrconsts.ifsvk_unknown -msgid "Unknown" -msgstr "Неизвестная" - -#: lclstrconsts.lislclresourcesnotfound -msgctxt "lclstrconsts.lislclresourcesnotfound" -msgid "Resource %s not found" -msgstr "Ресурс %s не найден" - -#: lclstrconsts.rs3ddkshadowcolorcaption -msgid "3D Dark Shadow" -msgstr "Затенённая часть объекта 3D" - -#: lclstrconsts.rs3dlightcolorcaption -msgid "3D Light" -msgstr "Освещённая часть объекта 3D" - -#: lclstrconsts.rsacontrolcannothaveitselfasparent -msgid "A control can't have itself as a parent" -msgstr "Элемент управления не может быть родителем сам себе" - -#: lclstrconsts.rsactivebordercolorcaption -msgid "Active Border" -msgstr "Граница активного окна" - -#: lclstrconsts.rsactivecaptioncolorcaption -msgid "Active Caption" -msgstr "Заголовок активного окна" - -#: lclstrconsts.rsallfiles -msgid "All files (%s)|%s|%s" -msgstr "Все файлы (%s)|%s|%s" - -#: lclstrconsts.rsappworkspacecolorcaption -msgid "Application Workspace" -msgstr "Рабочая область приложения" - -#: lclstrconsts.rsaquacolorcaption -msgid "Aqua" -msgstr "Морской волны" - -#: lclstrconsts.rsascannothaveasparent -msgid "Class %s cannot have %s as parent." -msgstr "Класс %s не может иметь %s в качестве родителя." - -#: lclstrconsts.rsbackgroundcolorcaption -msgid "Desktop" -msgstr "Рабочий стол" - -#: lclstrconsts.rsbackward -msgid "Backward" -msgstr "Назад" - -#: lclstrconsts.rsbitmaps -msgid "Bitmaps" -msgstr "Точечные рисунки" - -#: lclstrconsts.rsblackcolorcaption -msgid "Black" -msgstr "Чёрный" - -#: lclstrconsts.rsblank -msgid "Blank" -msgstr "Пустой" - -#: lclstrconsts.rsbluecolorcaption -msgid "Blue" -msgstr "Синий" - -#: lclstrconsts.rsbtnfacecolorcaption -msgid "Button Face" -msgstr "Лицевая часть кнопки" - -#: lclstrconsts.rsbtnhighlightcolorcaption -msgid "Button Highlight" -msgstr "Освещаемая сторона кнопки" - -#: lclstrconsts.rsbtnshadowcolorcaption -msgid "Button Shadow" -msgstr "Затенённая сторона кнопки" - -#: lclstrconsts.rsbtntextcolorcaption -msgid "Button Text" -msgstr "Текст кнопки" - -#: lclstrconsts.rscalculator -msgid "Calculator" -msgstr "Калькулятор" - -#: lclstrconsts.rscancelrecordhint -msgctxt "lclstrconsts.rscancelrecordhint" -msgid "Cancel" -msgstr "Отмена" - -#: lclstrconsts.rscannotfocus -msgid "Can not focus" -msgstr "Не могу принять фокус" - -#: lclstrconsts.rscanvasdoesnotallowdrawing -msgid "Canvas does not allow drawing" -msgstr "Канва не поддерживает рисования" - -#: lclstrconsts.rscaptiontextcolorcaption -msgid "Caption Text" -msgstr "Текст заголовка" - -#: lclstrconsts.rscasesensitive -msgid "Case sensitive" -msgstr "С учётом регистра" - -#: lclstrconsts.rscontrolclasscantcontainchildclass -msgid "Control of class '%s' can't have control of class '%s' as a child" -msgstr "Элемент управления класса '%s' не может иметь дочерний элемент управления класса '%s'" - -#: lclstrconsts.rscontrolhasnoparentformorframe -msgid "Control '%s' has no parent form or frame" -msgstr "Элемент управления '%s' не имеет родительской формы или фрейма" - -#: lclstrconsts.rscontrolhasnoparentwindow -msgid "Control '%s' has no parent window" -msgstr "Элемент управления '%s' не имеет родительского окна" - -#: lclstrconsts.rscontrolisnotaparent -msgid "'%s' is not a parent of '%s'" -msgstr "'%s' не является родителем '%s'" - -#: lclstrconsts.rscreamcolorcaption -msgid "Cream" -msgstr "Кремовый" - -#: lclstrconsts.rscursor -msgid "Cursor" -msgstr "Курсор" - -#: lclstrconsts.rscustomcolorcaption -msgid "Custom ..." -msgstr "Пользовательский ..." - -#: lclstrconsts.rsdefaultcolorcaption -msgid "Default" -msgstr "По умолчанию" - -#: lclstrconsts.rsdefaultfileinfovalue -msgid "permissions user group size date time" -msgstr "права пользователь группа размер дата время" - -#: lclstrconsts.rsdeleterecord -msgid "Delete record?" -msgstr "Удалить запись?" - -#: lclstrconsts.rsdeleterecordhint -msgctxt "lclstrconsts.rsdeleterecordhint" -msgid "Delete" -msgstr "Удалить" - -#: lclstrconsts.rsdirection -msgid "Direction" -msgstr "Направление" - -#: lclstrconsts.rsdirectory -msgid "&Directory" -msgstr "&Каталог" - -#: lclstrconsts.rsdocopy -msgid "Copy" -msgstr "Копировать" - -#: lclstrconsts.rsdopaste -msgid "Paste" -msgstr "Вставить" - -#: lclstrconsts.rsduplicateiconformat -msgid "Duplicate icon format." -msgstr "Формат значков дублируется." - -#: lclstrconsts.rseditrecordhint -msgid "Edit" -msgstr "Редактировать" - -#: lclstrconsts.rsentirescope -msgid "Search entire file" -msgstr "Во всём файле" - -#: lclstrconsts.rserror -msgctxt "lclstrconsts.rserror" -msgid "Error" -msgstr "Ошибка" - -#: lclstrconsts.rserrorcreatingdevicecontext -msgid "Error creating device context for %s.%s" -msgstr "Ошибка создания контекста устройства для %s.%s" - -#: lclstrconsts.rserroroccurredinataddressframe -msgid "Error occurred in %s at %sAddress %s%s Frame %s" -msgstr "Произошла ошибка в %s по %s адресу %s%s фрейм %s" - -#: lclstrconsts.rserrorwhilesavingbitmap -msgid "Error while saving bitmap." -msgstr "Ошибка при сохранении точечного рисунка (bitmap)." - -#: lclstrconsts.rsexception -msgid "Exception" -msgstr "Исключение" - -#: lclstrconsts.rsfddirectorymustexist -msgid "Directory must exist" -msgstr "Каталог должен существовать" - -#: lclstrconsts.rsfddirectorynotexist -msgid "The directory \"%s\" does not exist." -msgstr "Каталог \"%s\" не существует." - -#: lclstrconsts.rsfdfilealreadyexists -msgid "The file \"%s\" already exists. Overwrite ?" -msgstr "Файл \"%s\" уже существует. Перезаписать?" - -#: lclstrconsts.rsfdfilemustexist -msgid "File must exist" -msgstr "Файл должен существовать" - -#: lclstrconsts.rsfdfilenotexist -msgid "The file \"%s\" does not exist." -msgstr "Файл \"%s\" не существует" - -#: lclstrconsts.rsfdfilereadonly -msgid "The file \"%s\" is not writable." -msgstr "Файл \"%s\" не доступен для записи." - -#: lclstrconsts.rsfdfilereadonlytitle -msgid "File is not writable" -msgstr "Файл не доступен для записи" - -#: lclstrconsts.rsfdfilesaveas -msgid "Save file as" -msgstr "Сохранить файл как" - -#: lclstrconsts.rsfdopenfile -msgid "Open existing file" -msgstr "Открыть существующий файл" - -#: lclstrconsts.rsfdoverwritefile -msgid "Overwrite file ?" -msgstr "Перезаписать файл?" - -#: lclstrconsts.rsfdpathmustexist -msgid "Path must exist" -msgstr "Путь должен существовать" - -#: lclstrconsts.rsfdpathnoexist -msgid "The path \"%s\" does not exist." -msgstr "Путь \"%s\" не существует." - -#: lclstrconsts.rsfdselectdirectory -msgid "Select Directory" -msgstr "Выберите каталог" - -#: lclstrconsts.rsfileinfofilenotfound -msgid "(file not found: \"%s\")" -msgstr "(файл не найден: \"%s\")" - -#: lclstrconsts.rsfileinformation -msgid "File information" -msgstr "Сведения о файле" - -#: lclstrconsts.rsfilter -msgctxt "lclstrconsts.rsfilter" -msgid "(filter)" -msgstr "(фильтр)" - -#: lclstrconsts.rsfind -msgid "Find" -msgstr "Найти" - -#: lclstrconsts.rsfindmore -msgid "Find more" -msgstr "Найти далее" - -#: lclstrconsts.rsfirstrecordhint -msgid "First" -msgstr "Первая" - -#: lclstrconsts.rsfixedcolstoobig -msgid "FixedCols can't be > ColCount" -msgstr "Значение FixedCols не может превышать ColCount" - -#: lclstrconsts.rsfixedrowstoobig -msgid "FixedRows can't be > RowCount" -msgstr "Значение FixedRows не может превышать RowCount" - -#: lclstrconsts.rsformcolorcaption -msgid "Form" -msgstr "Форма" - -#: lclstrconsts.rsformresourcesnotfoundforresourcelessformscreatenew -msgid "Form resource %s not found. For resourceless forms CreateNew constructor must be used. See the global variable RequireDerivedFormResource." -msgstr "Ресурс формы %s не найден. Для форм без ресурсов следует использовать конструктор CreateNew. Обратите внимание на глобальную переменную RequireDerivedFormResource." - -#: lclstrconsts.rsformstreamingerror -msgid "Form streaming \"%s\" error: %s" -msgstr "Ошибка потоков \"%s\" форм: %s" - -#: lclstrconsts.rsforward -msgid "Forward" -msgstr "Вперёд" - -#: lclstrconsts.rsfuchsiacolorcaption -msgid "Fuchsia" -msgstr "Розовый" - -#: lclstrconsts.rsgdkoptiondebug -msgid "--gdk-debug flags Turn on specific GDK trace/debug messages." -msgstr "--gdk-debug flags Включить указанные отладочные сообщения GDK." - -#: lclstrconsts.rsgdkoptionnodebug -msgid "--gdk-no-debug flags Turn off specific GDK trace/debug messages." -msgstr "--gdk-no-debug flags Выключить указанные отладочные сообщения GDK." - -#: lclstrconsts.rsgif -msgid "Graphics Interchange Format" -msgstr "Формат Graphics Interchange Format" - -#: lclstrconsts.rsgoptionfatalwarnings -msgid "--g-fatal-warnings Warnings and errors generated by Gtk+/GDK will halt the application." -msgstr "--g-fatal-warnings Замечания и ошибки, выдаваемые Gtk+/GDK, остановят приложение." - -#: lclstrconsts.rsgradientactivecaptioncolorcaption -msgid "Gradient Active Caption" -msgstr "Градиент активного заголовка" - -#: lclstrconsts.rsgradientinactivecaptioncolorcaption -msgid "Gradient Inactive Caption" -msgstr "Градиент неактивного заголовка" - -#: lclstrconsts.rsgraphic -msgid "Graphic" -msgstr "Графические файлы" - -#: lclstrconsts.rsgraycolorcaption -msgid "Gray" -msgstr "Тёмно-серый" - -#: lclstrconsts.rsgraytextcolorcaption -msgid "Gray Text" -msgstr "Серый текст" - -#: lclstrconsts.rsgreencolorcaption -msgid "Green" -msgstr "Тёмно-зелёный" - -#: lclstrconsts.rsgridfiledoesnotexist -msgid "Grid file doesn't exist" -msgstr "Файл Grid не существует" - -#: lclstrconsts.rsgridhasnocols -msgid "Cannot insert rows into a grid when it has no columns" -msgstr "Невозможно вставить строки, если отсутствуют столбцы" - -#: lclstrconsts.rsgridhasnorows -msgid "Cannot insert columns into a grid when it has no rows" -msgstr "Невозможно вставить столбцы, если отсутствуют строки" - -#: lclstrconsts.rsgridindexoutofrange -msgid "Grid index out of range." -msgstr "Индекс Grid вне диапазона допустимых значений." - -#: lclstrconsts.rsgroupindexcannotbelessthanprevious -msgid "GroupIndex cannot be less than a previous menu item's GroupIndex" -msgstr "GroupIndex не может быть меньше GroupIndex для предыдущего элемента меню" - -#: lclstrconsts.rsgtkfilter -msgid "Filter:" -msgstr "Фильтр:" - -#: lclstrconsts.rsgtkhistory -msgid "History:" -msgstr "История:" - -#: lclstrconsts.rsgtkoptionclass -msgid "--class classname Following Xt conventions, the class of a program is the program name with the initial character capitalized. For example, the classname for gimp is \"Gimp\". If --class is specified, the class of the program will be set to \"classname\"." -msgstr "--class classname Следуя соглашениям Xt, класс программы - это имя программы с прописным первым символом. Например, имя класса для gimp - \"Gimp\". Если задан --class, класс программы будет установлен в \"classname\"." - -#: lclstrconsts.rsgtkoptiondebug -msgid "--gtk-debug flags Turn on specific Gtk+ trace/debug messages." -msgstr "--gtk-debug flags Включить указанные отладочные сообщения Gtk+." - -#: lclstrconsts.rsgtkoptiondisplay -msgid "--display h:s:d Connect to the specified X server, where \"h\" is the hostname, \"s\" is the server number (usually 0), and \"d\" is the display number (typically omitted). If --display is not specified, the DISPLAY environment variable is used." -msgstr "--display h:s:d Связаться с указанным сервером X, где \"h\" - имя хост-машины, \"s\" - номер сервера (обычно 0), и \"d\" - номер дисплея (обычно опускается). Если не задан --display, используется переменная окружения DISPLAY." - -#: lclstrconsts.rsgtkoptionmodule -msgid "--gtk-module module Load the specified module at startup." -msgstr "--gtk-module модуль Загрузить указанный модуль при запуске." - -#: lclstrconsts.rsgtkoptionname -msgid "--name programe Set program name to \"progname\". If not specified, program name will be set to ParamStrUTF8(0)." -msgstr "--name имяпрог Установить имя программы в \"имяпрог\". Если не задано, имя программы будет установлено в ParamStrUTF8(0)." - -#: lclstrconsts.rsgtkoptionnodebug -msgid "--gtk-no-debug flags Turn off specific Gtk+ trace/debug messages." -msgstr "--gtk-no-debug flags Выключить указанные отладочные сообщения Gtk+." - -#: lclstrconsts.rsgtkoptionnotransient -msgid "--lcl-no-transient Do not set transient order for modal forms" -msgstr "--lcl-no-transient Не устанавливать временный порядок модальных форм" - -#: lclstrconsts.rsgtkoptionnoxshm -msgid "--no-xshm Disable use of the X Shared Memory Extension." -msgstr "--no-xshm Запрет использования расширений X по разделяемой памяти." - -#: lclstrconsts.rsgtkoptionsync -msgid "--sync Call XSynchronize (display, True) after the Xserver connection has been established. This makes debugging X protocol errors easier, because X request buffering will be disabled and X errors will be received immediately after the protocol request that generated the error has been processed by the X server." -msgstr "--sync Вызвать XSynchronize (display, True) после установления соединения с сервером X. Это облегчает отладку ошибок протокола X, так как запросы буферизации X будут отключены, и ошибки X будут получаться сразу после обработки сервером X запроса протокола, который вызвал ошибку." - -#: lclstrconsts.rshelp -msgctxt "lclstrconsts.rshelp" -msgid "Help" -msgstr "Справка" - -#: lclstrconsts.rshelpalreadyregistered -msgid "%s: Already registered" -msgstr "%s: уже зарегистрирован" - -#: lclstrconsts.rshelpcontextnotfound -msgid "A help database was found for this topic, but this topic was not found" -msgstr "База данных справки была найдена для данной темы, но не содержит её" - -#: lclstrconsts.rshelpdatabasenotfound -msgid "There is no help database installed for this topic" -msgstr "База данных справки для данной темы не установлена" - -#: lclstrconsts.rshelperror -msgid "Help Error" -msgstr "Ошибка справки" - -#: lclstrconsts.rshelphelpcontextnotfound -msgid "Help context %s not found." -msgstr "Контекст справки %s не найден." - -#: lclstrconsts.rshelphelpcontextnotfoundindatabase -msgid "Help context %s not found in Database \"%s\"." -msgstr "Контекст справки %s не найден в базе данных \"%s\"." - -#: lclstrconsts.rshelphelpdatabasedidnotfoundaviewerforahelppageoftype -msgid "Help Database \"%s\" did not find a viewer for a help page of type %s" -msgstr "База данных справки \"%s\" не нашла программу просмотра для страницы справки типа %s" - -#: lclstrconsts.rshelphelpdatabasenotfound -msgid "Help Database \"%s\" not found" -msgstr "База данных справки \"%s\" не найдена" - -#: lclstrconsts.rshelphelpfordirectivenotfound -msgid "Help for directive \"%s\" not found." -msgstr "Справка для директивы \"%s\" не найдена." - -#: lclstrconsts.rshelphelpfordirectivenotfoundindatabase -msgid "Help for directive \"%s\" not found in Database \"%s\"." -msgstr "Справка для директивы \"%s\" в базе данных \"%s\" не найдена." - -#: lclstrconsts.rshelphelpkeywordnotfound -msgid "Help keyword \"%s\" not found." -msgstr "Ключевое слово справки \"%s\" не найдено." - -#: lclstrconsts.rshelphelpkeywordnotfoundindatabase -msgid "Help keyword \"%s\" not found in Database \"%s\"." -msgstr "Ключевое слово справки \"%s\" не найдено в базе данных \"%s\"." - -#: lclstrconsts.rshelphelpnodehasnohelpdatabase -msgid "Help node \"%s\" has no Help Database" -msgstr "Элемент справки \"%s\" не имеет соответствующей базы данных" - -#: lclstrconsts.rshelpnohelpfoundforsource -msgid "No help found for line %d, column %d of %s." -msgstr "Не найдено справки для строки %d, столбца %d из %s." - -#: lclstrconsts.rshelpnohelpnodesavailable -msgid "No help entries available for this topic" -msgstr "Доступные элементы справки для данной темы отсутствуют" - -#: lclstrconsts.rshelpnotfound -msgid "No help found for this topic" -msgstr "Справка для данной темы не найдена" - -#: lclstrconsts.rshelpnotregistered -msgid "%s: Not registered" -msgstr "%s: Не зарегистрирован" - -#: lclstrconsts.rshelpselectorerror -msgid "Help Selector Error" -msgstr "Ошибка переключателя справки" - -#: lclstrconsts.rshelpthereisnoviewerforhelptype -msgid "There is no viewer for help type \"%s\"" -msgstr "Отсутствует программа просмотра для типа справки \"%s\"" - -#: lclstrconsts.rshelpviewererror -msgid "Help Viewer Error" -msgstr "Ошибка программы просмотра справки" - -#: lclstrconsts.rshelpviewernotfound -msgid "No viewer was found for this type of help content" -msgstr "Программа просмотра справки для данного типа её содержимого не найдена" - -#: lclstrconsts.rshighlightcolorcaption -msgid "Highlight" -msgstr "Выделенное" - -#: lclstrconsts.rshighlighttextcolorcaption -msgid "Highlight Text" -msgstr "Текст выделенного" - -#: lclstrconsts.rshotlightcolorcaption -msgid "Hot Light" -msgstr "Выделение" - -#: lclstrconsts.rsicns -msgid "Mac OS X Icon" -msgstr "Значок Mac OS X" - -#: lclstrconsts.rsicon -msgid "Icon" -msgstr "Значок" - -#: lclstrconsts.rsiconimageempty -msgid "Icon image cannot be empty" -msgstr "Изображение значка не может быть пустым" - -#: lclstrconsts.rsiconimageformat -msgid "Icon image must have the same format" -msgstr "Изображение значка должно иметь тот же формат" - -#: lclstrconsts.rsiconimageformatchange -msgid "Cannot change format of icon image" -msgstr "Невозможно изменить формат изображения значка" - -#: lclstrconsts.rsiconimagesize -msgid "Icon image must have the same size" -msgstr "Изображение значка должно иметь тот же размер" - -#: lclstrconsts.rsiconimagesizechange -msgid "Cannot change size of icon image" -msgstr "Невозможно изменить размер изображения значка" - -#: lclstrconsts.rsiconnocurrent -msgid "Icon has no current image" -msgstr "Значок не имеет текущего изображения" - -#: lclstrconsts.rsinactivebordercolorcaption -msgid "Inactive Border" -msgstr "Граница неактивного окна" - -#: lclstrconsts.rsinactivecaptioncolorcaption -msgctxt "lclstrconsts.rsinactivecaptioncolorcaption" -msgid "Inactive Caption" -msgstr "Заголовок неактивного окна" - -#: lclstrconsts.rsinactivecaptiontext -msgctxt "lclstrconsts.rsinactivecaptiontext" -msgid "Inactive Caption" -msgstr "Заголовок неактивного окна" - -#: lclstrconsts.rsindexoutofbounds -msgid "%s Index %d out of bounds 0 .. %d" -msgstr "%s Индекс %d вне диапазона 0 .. %d" - -#: lclstrconsts.rsindexoutofrange -msgid "Index Out of range Cell[Col=%d Row=%d]" -msgstr "Индекс вне диапазона Cell[Col=%d Row=%d]" - -#: lclstrconsts.rsinfobkcolorcaption -msgid "Info Background" -msgstr "Фон сообщения" - -#: lclstrconsts.rsinfotextcolorcaption -msgid "Info Text" -msgstr "Текст сообщения" - -#: lclstrconsts.rsinsertrecordhint -msgctxt "lclstrconsts.rsinsertrecordhint" -msgid "Insert" -msgstr "Вставить" - -#: lclstrconsts.rsinvaliddate -msgid "Invalid Date : %s" -msgstr "Неверная дата: %s" - -#: lclstrconsts.rsinvaliddaterangehint -msgid "Invalid Date: %s. Must be between %s and %s" -msgstr "Неверная дата: %s. Должна быть между %s and %s" - -#: lclstrconsts.rsinvalidformobjectstream -msgid "invalid Form object stream" -msgstr "неправильный поток объекта формы" - -#: lclstrconsts.rsinvalidpropertyvalue -msgid "Invalid property value" -msgstr "Неправильное значение свойства" - -#: lclstrconsts.rsinvalidstreamformat -msgid "Invalid stream format" -msgstr "Неправильный формат потока" - -#: lclstrconsts.rsisalreadyassociatedwith -msgid "%s is already associated with %s" -msgstr "%s уже сопоставлено с %s" - -#: lclstrconsts.rsjpeg -msgid "Joint Picture Expert Group" -msgstr "Joint Picture Expert Group" - -#: lclstrconsts.rslastrecordhint -msgid "Last" -msgstr "Последняя" - -#: lclstrconsts.rslimecolorcaption -msgid "Lime" -msgstr "Зелёный" - -#: lclstrconsts.rslistindexexceedsbounds -msgid "List index exceeds bounds (%d)" -msgstr "Индекс списка вне диапазона (%d)" - -#: lclstrconsts.rsmarooncolorcaption -msgid "Maroon" -msgstr "Малиновый" - -#: lclstrconsts.rsmbabort -msgid "Abort" -msgstr "Прервать" - -#: lclstrconsts.rsmball -msgid "&All" -msgstr "&Все" - -#: lclstrconsts.rsmbcancel -msgctxt "lclstrconsts.rsmbcancel" -msgid "Cancel" -msgstr "Отмена" - -#: lclstrconsts.rsmbclose -msgid "&Close" -msgstr "&Закрыть" - -#: lclstrconsts.rsmbhelp -msgid "&Help" -msgstr "&Справка" - -#: lclstrconsts.rsmbignore -msgid "&Ignore" -msgstr "&Пропустить" - -#: lclstrconsts.rsmbno -msgid "&No" -msgstr "&Нет" - -#: lclstrconsts.rsmbnotoall -msgid "No to all" -msgstr "Нет для всех" - -#: lclstrconsts.rsmbok -msgid "&OK" -msgstr "&Подтвердить" - -#: lclstrconsts.rsmbopen -msgid "&Open" -msgstr "&Открыть" - -#: lclstrconsts.rsmbretry -msgid "&Retry" -msgstr "&Повтор" - -#: lclstrconsts.rsmbsave -msgid "&Save" -msgstr "&Сохранить" - -#: lclstrconsts.rsmbunlock -msgid "&Unlock" -msgstr "&Разблокировать" - -#: lclstrconsts.rsmbyes -msgid "&Yes" -msgstr "&Да" - -#: lclstrconsts.rsmbyestoall -msgid "Yes to &All" -msgstr "Да для &всех" - -#: lclstrconsts.rsmedgraycolorcaption -msgid "Medium Gray" -msgstr "Серый" - -#: lclstrconsts.rsmenubarcolorcaption -msgid "Menu Bar" -msgstr "Панель меню" - -#: lclstrconsts.rsmenucolorcaption -msgctxt "lclstrconsts.rsmenucolorcaption" -msgid "Menu" -msgstr "Меню" - -#: lclstrconsts.rsmenuhighlightcolorcaption -msgid "Menu Highlight" -msgstr "Выделенный пункт меню" - -#: lclstrconsts.rsmenutextcolorcaption -msgid "Menu Text" -msgstr "Текст меню" - -#: lclstrconsts.rsmodified -msgid " modified " -msgstr " изменён " - -#: lclstrconsts.rsmoneygreencolorcaption -msgid "Money Green" -msgstr "Светло-зелёный" - -#: lclstrconsts.rsmtauthentication -msgid "Authentication" -msgstr "Проверка подлинности" - -#: lclstrconsts.rsmtconfirmation -msgid "Confirmation" -msgstr "Подтверждение" - -#: lclstrconsts.rsmtcustom -msgid "Custom" -msgstr "Пользовательский" - -#: lclstrconsts.rsmterror -msgctxt "lclstrconsts.rsmterror" -msgid "Error" -msgstr "Ошибка" - -#: lclstrconsts.rsmtinformation -msgid "Information" -msgstr "Сведения" - -#: lclstrconsts.rsmtwarning -msgid "Warning" -msgstr "Предупреждение" - -#: lclstrconsts.rsnavycolorcaption -msgid "Navy" -msgstr "Тёмно-синий" - -#: lclstrconsts.rsnextrecordhint -msgctxt "lclstrconsts.rsnextrecordhint" -msgid "Next" -msgstr "Следующая" - -#: lclstrconsts.rsnonecolorcaption -msgid "None" -msgstr "Нет" - -#: lclstrconsts.rsnotavalidgridfile -msgid "Not a valid grid file" -msgstr "Неверный файл Grid" - -#: lclstrconsts.rsnowidgetset -msgid "No widgetset object. Please check if the unit \"interfaces\" was added to the programs uses clause." -msgstr "Отсутствует объект библиотеки виджетов. Проверьте, что модуль \"interfaces\" был добавлен в выражение Uses программы." - -#: lclstrconsts.rsolivecolorcaption -msgid "Olive" -msgstr "Оливковый" - -#: lclstrconsts.rspickdate -msgid "Select a date" -msgstr "Выберите дату" - -#: lclstrconsts.rspixmap -msgid "Pixmap" -msgstr "Pixmap" - -#: lclstrconsts.rsportablebitmap -msgid "Portable BitMap" -msgstr "Portable BitMap" - -#: lclstrconsts.rsportablegraymap -msgid "Portable GrayMap" -msgstr "Portable GrayMap" - -#: lclstrconsts.rsportablenetworkgraphic -msgid "Portable Network Graphic" -msgstr "Portable Network Graphic" - -#: lclstrconsts.rsportablepixmap -msgid "Portable PixMap" -msgstr "Portable PixMap" - -#: lclstrconsts.rspostrecordhint -msgid "Post" -msgstr "Отправить" - -#: lclstrconsts.rspressoktoignoreandriskdatacorruptionpresscanceltok -msgid "%s%sPress OK to ignore and risk data corruption.%sPress Abort to kill the program." -msgstr "%s%sНажмите 'Подтвердить' чтобы игнорировать и подвергнуться риску повреждения данных.%sНажмите 'Прервать' для закрытия программы." - -#: lclstrconsts.rspriorrecordhint -msgctxt "lclstrconsts.rspriorrecordhint" -msgid "Prior" -msgstr "Предыдущая" - -#: lclstrconsts.rspromptonreplace -msgid "Prompt on replace" -msgstr "Спрашивать при &замене" - -#: lclstrconsts.rspropertydoesnotexist -msgid "Property %s does not exist" -msgstr "Свойство %s не существует" - -#: lclstrconsts.rspurplecolorcaption -msgid "Purple" -msgstr "Лиловый" - -#: lclstrconsts.rsqtoptiondograb -msgid "-dograb (only under X11), running under a debugger can cause an implicit -nograb, use -dograb to override. Need QT_DEBUG." -msgstr "-dograb (только в X11), запуск в отладчике может повлечь неявный -nograb, используйте -dograb для отмены. Требуется QT_DEBUG." - -#: lclstrconsts.rsqtoptiongraphicsstyle -msgid "-graphicssystem param, sets the backend to be used for on-screen widgets and QPixmaps. Available options are native, raster and opengl. OpenGL is still unstable." -msgstr "-graphicssystem param, устанавливает используемый механизм отрисовки экранных виджетов и QPixmaps. Доступные варианты: native, raster и opengl. OpenGL всё ещё нестабилен." - -#: lclstrconsts.rsqtoptionnograb -msgid "-nograb, tells Qt that it must never grab the mouse or the keyboard. Need QT_DEBUG." -msgstr "-nograb, запрещает Qt захват мыши или клавиатуры. Требует QT_DEBUG." - -#: lclstrconsts.rsqtoptionreverse -msgid "-reverse, sets the application's layout direction to Qt::RightToLeft." -msgstr "-reverse, устанавливает направление размещения виджетов приложения в Qt::RightToLeft." - -#: lclstrconsts.rsqtoptionsession -msgid "-session session, restores the application from an earlier session." -msgstr "-session session, восстанавливает приложение из более ранней сессии." - -#: lclstrconsts.rsqtoptionstyle -msgid "-style style or -style=style, sets the application GUI style. Possible values are motif, windows, and platinum. If you compiled Qt with additional styles or have additional styles as plugins these will be available to the -style command line option. NOTE: Not all styles are available on all platforms. If style param does not exist Qt will start an application with default common style (windows)." -msgstr "-style style или -style=style, устанавливает стиль виджетов интерфейса приложения. Возможные значения: motif, windows, и platinum. Если Qt собран с дополнительными стилями или они имеются в виде модулей, эти стили будут доступны в команде -style. ПРИМЕЧАНИЕ: не все стили доступны на всех платформах. Если стиль отсутствует, Qt запустит приложение со стилем по умолчанию (windows)." - -#: lclstrconsts.rsqtoptionstylesheet -msgid "-stylesheet stylesheet or -stylesheet=stylesheet, sets the application Style Sheet. The value must be a path to a file that contains the Style Sheet. Note: Relative URLs in the Style Sheet file are relative to the Style Sheet file's path." -msgstr "-stylesheet stylesheet или -stylesheet=stylesheet, устанавливает таблицу стилей приложения (Style Sheet). Значение должно являться путём к файлу с таблицей стилей. Примечание: относительные URL'ы в таблице стилей даются относительно пути к файлу таблицы стилей." - -#: lclstrconsts.rsqtoptionsync -msgid "-sync (only under X11), switches to synchronous mode for debugging." -msgstr "-sync (только в X11), устанавливает синхронный режим отладки." - -#: lclstrconsts.rsqtoptionwidgetcount -msgid "-widgetcount, prints debug message at the end about number of widgets left undestroyed and maximum number of widgets existed at the same time." -msgstr "-widgetcount, выводит отладочное сообщение в конце о количестве неуничтоженных, а также максимальном количестве существовавших в один момент времени виджетов." - -#: lclstrconsts.rsqtoptionx11bgcolor -msgid "-bg or -background color, sets the default background color and an application palette (light and dark shades are calculated)." -msgstr "-bg или -background color, устанавливает цвет фона по умолчанию и палитру приложения (вычисляются светлые и тёмные оттенки)." - -#: lclstrconsts.rsqtoptionx11btncolor -msgid "-btn or -button color, sets the default button color." -msgstr "-btn или -button color, устанавливает цвет кнопки по умолчанию." - -#: lclstrconsts.rsqtoptionx11cmap -msgid "-cmap, causes the application to install a private color map on an 8-bit display." -msgstr "-cmap, вызывает установку собственной цветовой карты приложением на 8-разрядном дисплее." - -#: lclstrconsts.rsqtoptionx11display -msgid "-display display, sets the X display (default is $DISPLAY)." -msgstr "-display display, устанавливает дисплей X (по умолчанию - $DISPLAY)." - -#: lclstrconsts.rsqtoptionx11fgcolor -msgid "-fg or -foreground color, sets the default foreground color." -msgstr "-fg или -foreground color, устанавливает цвет текста по умолчанию." - -#: lclstrconsts.rsqtoptionx11font -msgid "-fn or -font font, defines the application font. The font should be specified using an X logical font description." -msgstr "-fn или -font font, задаёт шрифт приложения. Он должен быть указан с использованием логического описания шрифтов X." - -#: lclstrconsts.rsqtoptionx11geometry -msgid "-geometry geometry, sets the client geometry of the first window that is shown." -msgstr "-geometry geometry, устанавливает клиентскую геометрию первого показанного окна." - -#: lclstrconsts.rsqtoptionx11im -msgid "-im, sets the input method server (equivalent to setting the XMODIFIERS environment variable)." -msgstr "-im, устанавливает сервер методов ввода (эквивалентно установке значения переменной окружения XMODIFIERS)." - -#: lclstrconsts.rsqtoptionx11inputstyle -msgid "-inputstyle, defines how the input is inserted into the given widget, e.g. onTheSpot makes the input appear directly in the widget, while overTheSpot makes the input appear in a box floating over the widget and is not inserted until the editing is done." -msgstr "-inputstyle, задаёт, как вводимая информация вносится в данный виджет. Например, onTheSpot приводит к прямому появлению вводимой информации в виджете, тогда как overTheSpot вызывает появление информации в поле, находящемся над виджетом, и не вставляется до окончания редактирования." - -#: lclstrconsts.rsqtoptionx11name -msgid "-name name, sets the application name." -msgstr "-name name, устанавливает имя приложения." - -#: lclstrconsts.rsqtoptionx11ncols -msgid "-ncols count, limits the number of colors allocated in the color cube on an 8-bit display, if the application is using the QApplication::ManyColor color specification. If count is 216 then a 6x6x6 color cube is used (i.e. 6 levels of red, 6 of green, and 6 of blue); for other values, a cube approximately proportional to a 2x3x1 cube is used." -msgstr "-ncols count, ограничивает число цветов в цветовом кубе 8-разрядного дисплея, если приложение использует перечень цветов QApplication::ManyColor. Если количество равно 216, используется цветовой куб 6x6x6 (то есть, 6 уровней красного, 6 зелёного и 6 синего); для других значений используется куб, примерно пропорциональный кубу 2x3x1." - -#: lclstrconsts.rsqtoptionx11title -msgid "-title title, sets the application title." -msgstr "-title title, устанавливает заголовок приложения." - -#: lclstrconsts.rsqtoptionx11visual -msgid "-visual TrueColor, forces the application to use a TrueColor visual on an 8-bit display." -msgstr "-visual TrueColor, вынуждает приложение использовать TrueColor на 8-разрядном дисплее." - -#: lclstrconsts.rsrasterimageendupdate -msgid "Endupdate while no update in progress" -msgstr "Команда Endupdate, хотя обновления не производилось" - -#: lclstrconsts.rsrasterimagesaveinupdate -msgid "Cannot save image while update in progress" -msgstr "Невозможно сохранить изображение во время обновления" - -#: lclstrconsts.rsrasterimageupdateall -msgid "Cannot begin update all when canvas only update in progress" -msgstr "Невозможно начать обновление всех во время обновления канвы" - -#: lclstrconsts.rsredcolorcaption -msgid "Red" -msgstr "Красный" - -#: lclstrconsts.rsrefreshrecordshint -msgid "Refresh" -msgstr "Обновить" - -#: lclstrconsts.rsreplace -msgid "Replace" -msgstr "Заменить" - -#: lclstrconsts.rsreplaceall -msgid "Replace all" -msgstr "Заменить всё" - -#: lclstrconsts.rsresourcenotfound -msgctxt "lclstrconsts.rsresourcenotfound" -msgid "Resource %s not found" -msgstr "Ресурс %s не найден" - -#: lclstrconsts.rsscrollbarcolorcaption -msgid "ScrollBar" -msgstr "Полоса прокрутки" - -#: lclstrconsts.rsscrollbaroutofrange -msgid "ScrollBar property out of range" -msgstr "свойство ScrollBar вне диапазона" - -#: lclstrconsts.rsselectcolortitle -msgid "Select color" -msgstr "Выбрать цвет" - -#: lclstrconsts.rsselectfonttitle -msgid "Select a font" -msgstr "Выбрать шрифт" - -#: lclstrconsts.rssilvercolorcaption -msgid "Silver" -msgstr "Серебристый" - -#: lclstrconsts.rssize -msgid " size " -msgstr " размер " - -#: lclstrconsts.rsskybluecolorcaption -msgid "Sky Blue" -msgstr "Голубой" - -#: lclstrconsts.rstcustomtabcontrolaccessibilitydescription -msgid "A control with tabs" -msgstr "Элемент управления со вкладками" - -#: lclstrconsts.rstealcolorcaption -msgid "Teal" -msgstr "Бирюзовый" - -#: lclstrconsts.rstext -msgid "Text" -msgstr "Текст" - -#: lclstrconsts.rsthebuiltinurlisreadonlychangethebaseurlinstead -msgid "The built-in URL is read only. Change the BaseURL instead." -msgstr "Встроенный URL доступен только для чтения. Вместо него следует изменять BaseURL." - -#: lclstrconsts.rstiff -msgid "Tagged Image File Format" -msgstr "Формат Tagged Image File" - -#: lclstrconsts.rstpanelaccessibilitydescription -msgctxt "lclstrconsts.rstpanelaccessibilitydescription" -msgid "Panel" -msgstr "Панель" - -#: lclstrconsts.rstsplitteraccessibilitydescription -msgctxt "lclstrconsts.rstsplitteraccessibilitydescription" -msgid "A grip to control how much size to give two parts of an area" -msgstr "Захват для управления соотношением размеров двух областей" - -#: lclstrconsts.rsttreeviewaccessibilitydescription -msgctxt "lclstrconsts.rsttreeviewaccessibilitydescription" -msgid "A tree of items" -msgstr "Дерево элементов" - -#: lclstrconsts.rsunabletoloaddefaultfont -msgid "Unable to load default font" -msgstr "Невозможно загрузить шрифт по умолчанию" - -#: lclstrconsts.rsunknownerrorpleasereportthisbug -msgid "Unknown Error, please report this bug" -msgstr "Неизвестная ошибка, сообщите о ней разработчикам" - -#: lclstrconsts.rsunknownpictureextension -msgid "Unknown picture extension" -msgstr "Неизвестное расширение файла изображения" - -#: lclstrconsts.rsunknownpictureformat -msgid "Unknown picture format" -msgstr "Неизвестный формат изображения" - -#: lclstrconsts.rsunsupportedbitmapformat -msgid "Unsupported bitmap format." -msgstr "Неподдерживаемый тип точечного рисунка." - -#: lclstrconsts.rsunsupportedclipboardformat -msgid "Unsupported clipboard format: %s" -msgstr "Неподдерживаемый формат буфера обмена: %s" - -#: lclstrconsts.rswarningunreleaseddcsdump -msgid " WARNING: There are %d unreleased DCs, a detailed dump follows:" -msgstr " ВНИМАНИЕ: Найдено %d неосвобождённых контекстов устройств, список см. ниже:" - -#: lclstrconsts.rswarningunreleasedgdiobjectsdump -msgid " WARNING: There are %d unreleased GDIObjects, a detailed dump follows:" -msgstr " ВНИМАНИЕ: Найдено %d неосвобождённых GDIObject, список см. ниже:" - -#: lclstrconsts.rswarningunreleasedmessagesinqueue -msgid " WARNING: There are %d messages left in the queue! I'll free them" -msgstr " ВНИМАНИЕ: В очереди осталось %d сообщений! Они будут удалены" - -#: lclstrconsts.rswarningunreleasedtimerinfos -msgid " WARNING: There are %d TimerInfo structures left, I'll free them" -msgstr " ВНИМАНИЕ: Осталось %d структур TimerInfo, они будут освобождены" - -#: lclstrconsts.rswarningunremovedpaintmessages -msgid " WARNING: There are %s unremoved LM_PAINT/LM_GtkPAINT message links left." -msgstr " ВНИМАНИЕ: Найдено %s неудалённых ссылок на сообщение LM_PAINT/LM_GtkPAINT." - -#: lclstrconsts.rswhitecolorcaption -msgid "White" -msgstr "Белый" - -#: lclstrconsts.rswholewordsonly -msgid "Whole words only" -msgstr "Только целые слова" - -#: lclstrconsts.rswin32error -msgid "Error:" -msgstr "Ошибка:" - -#: lclstrconsts.rswin32warning -msgid "Warning:" -msgstr "Предупреждение:" - -#: lclstrconsts.rswindowcolorcaption -msgid "Window" -msgstr "Окно" - -#: lclstrconsts.rswindowframecolorcaption -msgid "Window Frame" -msgstr "Граница окна" - -#: lclstrconsts.rswindowtextcolorcaption -msgid "Window Text" -msgstr "Текст окна" - -#: lclstrconsts.rsyellowcolorcaption -msgid "Yellow" -msgstr "Жёлтый" - -#: lclstrconsts.scannotfocus -msgid "Cannot focus a disabled or invisible window" -msgstr "Невозможно перевести фокус в отключённое или невидимое окно" - -#: lclstrconsts.scannotsetdesigntimeppi -msgid "Cannot set design time PPI." -msgstr "Невозможно установить PPI времени разработки." - -#: lclstrconsts.sduplicatemenus -msgid "Duplicate menus" -msgstr "Дублирующиеся меню" - -#: lclstrconsts.sinvalidactioncreation -msgid "Invalid action creation" -msgstr "Неверное создание действия" - -#: lclstrconsts.sinvalidactionenumeration -msgid "Invalid action enumeration" -msgstr "Неверное перечисление действий" - -#: lclstrconsts.sinvalidactionregistration -msgid "Invalid action registration" -msgstr "Неверная регистрация действия" - -#: lclstrconsts.sinvalidactionunregistration -msgid "Invalid action unregistration" -msgstr "Неверная разрегистрация действия" - -#: lclstrconsts.sinvalidcharset -msgid "The char set in mask \"%s\" is not valid!" -msgstr "Набор символов в маске \"%s\" неверен!" - -#: lclstrconsts.sinvalidimagesize -msgid "Invalid image size" -msgstr "Неверный размер рисунка" - -#: lclstrconsts.sinvalidindex -msgid "Invalid ImageList Index" -msgstr "Неверный индекс ImageList" - -#: lclstrconsts.smaskeditnomatch -msgid "The current text does not match the specified mask." -msgstr "Текущий текст не соответствует заданной маске." - -#: lclstrconsts.smenuindexerror -msgid "Menu index out of range" -msgstr "Индекс меню вне диапазона" - -#: lclstrconsts.smenuitemisnil -msgid "MenuItem is nil" -msgstr "MenuItem указывает на нуль" - -#: lclstrconsts.smenunotfound -msgid "Sub-menu is not in menu" -msgstr "Подменю не в меню" - -#: lclstrconsts.smkcalt -msgid "Alt+" -msgstr "Alt+" - -#: lclstrconsts.smkcbksp -msgid "BkSp" -msgstr "BckSp" - -#: lclstrconsts.smkcctrl -msgid "Ctrl+" -msgstr "Ctrl+" - -#: lclstrconsts.smkcdel -msgid "Del" -msgstr "Del" - -#: lclstrconsts.smkcdown -msgctxt "lclstrconsts.smkcdown" -msgid "Down" -msgstr "Down" - -#: lclstrconsts.smkcend -msgctxt "lclstrconsts.smkcend" -msgid "End" -msgstr "End" - -#: lclstrconsts.smkcenter -msgid "Enter" -msgstr "Enter" - -#: lclstrconsts.smkcesc -msgid "Esc" -msgstr "Esc" - -#: lclstrconsts.smkchome -msgctxt "lclstrconsts.smkchome" -msgid "Home" -msgstr "Home" - -#: lclstrconsts.smkcins -msgid "Ins" -msgstr "Ins" - -#: lclstrconsts.smkcleft -msgctxt "lclstrconsts.smkcleft" -msgid "Left" -msgstr "Left" - -#: lclstrconsts.smkcmeta -msgid "Meta+" -msgstr "Meta+" - -#: lclstrconsts.smkcpgdn -msgid "PgDn" -msgstr "PgDn" - -#: lclstrconsts.smkcpgup -msgid "PgUp" -msgstr "PgUp" - -#: lclstrconsts.smkcright -msgctxt "lclstrconsts.smkcright" -msgid "Right" -msgstr "Right" - -#: lclstrconsts.smkcshift -msgid "Shift+" -msgstr "Shift+" - -#: lclstrconsts.smkcspace -msgid "Space" -msgstr "Space" - -#: lclstrconsts.smkctab -msgctxt "lclstrconsts.smkctab" -msgid "Tab" -msgstr "Tab" - -#: lclstrconsts.smkcup -msgctxt "lclstrconsts.smkcup" -msgid "Up" -msgstr "Up" - -#: lclstrconsts.snotimers -msgid "No timers available" -msgstr "Таймеры недоступны" - -#: lclstrconsts.sparentrequired -msgid "Control \"%s\" has no parent window." -msgstr "Элемент управления \"%s\" не имеет родительского окна." - -#: lclstrconsts.sparexpected -msgid "Wrong token type: %s expected" -msgstr "Неверный тип лексемы: ожидался %s" - -#: lclstrconsts.sparinvalidfloat -msgid "Invalid floating point number: %s" -msgstr "Неверное число с плавающей точкой: %s" - -#: lclstrconsts.sparinvalidinteger -msgid "Invalid integer number: %s" -msgstr "Неверное целое число: %s" - -#: lclstrconsts.sparlocinfo -msgid " (at %d,%d, stream offset %d)" -msgstr " (на %d,%d, смещение потока %d)" - -#: lclstrconsts.sparunterminatedbinvalue -msgid "Unterminated byte value" -msgstr "Незавершённое значение байта" - -#: lclstrconsts.sparunterminatedstring -msgid "Unterminated string" -msgstr "Незавершённая строка" - -#: lclstrconsts.sparwrongtokensymbol -msgid "Wrong token symbol: %s expected but %s found" -msgstr "Неверный символ лексемы: ожидался %s, но найден %s" - -#: lclstrconsts.sparwrongtokentype -msgid "Wrong token type: %s expected but %s found" -msgstr "Неверный тип лексемы: ожидался %s, но найден %s" - -#: lclstrconsts.sshellctrlsbytes -msgid "%s bytes" -msgstr "%s байт" - -#: lclstrconsts.sshellctrlsinvalidpath -msgctxt "lclstrconsts.sshellctrlsinvalidpath" -msgid "" -"Invalid pathname:\n" -"\"%s\"\n" -msgstr "" -"Некорректный путь:\n" -"\"%s\"\n" - -#: lclstrconsts.sshellctrlsinvalidpathrelative -msgid "" -"Invalid relative pathname:\n" -"\"%s\"\n" -"in relation to rootpath:\n" -"\"%s\"\n" -msgstr "" -"Некорректный путь:\n" -"\"%s\"\n" -"относительно корневого:\n" -"\"%s\"\n" - -#: lclstrconsts.sshellctrlsinvalidroot -msgctxt "lclstrconsts.sshellctrlsinvalidroot" -msgid "" -"Invalid pathname:\n" -"\"%s\"\n" -msgstr "" -"Некорректный путь:\n" -"\"%s\"\n" - -#: lclstrconsts.sshellctrlskb -msgid "%s kB" -msgstr "%s кБ" - -#: lclstrconsts.sshellctrlsmb -msgid "%s MB" -msgstr "%s МБ" - -#: lclstrconsts.sshellctrlsname -msgid "Name" -msgstr "Имя" - -#: lclstrconsts.sshellctrlsselecteditemdoesnotexists -msgid "" -"The selected item does not exist on disk:\n" -"\"%s\"\n" -msgstr "" -"Выбранный элемент отсутствует на диске:\n" -"\"%s\"\n" - -#: lclstrconsts.sshellctrlssize -msgid "Size" -msgstr "Размер" - -#: lclstrconsts.sshellctrlstype -msgid "Type" -msgstr "Тип" +msgid "" +msgstr "" +"Last-Translator: Maxim Ganetsky \n" +"Project-Id-Version: lazaruside\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2022-01-15 04:23+0300\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Language: ru\n" +"X-Generator: Poedit 2.4.3\n" + +#: lclstrconsts.hhshelpbrowsernotexecutable +msgid "Browser \"%s\" not executable." +msgstr "Браузер \"%s\" не является исполнимым файлом." + +#: lclstrconsts.hhshelpbrowsernotfound +msgid "Browser \"%s\" not found." +msgstr "Браузер \"%s\" не найден." + +#: lclstrconsts.hhshelperrorwhileexecuting +msgid "Error while executing \"%s\":%s%s" +msgstr "Ошибка при исполнении \"%s\":%s%s" + +#: lclstrconsts.hhshelpnohtmlbrowserfound +msgid "Unable to find a HTML browser." +msgstr "Невозможно найти браузер HTML." + +#: lclstrconsts.hhshelpnohtmlbrowserfoundpleasedefineone +msgid "No HTML Browser found.%sPlease define one in Tools -> Options -> Help -> Help Options" +msgstr "Браузер HTML не найден.%sЗадайте его в меню Сервис -> Параметры -> Параметры справки" + +#: lclstrconsts.hhshelpthehelpdatabasewasunabletofindfile +msgid "The help database \"%s\" was unable to find file \"%s\"." +msgstr "База данных справки \"%s\" не смогла найти файл \"%s\"." + +#: lclstrconsts.hhshelpthemacrosinbrowserparamswillbereplacedbytheurl +msgid "The macro %s in BrowserParams will be replaced by the URL." +msgstr "Макрос %s в BrowserParams будет заменён на URL." + +#: lclstrconsts.ifsalt +msgid "Alt" +msgstr "Alt" + +#: lclstrconsts.ifsctrl +msgid "Ctrl" +msgstr "Ctrl" + +#: lclstrconsts.ifsvk_cmd +msgid "Cmd" +msgstr "Cmd" + +#: lclstrconsts.ifsvk_help +msgctxt "lclstrconsts.ifsvk_help" +msgid "Help" +msgstr "Справка" + +#: lclstrconsts.ifsvk_meta +msgid "Meta" +msgstr "Meta" + +#: lclstrconsts.ifsvk_shift +msgid "Shift" +msgstr "Shift" + +#: lclstrconsts.ifsvk_super +msgid "Super" +msgstr "Super" + +#: lclstrconsts.ifsvk_unknown +msgid "Unknown" +msgstr "Неизвестная" + +#: lclstrconsts.lislclresourcesnotfound +msgctxt "lclstrconsts.lislclresourcesnotfound" +msgid "Resource %s not found" +msgstr "Ресурс %s не найден" + +#: lclstrconsts.rs3ddkshadowcolorcaption +msgid "3D Dark Shadow" +msgstr "Затенённая часть объекта 3D" + +#: lclstrconsts.rs3dlightcolorcaption +msgid "3D Light" +msgstr "Освещённая часть объекта 3D" + +#: lclstrconsts.rsacontrolcannothaveitselfasparent +msgid "A control can't have itself as a parent" +msgstr "Элемент управления не может быть родителем сам себе" + +#: lclstrconsts.rsactivebordercolorcaption +msgid "Active Border" +msgstr "Граница активного окна" + +#: lclstrconsts.rsactivecaptioncolorcaption +msgid "Active Caption" +msgstr "Заголовок активного окна" + +#: lclstrconsts.rsallfiles +msgid "All files (%s)|%s|%s" +msgstr "Все файлы (%s)|%s|%s" + +#: lclstrconsts.rsappworkspacecolorcaption +msgid "Application Workspace" +msgstr "Рабочая область приложения" + +#: lclstrconsts.rsaquacolorcaption +msgid "Aqua" +msgstr "Морской волны" + +#: lclstrconsts.rsascannothaveasparent +msgid "Class %s cannot have %s as parent." +msgstr "Класс %s не может иметь %s в качестве родителя." + +#: lclstrconsts.rsbackgroundcolorcaption +msgid "Desktop" +msgstr "Рабочий стол" + +#: lclstrconsts.rsbackward +msgid "Backward" +msgstr "Назад" + +#: lclstrconsts.rsbitmaps +msgid "Bitmap Files" +msgstr "Файлы точечных рисунков" + +#: lclstrconsts.rsblackcolorcaption +msgid "Black" +msgstr "Чёрный" + +#: lclstrconsts.rsblank +msgid "Blank" +msgstr "Пустой" + +#: lclstrconsts.rsbluecolorcaption +msgid "Blue" +msgstr "Синий" + +#: lclstrconsts.rsbtnfacecolorcaption +msgid "Button Face" +msgstr "Лицевая часть кнопки" + +#: lclstrconsts.rsbtnhighlightcolorcaption +msgid "Button Highlight" +msgstr "Освещаемая сторона кнопки" + +#: lclstrconsts.rsbtnshadowcolorcaption +msgid "Button Shadow" +msgstr "Затенённая сторона кнопки" + +#: lclstrconsts.rsbtntextcolorcaption +msgid "Button Text" +msgstr "Текст кнопки" + +#: lclstrconsts.rscalculator +msgid "Calculator" +msgstr "Калькулятор" + +#: lclstrconsts.rscancelrecordhint +msgctxt "lclstrconsts.rscancelrecordhint" +msgid "Cancel" +msgstr "Отмена" + +#: lclstrconsts.rscannotfocus +msgid "Can not focus" +msgstr "Не могу принять фокус" + +#: lclstrconsts.rscanvasdoesnotallowdrawing +msgid "Canvas does not allow drawing" +msgstr "Канва не поддерживает рисования" + +#: lclstrconsts.rscaptiontextcolorcaption +msgid "Caption Text" +msgstr "Текст заголовка" + +#: lclstrconsts.rscasesensitive +msgid "Case sensitive" +msgstr "С учётом регистра" + +#: lclstrconsts.rscontrolclasscantcontainchildclass +msgid "Control of class '%s' can't have control of class '%s' as a child" +msgstr "Элемент управления класса '%s' не может иметь дочерний элемент управления класса '%s'" + +#: lclstrconsts.rscontrolhasnoparentformorframe +msgid "Control '%s' has no parent form or frame" +msgstr "Элемент управления '%s' не имеет родительской формы или фрейма" + +#: lclstrconsts.rscontrolisnotaparent +msgid "'%s' is not a parent of '%s'" +msgstr "'%s' не является родителем '%s'" + +#: lclstrconsts.rscreamcolorcaption +msgid "Cream" +msgstr "Кремовый" + +#: lclstrconsts.rscursor +msgid "Cursor Files" +msgstr "Файлы курсоров" + +#: lclstrconsts.rscustomcolorcaption +msgid "Custom ..." +msgstr "Пользовательский ..." + +#: lclstrconsts.rsdefaultcolorcaption +msgid "Default" +msgstr "По умолчанию" + +#: lclstrconsts.rsdefaultfileinfovalue +msgid "permissions user group size date time" +msgstr "права пользователь группа размер дата время" + +#: lclstrconsts.rsdeleterecord +msgid "Delete record?" +msgstr "Удалить запись?" + +#: lclstrconsts.rsdeleterecordhint +msgctxt "lclstrconsts.rsdeleterecordhint" +msgid "Delete" +msgstr "Удалить" + +#: lclstrconsts.rsdirection +msgid "Direction" +msgstr "Направление" + +#: lclstrconsts.rsdirectory +msgid "&Directory" +msgstr "&Каталог" + +#: lclstrconsts.rsdocopy +msgid "Copy" +msgstr "Копировать" + +#: lclstrconsts.rsdopaste +msgid "Paste" +msgstr "Вставить" + +#: lclstrconsts.rsduplicateiconformat +msgid "Duplicate icon format." +msgstr "Формат значков дублируется." + +#: lclstrconsts.rseditrecordhint +msgid "Edit" +msgstr "Редактировать" + +#: lclstrconsts.rsentirescope +msgid "Search entire file" +msgstr "Во всём файле" + +#: lclstrconsts.rserror +msgctxt "lclstrconsts.rserror" +msgid "Error" +msgstr "Ошибка" + +#: lclstrconsts.rserrorcreatingdevicecontext +msgid "Error creating device context for %s.%s" +msgstr "Ошибка создания контекста устройства для %s.%s" + +#: lclstrconsts.rserroroccurredinataddressframe +msgid "Error occurred in %s at %sAddress %s%s Frame %s" +msgstr "Произошла ошибка в %s по %s адресу %s%s фрейм %s" + +#: lclstrconsts.rserrorwhilesavingbitmap +msgid "Error while saving bitmap." +msgstr "Ошибка при сохранении точечного рисунка (bitmap)." + +#: lclstrconsts.rsexception +msgid "Exception" +msgstr "Исключение" + +#: lclstrconsts.rsfddirectorymustexist +msgid "Directory must exist" +msgstr "Каталог должен существовать" + +#: lclstrconsts.rsfddirectorynotexist +msgid "The directory \"%s\" does not exist." +msgstr "Каталог \"%s\" не существует." + +#: lclstrconsts.rsfdfilealreadyexists +msgid "The file \"%s\" already exists. Overwrite ?" +msgstr "Файл \"%s\" уже существует. Перезаписать?" + +#: lclstrconsts.rsfdfilemustexist +msgid "File must exist" +msgstr "Файл должен существовать" + +#: lclstrconsts.rsfdfilenotexist +msgid "The file \"%s\" does not exist." +msgstr "Файл \"%s\" не существует" + +#: lclstrconsts.rsfdfilereadonly +msgid "The file \"%s\" is not writable." +msgstr "Файл \"%s\" не доступен для записи." + +#: lclstrconsts.rsfdfilereadonlytitle +msgid "File is not writable" +msgstr "Файл не доступен для записи" + +#: lclstrconsts.rsfdfilesaveas +msgid "Save file as" +msgstr "Сохранить файл как" + +#: lclstrconsts.rsfdopenfile +msgid "Open existing file" +msgstr "Открыть существующий файл" + +#: lclstrconsts.rsfdoverwritefile +msgid "Overwrite file ?" +msgstr "Перезаписать файл?" + +#: lclstrconsts.rsfdpathmustexist +msgid "Path must exist" +msgstr "Путь должен существовать" + +#: lclstrconsts.rsfdpathnoexist +msgid "The path \"%s\" does not exist." +msgstr "Путь \"%s\" не существует." + +#: lclstrconsts.rsfdselectdirectory +msgid "Select Directory" +msgstr "Выберите каталог" + +#: lclstrconsts.rsfileinfofilenotfound +msgid "(file not found: \"%s\")" +msgstr "(файл не найден: \"%s\")" + +#: lclstrconsts.rsfileinformation +msgid "File information" +msgstr "Сведения о файле" + +#: lclstrconsts.rsfilter +msgctxt "lclstrconsts.rsfilter" +msgid "(filter)" +msgstr "(фильтр)" + +#: lclstrconsts.rsfind +msgid "Find" +msgstr "Найти" + +#: lclstrconsts.rsfindmore +msgid "Find more" +msgstr "Найти далее" + +#: lclstrconsts.rsfirstrecordhint +msgid "First" +msgstr "Первая" + +#: lclstrconsts.rsfixedcolstoobig +msgid "FixedCols can't be > ColCount" +msgstr "Значение FixedCols не может превышать ColCount" + +#: lclstrconsts.rsfixedrowstoobig +msgid "FixedRows can't be > RowCount" +msgstr "Значение FixedRows не может превышать RowCount" + +#: lclstrconsts.rsformcolorcaption +msgid "Form" +msgstr "Форма" + +#: lclstrconsts.rsformresourcesnotfoundforresourcelessformscreatenew +msgid "Form resource %s not found. For resourceless forms CreateNew constructor must be used. See the global variable RequireDerivedFormResource." +msgstr "Ресурс формы %s не найден. Для форм без ресурсов следует использовать конструктор CreateNew. Обратите внимание на глобальную переменную RequireDerivedFormResource." + +#: lclstrconsts.rsformstreamingerror +msgid "Form streaming \"%s\" error: %s" +msgstr "Ошибка потоков \"%s\" форм: %s" + +#: lclstrconsts.rsforward +msgid "Forward" +msgstr "Вперёд" + +#: lclstrconsts.rsfuchsiacolorcaption +msgid "Fuchsia" +msgstr "Розовый" + +#: lclstrconsts.rsgdkoptiondebug +msgid "--gdk-debug flags Turn on specific GDK trace/debug messages." +msgstr "--gdk-debug flags Включить указанные отладочные сообщения GDK." + +#: lclstrconsts.rsgdkoptionnodebug +msgid "--gdk-no-debug flags Turn off specific GDK trace/debug messages." +msgstr "--gdk-no-debug flags Выключить указанные отладочные сообщения GDK." + +#: lclstrconsts.rsgif +msgid "Graphics Interchange Format Files" +msgstr "Файлы Graphics Interchange Format" + +#: lclstrconsts.rsgoptionfatalwarnings +msgid "--g-fatal-warnings Warnings and errors generated by Gtk+/GDK will halt the application." +msgstr "--g-fatal-warnings Замечания и ошибки, выдаваемые Gtk+/GDK, остановят приложение." + +#: lclstrconsts.rsgradientactivecaptioncolorcaption +msgid "Gradient Active Caption" +msgstr "Градиент активного заголовка" + +#: lclstrconsts.rsgradientinactivecaptioncolorcaption +msgid "Gradient Inactive Caption" +msgstr "Градиент неактивного заголовка" + +#: lclstrconsts.rsgraphic +msgid "Graphic" +msgstr "Графические файлы" + +#: lclstrconsts.rsgraycolorcaption +msgid "Gray" +msgstr "Тёмно-серый" + +#: lclstrconsts.rsgraytextcolorcaption +msgid "Gray Text" +msgstr "Серый текст" + +#: lclstrconsts.rsgreencolorcaption +msgid "Green" +msgstr "Тёмно-зелёный" + +#: lclstrconsts.rsgridfiledoesnotexist +msgid "Grid file doesn't exist" +msgstr "Файл Grid не существует" + +#: lclstrconsts.rsgridhasnocols +msgid "Cannot insert rows into a grid when it has no columns" +msgstr "Невозможно вставить строки, если отсутствуют столбцы" + +#: lclstrconsts.rsgridhasnorows +msgid "Cannot insert columns into a grid when it has no rows" +msgstr "Невозможно вставить столбцы, если отсутствуют строки" + +#: lclstrconsts.rsgridindexoutofrange +msgid "Grid index out of range." +msgstr "Индекс Grid вне диапазона допустимых значений." + +#: lclstrconsts.rsgroupindexcannotbelessthanprevious +msgid "GroupIndex cannot be less than a previous menu item's GroupIndex" +msgstr "GroupIndex не может быть меньше GroupIndex для предыдущего элемента меню" + +#: lclstrconsts.rsgtkfilter +msgid "Filter:" +msgstr "Фильтр:" + +#: lclstrconsts.rsgtkhistory +msgid "History:" +msgstr "История:" + +#: lclstrconsts.rsgtkoptionclass +msgid "--class classname Following Xt conventions, the class of a program is the program name with the initial character capitalized. For example, the classname for gimp is \"Gimp\". If --class is specified, the class of the program will be set to \"classname\"." +msgstr "--class classname Следуя соглашениям Xt, класс программы - это имя программы с прописным первым символом. Например, имя класса для gimp - \"Gimp\". Если задан --class, класс программы будет установлен в \"classname\"." + +#: lclstrconsts.rsgtkoptiondebug +msgid "--gtk-debug flags Turn on specific Gtk+ trace/debug messages." +msgstr "--gtk-debug flags Включить указанные отладочные сообщения Gtk+." + +#: lclstrconsts.rsgtkoptiondisplay +msgid "--display h:s:d Connect to the specified X server, where \"h\" is the hostname, \"s\" is the server number (usually 0), and \"d\" is the display number (typically omitted). If --display is not specified, the DISPLAY environment variable is used." +msgstr "--display h:s:d Связаться с указанным сервером X, где \"h\" - имя хост-машины, \"s\" - номер сервера (обычно 0), и \"d\" - номер дисплея (обычно опускается). Если не задан --display, используется переменная окружения DISPLAY." + +#: lclstrconsts.rsgtkoptionmodule +msgid "--gtk-module module Load the specified module at startup." +msgstr "--gtk-module модуль Загрузить указанный модуль при запуске." + +#: lclstrconsts.rsgtkoptionname +msgid "--name programe Set program name to \"progname\". If not specified, program name will be set to ParamStrUTF8(0)." +msgstr "--name имяпрог Установить имя программы в \"имяпрог\". Если не задано, имя программы будет установлено в ParamStrUTF8(0)." + +#: lclstrconsts.rsgtkoptionnodebug +msgid "--gtk-no-debug flags Turn off specific Gtk+ trace/debug messages." +msgstr "--gtk-no-debug flags Выключить указанные отладочные сообщения Gtk+." + +#: lclstrconsts.rsgtkoptionnotransient +msgid "--lcl-no-transient Do not set transient order for modal forms" +msgstr "--lcl-no-transient Не устанавливать временный порядок модальных форм" + +#: lclstrconsts.rsgtkoptionnoxshm +msgid "--no-xshm Disable use of the X Shared Memory Extension." +msgstr "--no-xshm Запрет использования расширений X по разделяемой памяти." + +#: lclstrconsts.rsgtkoptionsync +msgid "--sync Call XSynchronize (display, True) after the Xserver connection has been established. This makes debugging X protocol errors easier, because X request buffering will be disabled and X errors will be received immediately after the protocol request that generated the error has been processed by the X server." +msgstr "--sync Вызвать XSynchronize (display, True) после установления соединения с сервером X. Это облегчает отладку ошибок протокола X, так как запросы буферизации X будут отключены, и ошибки X будут получаться сразу после обработки сервером X запроса протокола, который вызвал ошибку." + +#: lclstrconsts.rshelp +msgctxt "lclstrconsts.rshelp" +msgid "Help" +msgstr "Справка" + +#: lclstrconsts.rshelpalreadyregistered +msgid "%s: Already registered" +msgstr "%s: уже зарегистрирован" + +#: lclstrconsts.rshelpcontextnotfound +msgid "A help database was found for this topic, but this topic was not found" +msgstr "База данных справки была найдена для данной темы, но не содержит её" + +#: lclstrconsts.rshelpdatabasenotfound +msgid "There is no help database installed for this topic" +msgstr "База данных справки для данной темы не установлена" + +#: lclstrconsts.rshelperror +msgid "Help Error" +msgstr "Ошибка справки" + +#: lclstrconsts.rshelphelpcontextnotfound +msgid "Help context %s not found." +msgstr "Контекст справки %s не найден." + +#: lclstrconsts.rshelphelpcontextnotfoundindatabase +msgid "Help context %s not found in Database \"%s\"." +msgstr "Контекст справки %s не найден в базе данных \"%s\"." + +#: lclstrconsts.rshelphelpdatabasedidnotfoundaviewerforahelppageoftype +msgid "Help Database \"%s\" did not find a viewer for a help page of type %s" +msgstr "База данных справки \"%s\" не нашла программу просмотра для страницы справки типа %s" + +#: lclstrconsts.rshelphelpdatabasenotfound +msgid "Help Database \"%s\" not found" +msgstr "База данных справки \"%s\" не найдена" + +#: lclstrconsts.rshelphelpfordirectivenotfound +msgid "Help for directive \"%s\" not found." +msgstr "Справка для директивы \"%s\" не найдена." + +#: lclstrconsts.rshelphelpfordirectivenotfoundindatabase +msgid "Help for directive \"%s\" not found in Database \"%s\"." +msgstr "Справка для директивы \"%s\" в базе данных \"%s\" не найдена." + +#: lclstrconsts.rshelphelpkeywordnotfound +msgid "Help keyword \"%s\" not found." +msgstr "Ключевое слово справки \"%s\" не найдено." + +#: lclstrconsts.rshelphelpkeywordnotfoundindatabase +msgid "Help keyword \"%s\" not found in Database \"%s\"." +msgstr "Ключевое слово справки \"%s\" не найдено в базе данных \"%s\"." + +#: lclstrconsts.rshelphelpnodehasnohelpdatabase +msgid "Help node \"%s\" has no Help Database" +msgstr "Элемент справки \"%s\" не имеет соответствующей базы данных" + +#: lclstrconsts.rshelpnohelpfoundforsource +msgid "No help found for line %d, column %d of %s." +msgstr "Не найдено справки для строки %d, столбца %d из %s." + +#: lclstrconsts.rshelpnohelpnodesavailable +msgid "No help entries available for this topic" +msgstr "Доступные элементы справки для данной темы отсутствуют" + +#: lclstrconsts.rshelpnotfound +msgid "No help found for this topic" +msgstr "Справка для данной темы не найдена" + +#: lclstrconsts.rshelpnotregistered +msgid "%s: Not registered" +msgstr "%s: Не зарегистрирован" + +#: lclstrconsts.rshelpselectorerror +msgid "Help Selector Error" +msgstr "Ошибка переключателя справки" + +#: lclstrconsts.rshelpthereisnoviewerforhelptype +msgid "There is no viewer for help type \"%s\"" +msgstr "Отсутствует программа просмотра для типа справки \"%s\"" + +#: lclstrconsts.rshelpviewererror +msgid "Help Viewer Error" +msgstr "Ошибка программы просмотра справки" + +#: lclstrconsts.rshelpviewernotfound +msgid "No viewer was found for this type of help content" +msgstr "Программа просмотра справки для данного типа её содержимого не найдена" + +#: lclstrconsts.rshighlightcolorcaption +msgid "Highlight" +msgstr "Выделенное" + +#: lclstrconsts.rshighlighttextcolorcaption +msgid "Highlight Text" +msgstr "Текст выделенного" + +#: lclstrconsts.rshotlightcolorcaption +msgid "Hot Light" +msgstr "Выделение" + +#: lclstrconsts.rsicns +msgid "macOS Icon Files" +msgstr "Файлы значков macOS" + +msgid "Icon Files" +msgstr "Файлы значков" + +#: lclstrconsts.rsiconimageempty +msgid "Icon image cannot be empty" +msgstr "Изображение значка не может быть пустым" + +#: lclstrconsts.rsiconimageformat +msgid "Icon image must have the same format" +msgstr "Изображение значка должно иметь тот же формат" + +#: lclstrconsts.rsiconimageformatchange +msgid "Cannot change format of icon image" +msgstr "Невозможно изменить формат изображения значка" + +#: lclstrconsts.rsiconimagesize +msgid "Icon image must have the same size" +msgstr "Изображение значка должно иметь тот же размер" + +#: lclstrconsts.rsiconimagesizechange +msgid "Cannot change size of icon image" +msgstr "Невозможно изменить размер изображения значка" + +#: lclstrconsts.rsiconnocurrent +msgid "Icon has no current image" +msgstr "Значок не имеет текущего изображения" + +#: lclstrconsts.rsinactivebordercolorcaption +msgid "Inactive Border" +msgstr "Граница неактивного окна" + +#: lclstrconsts.rsinactivecaptioncolorcaption +msgctxt "lclstrconsts.rsinactivecaptioncolorcaption" +msgid "Inactive Caption" +msgstr "Заголовок неактивного окна" + +#: lclstrconsts.rsinactivecaptiontext +msgctxt "lclstrconsts.rsinactivecaptiontext" +msgid "Inactive Caption" +msgstr "Заголовок неактивного окна" + +#: lclstrconsts.rsindexoutofbounds +msgid "%s Index %d out of bounds 0 .. %d" +msgstr "%s Индекс %d вне диапазона 0 .. %d" + +#: lclstrconsts.rsindexoutofrange +msgid "Index Out of range Cell[Col=%d Row=%d]" +msgstr "Индекс вне диапазона Cell[Col=%d Row=%d]" + +#: lclstrconsts.rsinfobkcolorcaption +msgid "Info Background" +msgstr "Фон сообщения" + +#: lclstrconsts.rsinfotextcolorcaption +msgid "Info Text" +msgstr "Текст сообщения" + +#: lclstrconsts.rsinsertrecordhint +msgctxt "lclstrconsts.rsinsertrecordhint" +msgid "Insert" +msgstr "Вставить" + +#: lclstrconsts.rsinvaliddate +msgid "Invalid Date : %s" +msgstr "Неверная дата: %s" + +#: lclstrconsts.rsinvaliddaterangehint +msgid "Invalid Date: %s. Must be between %s and %s" +msgstr "Неверная дата: %s. Должна быть между %s and %s" + +#: lclstrconsts.rsinvalidformobjectstream +msgid "invalid Form object stream" +msgstr "неправильный поток объекта формы" + +#: lclstrconsts.rsinvalidpropertyvalue +msgid "Invalid property value" +msgstr "Неправильное значение свойства" + +#: lclstrconsts.rsinvalidstreamformat +msgid "Invalid stream format" +msgstr "Неправильный формат потока" + +#: lclstrconsts.rsisalreadyassociatedwith +msgid "%s is already associated with %s" +msgstr "%s уже сопоставлено с %s" + +#: lclstrconsts.rsjpeg +msgid "JPEG Files" +msgstr "Файлы JPEG" + +#: lclstrconsts.rslastrecordhint +msgid "Last" +msgstr "Последняя" + +#: lclstrconsts.rslimecolorcaption +msgid "Lime" +msgstr "Зелёный" + +#: lclstrconsts.rslistindexexceedsbounds +msgid "List index exceeds bounds (%d)" +msgstr "Индекс списка вне диапазона (%d)" + +#: lclstrconsts.rsmacosfileformat +msgid "File Format:" +msgstr "Формат файла:" + +#: lclstrconsts.rsmacosmenuhide +#, object-pascal-format +msgid "Hide %s" +msgstr "Скрыть %s" + +#: lclstrconsts.rsmacosmenuhideothers +msgid "Hide Others" +msgstr "Скрыть остальные" + +#: lclstrconsts.rsmacosmenuquit +#, object-pascal-format +msgid "Quit %s" +msgstr "Завершить %s" + +#: lclstrconsts.rsmacosmenuservices +msgid "Services" +msgstr "Службы" + +#: lclstrconsts.rsmacosmenushowall +msgid "Show All" +msgstr "Показать все" +#: lclstrconsts.rsmarooncolorcaption +msgid "Maroon" +msgstr "Малиновый" + +#: lclstrconsts.rsmbabort +msgid "Abort" +msgstr "Прервать" + +#: lclstrconsts.rsmball +msgid "&All" +msgstr "&Все" + +#: lclstrconsts.rsmbcancel +msgctxt "lclstrconsts.rsmbcancel" +msgid "Cancel" +msgstr "Отмена" + +#: lclstrconsts.rsmbclose +msgid "&Close" +msgstr "&Закрыть" + +#: lclstrconsts.rsmbhelp +msgid "&Help" +msgstr "&Справка" + +#: lclstrconsts.rsmbignore +msgid "&Ignore" +msgstr "&Пропустить" + +#: lclstrconsts.rsmbno +msgid "&No" +msgstr "&Нет" + +#: lclstrconsts.rsmbnotoall +msgid "No to all" +msgstr "Нет для всех" + +#: lclstrconsts.rsmbok +msgid "&OK" +msgstr "&Подтвердить" + +#: lclstrconsts.rsmbopen +msgid "&Open" +msgstr "&Открыть" + +#: lclstrconsts.rsmbretry +msgid "&Retry" +msgstr "&Повтор" + +#: lclstrconsts.rsmbsave +msgid "&Save" +msgstr "&Сохранить" + +#: lclstrconsts.rsmbunlock +msgid "&Unlock" +msgstr "&Разблокировать" + +#: lclstrconsts.rsmbyes +msgid "&Yes" +msgstr "&Да" + +#: lclstrconsts.rsmbyestoall +msgid "Yes to &All" +msgstr "Да для &всех" + +#: lclstrconsts.rsmedgraycolorcaption +msgid "Medium Gray" +msgstr "Серый" + +#: lclstrconsts.rsmenubarcolorcaption +msgid "Menu Bar" +msgstr "Панель меню" + +#: lclstrconsts.rsmenucolorcaption +msgctxt "lclstrconsts.rsmenucolorcaption" +msgid "Menu" +msgstr "Меню" + +#: lclstrconsts.rsmenuhighlightcolorcaption +msgid "Menu Highlight" +msgstr "Выделенный пункт меню" + +#: lclstrconsts.rsmenutextcolorcaption +msgid "Menu Text" +msgstr "Текст меню" + +#: lclstrconsts.rsmodified +msgid " modified " +msgstr " изменён " + +#: lclstrconsts.rsmoneygreencolorcaption +msgid "Money Green" +msgstr "Светло-зелёный" + +#: lclstrconsts.rsmtauthentication +msgid "Authentication" +msgstr "Проверка подлинности" + +#: lclstrconsts.rsmtconfirmation +msgid "Confirmation" +msgstr "Подтверждение" + +#: lclstrconsts.rsmtcustom +msgid "Custom" +msgstr "Пользовательский" + +#: lclstrconsts.rsmterror +msgctxt "lclstrconsts.rsmterror" +msgid "Error" +msgstr "Ошибка" + +#: lclstrconsts.rsmtinformation +msgid "Information" +msgstr "Сведения" + +#: lclstrconsts.rsmtwarning +msgid "Warning" +msgstr "Предупреждение" + +#: lclstrconsts.rsnavycolorcaption +msgid "Navy" +msgstr "Тёмно-синий" + +#: lclstrconsts.rsnextrecordhint +msgctxt "lclstrconsts.rsnextrecordhint" +msgid "Next" +msgstr "Следующая" + +#: lclstrconsts.rsnonecolorcaption +msgid "None" +msgstr "Нет" + +#: lclstrconsts.rsnotavalidgridfile +msgid "Not a valid grid file" +msgstr "Неверный файл Grid" + +#: lclstrconsts.rsnowidgetset +msgid "No widgetset object. Please check if the unit \"interfaces\" was added to the programs uses clause." +msgstr "Отсутствует объект библиотеки виджетов. Проверьте, что модуль \"interfaces\" был добавлен в выражение Uses программы." + +#: lclstrconsts.rsolivecolorcaption +msgid "Olive" +msgstr "Оливковый" + +#: lclstrconsts.rspickdate +msgid "Select a date" +msgstr "Выберите дату" + +#: lclstrconsts.rspixmap +msgid "Pixmap Files" +msgstr "Файлы Pixmap" + +#: lclstrconsts.rsportablenetworkgraphic +msgid "PNG Files" +msgstr "Файлы PNG" + +#: lclstrconsts.rsportablepixmap +msgid "Portable Pixmap Files" +msgstr "Файлы Portable Pixmap" + +#: lclstrconsts.rspostrecordhint +msgid "Post" +msgstr "Отправить" + +#: lclstrconsts.rspressoktoignoreandriskdatacorruptionpressaborttok +msgid "%s%sPress OK to ignore and risk data corruption.%sPress Abort to kill the program." +msgstr "%s%sНажмите 'Подтвердить', чтобы игнорировать и подвергнуться риску повреждения данных.%sНажмите 'Прервать' для закрытия программы." +#: lclstrconsts.rspriorrecordhint +msgctxt "lclstrconsts.rspriorrecordhint" +msgid "Prior" +msgstr "Предыдущая" + +#: lclstrconsts.rspromptonreplace +msgid "Prompt on replace" +msgstr "Спрашивать при &замене" + +#: lclstrconsts.rspropertydoesnotexist +msgid "Property %s does not exist" +msgstr "Свойство %s не существует" + +#: lclstrconsts.rspurplecolorcaption +msgid "Purple" +msgstr "Лиловый" + +#: lclstrconsts.rsqtoptiondisableaccurateframe +msgid "-disableaccurateframe, disables fully accurate window frame under X11. This feature is implemented for Qt, Qt5 and Gtk2 interfaces and used mostly by GetWindowRect()." +msgstr "-disableaccurateframe, отключает определение точных границ окна в X11. Эта возможность реализована для интерфейсов Qt, Qt5 и Gtk2 и используется преимущественно GetWindowRect()." +#: lclstrconsts.rsqtoptiondograb +msgid "-dograb (only under X11), running under a debugger can cause an implicit -nograb, use -dograb to override. Need QT_DEBUG." +msgstr "-dograb (только в X11), запуск в отладчике может повлечь неявный -nograb, используйте -dograb для отмены. Требуется QT_DEBUG." + +#: lclstrconsts.rsqtoptiongraphicsstyle +msgid "-graphicssystem param, sets the backend to be used for on-screen widgets and QPixmaps. Available options are native, raster and opengl. OpenGL is still unstable." +msgstr "-graphicssystem param, устанавливает используемый механизм отрисовки экранных виджетов и QPixmaps. Доступные варианты: native, raster и opengl. OpenGL всё ещё нестабилен." + +#: lclstrconsts.rsqtoptionnograb +msgid "-nograb, tells Qt that it must never grab the mouse or the keyboard. Need QT_DEBUG." +msgstr "-nograb, запрещает Qt захват мыши или клавиатуры. Требует QT_DEBUG." + +#: lclstrconsts.rsqtoptionreverse +msgid "-reverse, sets the application's layout direction to Qt::RightToLeft." +msgstr "-reverse, устанавливает направление размещения виджетов приложения в Qt::RightToLeft." + +#: lclstrconsts.rsqtoptionsession +msgid "-session session, restores the application from an earlier session." +msgstr "-session session, восстанавливает приложение из более ранней сессии." + +#: lclstrconsts.rsqtoptionstyle +msgid "-style style or -style=style, sets the application GUI style. Possible values are motif, windows, and platinum. If you compiled Qt with additional styles or have additional styles as plugins these will be available to the -style command line option. NOTE: Not all styles are available on all platforms. If style param does not exist Qt will start an application with default common style (windows)." +msgstr "-style style или -style=style, устанавливает стиль виджетов интерфейса приложения. Возможные значения: motif, windows, и platinum. Если Qt собран с дополнительными стилями или они имеются в виде модулей, эти стили будут доступны в команде -style. ПРИМЕЧАНИЕ: не все стили доступны на всех платформах. Если стиль отсутствует, Qt запустит приложение со стилем по умолчанию (windows)." + +#: lclstrconsts.rsqtoptionstylesheet +msgid "-stylesheet stylesheet or -stylesheet=stylesheet, sets the application Style Sheet. The value must be a path to a file that contains the Style Sheet. Note: Relative URLs in the Style Sheet file are relative to the Style Sheet file's path." +msgstr "-stylesheet stylesheet или -stylesheet=stylesheet, устанавливает таблицу стилей приложения (Style Sheet). Значение должно являться путём к файлу с таблицей стилей. Примечание: относительные URL'ы в таблице стилей даются относительно пути к файлу таблицы стилей." + +#: lclstrconsts.rsqtoptionsync +msgid "-sync (only under X11), switches to synchronous mode for debugging." +msgstr "-sync (только в X11), устанавливает синхронный режим отладки." + +#: lclstrconsts.rsqtoptionwidgetcount +msgid "-widgetcount, prints debug message at the end about number of widgets left undestroyed and maximum number of widgets existed at the same time." +msgstr "-widgetcount, выводит отладочное сообщение в конце о количестве неуничтоженных, а также максимальном количестве существовавших в один момент времени виджетов." + +#: lclstrconsts.rsqtoptionx11bgcolor +msgid "-bg or -background color, sets the default background color and an application palette (light and dark shades are calculated)." +msgstr "-bg или -background color, устанавливает цвет фона по умолчанию и палитру приложения (вычисляются светлые и тёмные оттенки)." + +#: lclstrconsts.rsqtoptionx11btncolor +msgid "-btn or -button color, sets the default button color." +msgstr "-btn или -button color, устанавливает цвет кнопки по умолчанию." + +#: lclstrconsts.rsqtoptionx11cmap +msgid "-cmap, causes the application to install a private color map on an 8-bit display." +msgstr "-cmap, вызывает установку собственной цветовой карты приложением на 8-разрядном дисплее." + +#: lclstrconsts.rsqtoptionx11display +msgid "-display display, sets the X display (default is $DISPLAY)." +msgstr "-display display, устанавливает дисплей X (по умолчанию - $DISPLAY)." + +#: lclstrconsts.rsqtoptionx11fgcolor +msgid "-fg or -foreground color, sets the default foreground color." +msgstr "-fg или -foreground color, устанавливает цвет текста по умолчанию." + +#: lclstrconsts.rsqtoptionx11font +msgid "-fn or -font font, defines the application font. The font should be specified using an X logical font description." +msgstr "-fn или -font font, задаёт шрифт приложения. Он должен быть указан с использованием логического описания шрифтов X." + +#: lclstrconsts.rsqtoptionx11geometry +msgid "-geometry geometry, sets the client geometry of the first window that is shown." +msgstr "-geometry geometry, устанавливает клиентскую геометрию первого показанного окна." + +#: lclstrconsts.rsqtoptionx11im +msgid "-im, sets the input method server (equivalent to setting the XMODIFIERS environment variable)." +msgstr "-im, устанавливает сервер методов ввода (эквивалентно установке значения переменной окружения XMODIFIERS)." + +#: lclstrconsts.rsqtoptionx11inputstyle +msgid "-inputstyle, defines how the input is inserted into the given widget, e.g. onTheSpot makes the input appear directly in the widget, while overTheSpot makes the input appear in a box floating over the widget and is not inserted until the editing is done." +msgstr "-inputstyle, задаёт, как вводимая информация вносится в данный виджет. Например, onTheSpot приводит к прямому появлению вводимой информации в виджете, тогда как overTheSpot вызывает появление информации в поле, находящемся над виджетом, и не вставляется до окончания редактирования." + +#: lclstrconsts.rsqtoptionx11name +msgid "-name name, sets the application name." +msgstr "-name name, устанавливает имя приложения." + +#: lclstrconsts.rsqtoptionx11ncols +msgid "-ncols count, limits the number of colors allocated in the color cube on an 8-bit display, if the application is using the QApplication::ManyColor color specification. If count is 216 then a 6x6x6 color cube is used (i.e. 6 levels of red, 6 of green, and 6 of blue); for other values, a cube approximately proportional to a 2x3x1 cube is used." +msgstr "-ncols count, ограничивает число цветов в цветовом кубе 8-разрядного дисплея, если приложение использует перечень цветов QApplication::ManyColor. Если количество равно 216, используется цветовой куб 6x6x6 (то есть, 6 уровней красного, 6 зелёного и 6 синего); для других значений используется куб, примерно пропорциональный кубу 2x3x1." + +#: lclstrconsts.rsqtoptionx11title +msgid "-title title, sets the application title." +msgstr "-title title, устанавливает заголовок приложения." + +#: lclstrconsts.rsqtoptionx11visual +msgid "-visual TrueColor, forces the application to use a TrueColor visual on an 8-bit display." +msgstr "-visual TrueColor, вынуждает приложение использовать TrueColor на 8-разрядном дисплее." + +#: lclstrconsts.rsrasterimageendupdate +msgid "Endupdate while no update in progress" +msgstr "Команда Endupdate, хотя обновления не производилось" + +#: lclstrconsts.rsrasterimagesaveinupdate +msgid "Cannot save image while update in progress" +msgstr "Невозможно сохранить изображение во время обновления" + +#: lclstrconsts.rsrasterimageupdateall +msgid "Cannot begin update all when canvas only update in progress" +msgstr "Невозможно начать обновление всех во время обновления канвы" + +#: lclstrconsts.rsredcolorcaption +msgid "Red" +msgstr "Красный" + +#: lclstrconsts.rsrefreshrecordshint +msgid "Refresh" +msgstr "Обновить" + +#: lclstrconsts.rsreplace +msgid "Replace" +msgstr "Заменить" + +#: lclstrconsts.rsreplaceall +msgid "Replace all" +msgstr "Заменить всё" + +#: lclstrconsts.rsresourcenotfound +msgctxt "lclstrconsts.rsresourcenotfound" +msgid "Resource %s not found" +msgstr "Ресурс %s не найден" + +#: lclstrconsts.rsscrollbarcolorcaption +msgid "ScrollBar" +msgstr "Полоса прокрутки" + +#: lclstrconsts.rsscrollbaroutofrange +msgid "ScrollBar property out of range" +msgstr "свойство ScrollBar вне диапазона" + +#: lclstrconsts.rsselectcolortitle +msgid "Select color" +msgstr "Выбрать цвет" + +#: lclstrconsts.rsselectfonttitle +msgid "Select a font" +msgstr "Выбрать шрифт" + +#: lclstrconsts.rssilvercolorcaption +msgid "Silver" +msgstr "Серебристый" + +#: lclstrconsts.rssize +msgid " size " +msgstr " размер " + +#: lclstrconsts.rsskybluecolorcaption +msgid "Sky Blue" +msgstr "Голубой" + +#: lclstrconsts.rstcustomtabcontrolaccessibilitydescription +msgid "A control with tabs" +msgstr "Элемент управления со вкладками" + +#: lclstrconsts.rstealcolorcaption +msgid "Teal" +msgstr "Бирюзовый" + +#: lclstrconsts.rstext +msgid "Text" +msgstr "Текст" + +#: lclstrconsts.rstga +msgid "TGA Image Files" +msgstr "Файлы изображений TGA" + +#: lclstrconsts.rsthebuiltinurlisreadonlychangethebaseurlinstead +msgid "The built-in URL is read only. Change the BaseURL instead." +msgstr "Встроенный URL доступен только для чтения. Вместо него следует изменять BaseURL." + +#: lclstrconsts.rstiff +msgid "Tagged Image File Format Files" +msgstr "Файлы Tagged Image File Format" + +#: lclstrconsts.rstpanelaccessibilitydescription +msgctxt "lclstrconsts.rstpanelaccessibilitydescription" +msgid "Panel" +msgstr "Панель" + +#: lclstrconsts.rstsplitteraccessibilitydescription +msgctxt "lclstrconsts.rstsplitteraccessibilitydescription" +msgid "A grip to control how much size to give two parts of an area" +msgstr "Захват для управления соотношением размеров двух областей" + +#: lclstrconsts.rsttreeviewaccessibilitydescription +msgctxt "lclstrconsts.rsttreeviewaccessibilitydescription" +msgid "A tree of items" +msgstr "Дерево элементов" + +#: lclstrconsts.rsunabletoloaddefaultfont +msgid "Unable to load default font" +msgstr "Невозможно загрузить шрифт по умолчанию" + +#: lclstrconsts.rsunknownerrorpleasereportthisbug +msgid "Unknown Error, please report this bug" +msgstr "Неизвестная ошибка, сообщите о ней разработчикам" + +#: lclstrconsts.rsunknownpictureextension +msgid "Unknown picture extension" +msgstr "Неизвестное расширение файла изображения" + +#: lclstrconsts.rsunknownpictureformat +msgid "Unknown picture format" +msgstr "Неизвестный формат изображения" + +#: lclstrconsts.rsunsupportedbitmapformat +msgid "Unsupported bitmap format." +msgstr "Неподдерживаемый тип точечного рисунка." + +#: lclstrconsts.rsunsupportedclipboardformat +msgid "Unsupported clipboard format: %s" +msgstr "Неподдерживаемый формат буфера обмена: %s" + +#: lclstrconsts.rswarningunreleaseddcsdump +msgid " WARNING: There are %d unreleased DCs, a detailed dump follows:" +msgstr " ВНИМАНИЕ: Найдено %d неосвобождённых контекстов устройств, список см. ниже:" + +#: lclstrconsts.rswarningunreleasedgdiobjectsdump +msgid " WARNING: There are %d unreleased GDIObjects, a detailed dump follows:" +msgstr " ВНИМАНИЕ: Найдено %d неосвобождённых GDIObject, список см. ниже:" + +#: lclstrconsts.rswarningunreleasedmessagesinqueue +msgid " WARNING: There are %d messages left in the queue! I'll free them" +msgstr " ВНИМАНИЕ: В очереди осталось %d сообщений! Они будут удалены" + +#: lclstrconsts.rswarningunreleasedtimerinfos +msgid " WARNING: There are %d TimerInfo structures left, I'll free them" +msgstr " ВНИМАНИЕ: Осталось %d структур TimerInfo, они будут освобождены" + +#: lclstrconsts.rswarningunremovedpaintmessages +msgid " WARNING: There are %s unremoved LM_PAINT/LM_GtkPAINT message links left." +msgstr " ВНИМАНИЕ: Найдено %s неудалённых ссылок на сообщение LM_PAINT/LM_GtkPAINT." + +#: lclstrconsts.rswhitecolorcaption +msgid "White" +msgstr "Белый" + +#: lclstrconsts.rswholewordsonly +msgid "Whole words only" +msgstr "Только целые слова" + +#: lclstrconsts.rswin32error +msgid "Error:" +msgstr "Ошибка:" + +#: lclstrconsts.rswin32warning +msgid "Warning:" +msgstr "Предупреждение:" + +#: lclstrconsts.rswindowcolorcaption +msgid "Window" +msgstr "Окно" + +#: lclstrconsts.rswindowframecolorcaption +msgid "Window Frame" +msgstr "Граница окна" + +#: lclstrconsts.rswindowtextcolorcaption +msgid "Window Text" +msgstr "Текст окна" + +#: lclstrconsts.rsyellowcolorcaption +msgid "Yellow" +msgstr "Жёлтый" + +#: lclstrconsts.scannotfocus +msgid "Cannot focus a disabled or invisible window" +msgstr "Невозможно перевести фокус в отключённое или невидимое окно" + +#: lclstrconsts.sduplicatemenus +msgid "Duplicate menus" +msgstr "Дублирующиеся меню" + +#: lclstrconsts.sinvalidactioncreation +msgid "Invalid action creation" +msgstr "Неверное создание действия" + +#: lclstrconsts.sinvalidactionenumeration +msgid "Invalid action enumeration" +msgstr "Неверное перечисление действий" + +#: lclstrconsts.sinvalidactionregistration +msgid "Invalid action registration" +msgstr "Неверная регистрация действия" + +#: lclstrconsts.sinvalidactionunregistration +msgid "Invalid action unregistration" +msgstr "Неверная разрегистрация действия" + +#: lclstrconsts.sinvalidimagesize +msgid "Invalid image size" +msgstr "Неверный размер рисунка" + +#: lclstrconsts.sinvalidindex +msgid "Invalid ImageList Index" +msgstr "Неверный индекс ImageList" + +#: lclstrconsts.smaskeditnomatch +msgid "The current text does not match the specified mask." +msgstr "Текущий текст не соответствует заданной маске." + +#: lclstrconsts.smenuindexerror +msgid "Menu index out of range" +msgstr "Индекс меню вне диапазона" + +#: lclstrconsts.smenuitemisnil +msgid "MenuItem is nil" +msgstr "MenuItem указывает на нуль" + +#: lclstrconsts.smenunotfound +msgid "Sub-menu is not in menu" +msgstr "Подменю не в меню" + +#: lclstrconsts.smkcalt +msgid "Alt+" +msgstr "Alt+" + +#: lclstrconsts.smkcbksp +msgid "BkSp" +msgstr "BckSp" + +#: lclstrconsts.smkcctrl +msgid "Ctrl+" +msgstr "Ctrl+" + +#: lclstrconsts.smkcdel +msgid "Del" +msgstr "Del" + +#: lclstrconsts.smkcdown +msgctxt "lclstrconsts.smkcdown" +msgid "Down" +msgstr "Down" + +#: lclstrconsts.smkcend +msgctxt "lclstrconsts.smkcend" +msgid "End" +msgstr "End" + +#: lclstrconsts.smkcenter +msgid "Enter" +msgstr "Enter" + +#: lclstrconsts.smkcesc +msgid "Esc" +msgstr "Esc" + +#: lclstrconsts.smkchome +msgctxt "lclstrconsts.smkchome" +msgid "Home" +msgstr "Home" + +#: lclstrconsts.smkcins +msgid "Ins" +msgstr "Ins" + +#: lclstrconsts.smkcleft +msgctxt "lclstrconsts.smkcleft" +msgid "Left" +msgstr "Left" + +#: lclstrconsts.smkcmeta +msgid "Meta+" +msgstr "Meta+" + +#: lclstrconsts.smkcpgdn +msgid "PgDn" +msgstr "PgDn" + +#: lclstrconsts.smkcpgup +msgid "PgUp" +msgstr "PgUp" + +#: lclstrconsts.smkcright +msgctxt "lclstrconsts.smkcright" +msgid "Right" +msgstr "Right" + +#: lclstrconsts.smkcshift +msgid "Shift+" +msgstr "Shift+" + +#: lclstrconsts.smkcspace +msgid "Space" +msgstr "Space" + +#: lclstrconsts.smkctab +msgctxt "lclstrconsts.smkctab" +msgid "Tab" +msgstr "Tab" + +#: lclstrconsts.smkcup +msgctxt "lclstrconsts.smkcup" +msgid "Up" +msgstr "Up" + +#: lclstrconsts.snotimers +msgid "No timers available" +msgstr "Таймеры недоступны" + +#: lclstrconsts.sparentrequired +msgid "Control \"%s\" has no parent window." +msgstr "Элемент управления \"%s\" не имеет родительского окна." + +#: lclstrconsts.sparexpected +msgid "Wrong token type: %s expected" +msgstr "Неверный тип лексемы: ожидался %s" + +#: lclstrconsts.sparinvalidfloat +msgid "Invalid floating point number: %s" +msgstr "Неверное число с плавающей точкой: %s" + +#: lclstrconsts.sparinvalidinteger +msgid "Invalid integer number: %s" +msgstr "Неверное целое число: %s" + +#: lclstrconsts.sparlocinfo +msgid " (at %d,%d, stream offset %d)" +msgstr " (на %d,%d, смещение потока %d)" + +#: lclstrconsts.sparunterminatedbinvalue +msgid "Unterminated byte value" +msgstr "Незавершённое значение байта" + +#: lclstrconsts.sparunterminatedstring +msgid "Unterminated string" +msgstr "Незавершённая строка" + +#: lclstrconsts.sparwrongtokensymbol +msgid "Wrong token symbol: %s expected but %s found" +msgstr "Неверный символ лексемы: ожидался %s, но найден %s" + +#: lclstrconsts.sparwrongtokentype +msgid "Wrong token type: %s expected but %s found" +msgstr "Неверный тип лексемы: ожидался %s, но найден %s" + +#: lclstrconsts.sshellctrlsbytes +msgid "%s bytes" +msgstr "%s байт" + +#: lclstrconsts.sshellctrlsinvalidpath +msgctxt "lclstrconsts.sshellctrlsinvalidpath" +msgid "" +"Invalid pathname:\n" +"\"%s\"" +msgstr "" +"Некорректный путь:\n" +"\"%s\"" + +#: lclstrconsts.sshellctrlsinvalidpathrelative +msgid "" +"Invalid relative pathname:\n" +"\"%s\"\n" +"in relation to rootpath:\n" +"\"%s\"\n" +msgstr "" +"Некорректный путь:\n" +"\"%s\"\n" +"относительно корневого:\n" +"\"%s\"" + +#: lclstrconsts.sshellctrlsinvalidroot +msgctxt "lclstrconsts.sshellctrlsinvalidroot" +msgid "" +"Invalid pathname:\n" +"\"%s\"" +msgstr "" +"Некорректный путь:\n" +"\"%s\"" + +#: lclstrconsts.sshellctrlskb +msgid "%s kB" +msgstr "%s кБ" + +#: lclstrconsts.sshellctrlsmb +msgid "%s MB" +msgstr "%s МБ" + +#: lclstrconsts.sshellctrlsname +msgid "Name" +msgstr "Имя" + +#: lclstrconsts.sshellctrlsselecteditemdoesnotexists +msgid "" +"The selected item does not exist on disk:\n" +"\"%s\"\n" +msgstr "" +"Выбранный элемент отсутствует на диске:\n" +"\"%s\"\n" + +#: lclstrconsts.sshellctrlssize +msgid "Size" +msgstr "Размер" + +#: lclstrconsts.sshellctrlstype +msgid "Type" +msgstr "Тип" diff --git a/Cheat Engine/bin/languages/ru_RU/monoscript.po b/Cheat Engine/bin/languages/ru_RU/monoscript.po index cefd7c80..d66d7714 100755 --- a/Cheat Engine/bin/languages/ru_RU/monoscript.po +++ b/Cheat Engine/bin/languages/ru_RU/monoscript.po @@ -1,145 +1,155 @@ -msgid "" -msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" -"Project-Id-Version: monoscript.lua RU\n" -"Language-Team: SER[G]ANT \n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"X-Generator: Poedit 2.0.2\n" - - -#: monoscript-FITM -msgid "Failure injecting the MonoDatacollector dll" -msgstr "Не удалось внедрить MonoDatacollector dll" - -#: monoscript-DYWTL -msgid "Do you wish to let the mono extention figure out the name and start address? If it's not a proper object this may crash the target." -msgstr "Вы хотите позволить Mono расширению выяснить имя и стартовый адрес? Если это не подходящий объект, то это может привести к сбою цели." - -#: monoscript-IO -msgid "Instances of " -msgstr "Экземпляры " - -#: monoscript-WTAJG -msgid "Warning: These are just guesses. Validate them yourself" -msgstr "Это просто предположения. Поверьте их самостоятельно" - -#: monoscript-AN -msgid "address==nil" -msgstr "адрес==nil" - -#: monoscript-Invoke -msgid "Invoke " -msgstr "Вызвать " - -#: monoscript-IA -msgid "Instance address" -msgstr "Адрес экземпляра" - -#: monoscript-PW -msgid "" -msgstr "<Пожалуйста, подождите ...>" - -#: monoscript-Parameters -msgid "Parameters" -msgstr "Параметры" - -#: monoscript-OK -msgid "OK" -msgstr "Подтвердить" - -#: monoscript-Cancel -msgid "Cancel" -msgstr "Отмена" - -#: monoscript-Parameter -msgid "parameter " -msgstr "параметр " - -#: monoscript-INAVA -msgid " is not a valid address" -msgstr " не является допустимым адресом" - -#: monoscript-INAVV -msgid "is not a valid value" -msgstr "не является допустимым значением" - -#: monoscript-IFT -msgid "ILCode from %x to %x" -msgstr "ILCode от %x до %x" - -#: monoscript-OX -msgid "Offset %x" -msgstr "Смещение %x" - -#: monoscript-Resolve -msgid "Resolve " -msgstr "Разрешить " - -#: monoscript-XSTS -msgid "%x : %s (type: %s)" -msgstr "%x : %s (тип: %s)" - -#: monoscript-AYSYWTE -msgid "Are you sure you wish to expand the whole tree? This can take a while and Cheat Engine may look like it has crashed (It has not)" -msgstr "Вы уверены, что хотите развернуть всё «дерево»? Это может занять некоторое время, и Cheat Engine может выглядеть так, будто он завис (но это не так)" - -#: monoscript-FTL -msgid "Failure to launch" -msgstr "Отказ запуска" - -#: monoscript-Mono -msgid "Mono" -msgstr "Mono" - -#: monoscript-AMF -msgid "Activate mono features" -msgstr "Активировать Mono функции" - -#: monoscript-DM -msgid "Dissect mono" -msgstr "Mono анализ" - -#: monoscript-TMHFTI -msgid "The mono handler failed to initialize" -msgstr "Не удалось инициализировать Mono обработчик" - -#: monoscript-IPMN -msgid "Invalid parameters (Methodname could not be determined)" -msgstr "Недопустимые параметры (имя метода не может быть определён)" - -#: monoscript-IPCN -msgid "Invalid parameters (Classname could not be determined)" -msgstr "Недопустимые параметры (имя класса не может быть определено)" - -#: monoscript-IPN -msgid "Invalid parameters (name could not be determined)" -msgstr "Недопустимые параметры (имя не может быть определено)" - -#: monoscript-CNBF -msgid " could not be found" -msgstr " невозможно найти" - -#: monoscript-CNBJ -msgid " could not be jitted" -msgstr " невозможно откомпилировать «на лету»" - -#: monoscript-STFDNWY -msgid "Sorry this feature does not work yet. getStructureCount needs patching first." -msgstr "К сожалению, эта функция пока не работает. Сначала нужно пропатчить getStructureCount" - -#: monoscript-Removing -msgid "Removing " -msgstr "Удаление " - -#: monoscript-RS -msgid "Reloading Structure " -msgstr "Перезагрузка структуры " - -#: monoscript-TC -msgid "The class " -msgstr "Класс " - -#: monoscript-HNF -msgid " has no fields" -msgstr " не имеет полей" +#: monoscript-FITM +msgid "Failure injecting the MonoDatacollector dll" +msgstr "Не удалось внедрить MonoDatacollector dll" + +#: monoscript-DYWTL +msgid "Do you wish to let the mono extention figure out the name and start address? If it's not a proper object this may crash the target." +msgstr "Вы хотите позволить Mono расширению выяснить имя и стартовый адрес? Если это не подходящий объект, то это может привести к сбою цели." + +#: monoscript-IO +msgid "Instances of " +msgstr "Экземпляры " + +#: monoscript-WTAJG +msgid "Warning: These are just guesses. Validate them yourself" +msgstr "Предупреждение: Это просто предположения. Подтвердите их самостоятельно" + +#: monoscript-AN +msgid "address==nil" +msgstr "адрес==nil" + +#: monoscript-Invoke +msgid "Invoke " +msgstr "Вызвать " + +#: monoscript-IA +msgid "Instance address" +msgstr "Адрес экземпляра" + +#: monoscript-PW +msgid "" +msgstr "<Пожалуйста, подождите ...>" + +#: monoscript-Parameters +msgid "Parameters" +msgstr "Параметры" + +#: monoscript-OK +msgid "OK" +msgstr "Подтвердить" + +#: monoscript-Cancel +msgid "Cancel" +msgstr "Отмена" + +#: monoscript-Parameter +msgid "parameter " +msgstr "параметр " + +#: monoscript-INAVA +msgid " is not a valid address" +msgstr " не является допустимым адресом" + +#: monoscript-INAVV +msgid "is not a valid value" +msgstr "не является допустимым значением" + +#: monoscript-IFT +msgid "ILCode from %x to %x" +msgstr "ILCode от %x до %x" + +#: monoscript-OX +msgid "Offset %x" +msgstr "Смещение %x" + +#: monoscript-Resolve +msgid "Resolve " +msgstr "Разрешить " + +#: monoscript-XSTS +msgid "%x : %s (type: %s)" +msgstr "%x : %s (тип: %s)" + +#: monoscript-AYSYWTE +msgid "Are you sure you wish to expand the whole tree? This can take a while and Cheat Engine may look like it has crashed (It has not)" +msgstr "Вы уверены, что хотите развернуть всё «дерево»? Это может занять некоторое время, и Cheat Engine может выглядеть так, будто он завис (но это не так)" + +#: monoscript-FTL +msgid "Failure to launch" +msgstr "Отказ запуска" + +#: monoscript-Mono +msgid "Mono" +msgstr "Mono" + +#: monoscript-AMF +msgid "Activate mono features" +msgstr "Активировать Mono функции" + +#: monoscript-DM +msgid "Dissect mono" +msgstr "Mono анализ" + +#: monoscript-TMHFTI +msgid "The mono handler failed to initialize" +msgstr "Не удалось инициализировать Mono обработчик" + +#: monoscript-IPMN +msgid "Invalid parameters (Methodname could not be determined)" +msgstr "Недопустимые параметры (имя метода не может быть определён)" + +#: monoscript-IPCN +msgid "Invalid parameters (Classname could not be determined)" +msgstr "Недопустимые параметры (имя класса не может быть определено)" + +#: monoscript-IPN +msgid "Invalid parameters (name could not be determined)" +msgstr "Недопустимые параметры (имя не может быть определено)" + +#: monoscript-CNBF +msgid " could not be found" +msgstr " невозможно найти" + +#: monoscript-CNBJ +msgid " could not be jitted" +msgstr " невозможно откомпилировать «на лету»" + +#: monoscript-STFDNWY +msgid "Sorry this feature does not work yet. getStructureCount needs patching first." +msgstr "К сожалению, эта функция пока не работает. Сначала нужно пропатчить getStructureCount" + +#: monoscript-Removing +msgid "Removing " +msgstr "Удаление " + +#: monoscript-RS +msgid "Reloading Structure " +msgstr "Перезагрузка структуры " + +#: monoscript-TC +msgid "The class " +msgstr "Класс " + +#: monoscript-HNF +msgid " has no fields" +msgstr " не имеет полей" + +#: monoscript-CSE +msgid "Cancel symbol enum" +msgstr "Отменить перечисление символов" + +#: monoscript-YCNUTW +msgid "You can not use this while the process is frozen" +msgstr "Вы не можете использовать это, пока процесс заморожен" + +#: monoscript-ISE +msgid "IL2CPP symbol enum: 0%" +msgstr "Перечисление символов IL2CPP: 0%" + +#: monoscript-ISA +msgid "" +msgstr "<Недопустимая строка в %.8x>" + +#: monoscript-NI +msgid ".Net Info" +msgstr ".Net Информация" diff --git a/Cheat Engine/bin/languages/ru_RU/patchscan.po b/Cheat Engine/bin/languages/ru_RU/patchscan.po index 65876cf3..74c3eb65 100755 --- a/Cheat Engine/bin/languages/ru_RU/patchscan.po +++ b/Cheat Engine/bin/languages/ru_RU/patchscan.po @@ -1,79 +1,70 @@ -msgid "" -msgstr "" -"Project-Id-Version: \n" -"POT-Creation-Date: \n" -"PO-Revision-Date: \n" -"Last-Translator: \n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.2.3\n" -"Language: ru_RU\n" - -msgid "Not a valid executable" -msgstr "Неправильный исполняемый файл" - -#: patchscan-navwe -msgid "Not a valid windows executable" -msgstr "Неправильный исполняемый файл Windows" - -#: patchscan-ttomicns -msgid "This type of module is currently not supported" -msgstr "Данный тип модуля в настоящее время не поддерживается" - -#: patchscan-ce -msgid "Compare error. " -msgstr "Ошибка сравнения. " - -#: patchscan-ml -msgid "Module List" -msgstr "Список модулей" - -#: patchscan-stmtsfp -msgid "Select the modules to scan for patches. Hold shift/ctrl to select multiple modules" -msgstr "Выберите модули для поиска на наличие патчей. Удерживайте Shift/Ctrl для мультивыбора " - -#: patchscan-ok -msgid " OK " -msgstr "Подтвердить" - -#: patchscan-cancel -msgid "Cancel" -msgstr "Отмена" - -#: patchscan-scanning -msgid "Scanning: %s" -msgstr "Сканирование: %s" - -#: patchscan-ei -msgid "Error in " -msgstr "Ошибка в " - -#: patchscan-pl -msgid "Patch list" -msgstr "Список патчей" - -#: patchscan-address -msgid "Address" -msgstr "Адресс" - -#: patchscan-original -msgid "Original" -msgstr "Оригинал" - -#: patchscan-patched -msgid "Patched" -msgstr "Патч" - -#: patchscan-rwo -msgid "Restore with original" -msgstr "Восстановить оригиналом" - -#: patchscan-rp -msgid "Reapply patch" -msgstr "Пропатчить повторно" - -#: patchscan-sfp -msgid "Scan for patches" -msgstr "Поиск патчей" +msgid "Not a valid executable" +msgstr "Неправильный исполняемый файл" + +#: patchscan-navwe +msgid "Not a valid windows executable" +msgstr "Неправильный исполняемый файл Windows" + +#: patchscan-ttomicns +msgid "This type of module is currently not supported" +msgstr "Данный тип модуля в настоящее время не поддерживается" + +#: patchscan-ce +msgid "Compare error. " +msgstr "Ошибка сравнения. " + +#: patchscan-ml +msgid "Module List" +msgstr "Список модулей" + +#: patchscan-stmtsfp +msgid "Select the modules to scan for patches. Hold shift/ctrl to select multiple modules" +msgstr "Выберите модули для поиска на наличие исправлений. Удерживайте Shift/Ctrl для мультивыбора" + +#: patchscan-ok +msgid " OK " +msgstr "Подтвердить" + +#: patchscan-cancel +msgid "Cancel" +msgstr "Отмена" + +#: patchscan-scanning +msgid "Scanning: %s" +msgstr "Сканирование: %s" + +#: patchscan-ei +msgid "Error in " +msgstr "Ошибка в " + +#: patchscan-pl +msgid "Patch list" +msgstr "Список исправлений" + +#: patchscan-address +msgid "Address" +msgstr "Адресс" + +#: patchscan-original +msgid "Original" +msgstr "Оригинал" + +#: patchscan-patched +msgid "Patched" +msgstr "Исправлен" + +#: patchscan-rwo +msgid "Restore with original" +msgstr "Восстановить оригиналом" + +#: patchscan-rp +msgid "Reapply patch" +msgstr "Исправить повторно" + +#: patchscan- +msgid "Create patched exe from selected entries" +msgstr "Создайть исправленный EXE из выбранных записей" + +#: patchscan-sfp +msgid "Scan for patches" +msgstr "Поиск исправлений" diff --git a/Cheat Engine/bin/languages/ru_RU/pseudocodediagram.po b/Cheat Engine/bin/languages/ru_RU/pseudocodediagram.po index d321e524..9802c471 100755 --- a/Cheat Engine/bin/languages/ru_RU/pseudocodediagram.po +++ b/Cheat Engine/bin/languages/ru_RU/pseudocodediagram.po @@ -1,196 +1,183 @@ -msgid "" -msgstr "" -"Project-Id-Version: \n" -"POT-Creation-Date: \n" -"PO-Revision-Date: \n" -"Last-Translator: \n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"X-Generator: Poedit 2.2.3\n" - -#: pseudocodediagram-file -msgid "File" -msgstr "Файл" - -#: pseudocodediagram-lff -msgid "Load from file" -msgstr "Загрузить из файла" - -#: pseudocodediagram-stfywto -msgid "Select the file you wish to open" -msgstr "Выберите файл, который вы хотите открыть" - -#: pseudocodediagram-dfcc -msgid "Diagram files (*.CEDIAG )|*.CEDIAG" -msgstr "Файлы диаграммы (*.CEDIAG )|*.CEDIAG" - -#: pseudocodediagram-stf -msgid "Save to file" -msgstr "Сохранить в файл" - -#: pseudocodediagram-fitfywtstda -msgid "Fill in the filename you wish to save this diagram as" -msgstr "Введите имя файла, под которым вы хотите сохранить эту диаграмму" - -#: pseudocodediagram-sdti -msgid "Save diagram to image" -msgstr "Сохранить диаграмму в виде изображения" - -#: pseudocodediagram-fitfywtstdi -msgid "Fill in the filename you wish to save this diagram image" -msgstr "Введите имя файла, под которым вы хотите сохранить изображение этой диаграммы" - -#: pseudocodediagram-pfpp -msgid "PNG files (*.PNG )|*.PNG" -msgstr "PNG файлы (*.PNG )|*.PNG" - -#: pseudocodediagram-close -msgid "Close" -msgstr "Закрыть" - -#: pseudocodediagram-display -msgid "Display" -msgstr "Отображение" - -#: pseudocodediagram-spfu2oc -msgid "Show path from Ultimap1/2 or Codefilter" -msgstr "Показать путь из Ultimap1/2 или Фильтра кода" - -#: pseudocodediagram-spftw -msgid "Show path from tracer window" -msgstr "Показать путь из окна трассировщика" - -#: pseudocodediagram-tsa -msgid "Tracer starting at %8x (%s)" -msgstr "Трассировщик начинает с %8x (%s)" - -#: pseudocodediagram-tp -msgid "Tracer paths" -msgstr "Пути трассировщика" - -#: pseudocodediagram-wtwsbu -msgid "Which tracer window shall be used?" -msgstr "Какое окно трассировщика должно использоваться?" - -#: pseudocodediagram-ntwrv -msgid "No tracerform with results visible" -msgstr "Отсутствует окно трассировщика с видимыми результатами" - -#: pseudocodediagram-v -msgid "View" -msgstr "Вид" - -#: pseudocodediagram-z -msgid "Zoom" -msgstr "Увеличение" - -#: pseudocodediagram-zi -msgid "Zoom in" -msgstr "Увеличить" - -#: pseudocodediagram-zo -msgid "Zoom out" -msgstr "Уменьшить" - -#: pseudocodediagram-e -msgid "Edit" -msgstr "Редактировать" - -#: pseudocodediagram-nh -msgid "new header" -msgstr "новый заголовок" - -#: pseudocodediagram-nbbc -msgid "new block background color (0xBBGGRR)" -msgstr "новый фоновый цвет блока (0xBBGGRR)" - -#: pseudocodediagram-sl -msgid "Sources list" -msgstr "Список источников" - -#: pseudocodediagram-dl -msgid "Destinations list" -msgstr "Список назначений" - -#: pseudocodediagram-be -msgid "Block editor" -msgstr "Редактор блока" - -#: pseudocodediagram-ok -msgid "OK" -msgstr "Подтвердить" - -#: pseudocodediagram-cancel -msgid "Cancel" -msgstr "Отмена" - -#: pseudocodediagram-gts -msgid "Go to source" -msgstr "Перейти к источнику" - -#: pseudocodediagram-gtd -msgid "Go to destination" -msgstr "Пойдите по месту назначения" - -#: pseudocodediagram-rap -msgid "Remove all points" -msgstr "Убрать все точки" - -#: pseudocodediagram-ebh -msgid "Edit block header" -msgstr "Редактировать заголовок блока" - -#: pseudocodediagram-ebc -msgid "Edit block color" -msgstr "Редактировать цвет блока" - -#: pseudocodediagram-ls -msgid "List sources" -msgstr "Список источников" - -#: pseudocodediagram-ld -msgid "List destinations" -msgstr "Список назначений" - -#: pseudocodediagram-eac -msgid "Edit annotation color" -msgstr "Редактировать цвет аннотации" - -#: pseudocodediagram-da -msgid "Delete annotation" -msgstr "Удалить аннотацию" - -#: pseudocodediagram-ca -msgid "Create annotation" -msgstr "Создать аннотацию" - -#: pseudocodediagram-mdi -msgid "[Diagram info]" -msgstr "[Информация о диограмме]" - -#: pseudocodediagram-fstart -msgid " Function start: 0x%X" -msgstr " Начало функции: 0x%X" - -#: pseudocodediagram-fstop -msgid " Function stop: 0x%X" -msgstr " Конец функции: 0x%X" - -#: pseudocodediagram-dbc -msgid " Diagram blocks count: %d" -msgstr " Количество блоков: %d" - -#: pseudocodediagram-dlc -msgid " Diagram links count: %d" -msgstr " Количество ссылок: %d" - -#: pseudocodediagram-diagram -msgid "Diagram" -msgstr "Диаграмма" - -#: pseudocodediagram-sd -msgid "Spawn diagram" -msgstr "Породить диаграмму" +#: pseudocodediagram-file +msgid "File" +msgstr "Файл" + +#: pseudocodediagram-lff +msgid "Load from file" +msgstr "Загрузить из файла" + +#: pseudocodediagram-stfywto +msgid "Select the file you wish to open" +msgstr "Выберите файл, который вы хотите открыть" + +#: pseudocodediagram-dfcc +msgid "Diagram files (*.CEDIAG )|*.CEDIAG" +msgstr "Файлы диаграммы (*.CEDIAG )|*.CEDIAG" + +#: pseudocodediagram-stf +msgid "Save to file" +msgstr "Сохранить в файл" + +#: pseudocodediagram-fitfywtstda +msgid "Fill in the filename you wish to save this diagram as" +msgstr "Введите имя файла, под которым вы хотите сохранить эту диаграмму" + +#: pseudocodediagram-sdti +msgid "Save diagram to image" +msgstr "Сохранить диаграмму в виде изображения" + +#: pseudocodediagram-fitfywtstdi +msgid "Fill in the filename you wish to save this diagram image" +msgstr "Введите имя файла, под которым вы хотите сохранить изображение этой диаграммы" + +#: pseudocodediagram-pfpp +msgid "PNG files (*.PNG )|*.PNG" +msgstr "PNG файлы (*.PNG )|*.PNG" + +#: pseudocodediagram-close +msgid "Close" +msgstr "Закрыть" + +#: pseudocodediagram-display +msgid "Display" +msgstr "Отображение" + +#: pseudocodediagram-spfu2oc +msgid "Show path from Ultimap1/2 or Codefilter" +msgstr "Показать путь из Ultimap1/2 или Фильтра кода" + +#: pseudocodediagram-spftw +msgid "Show path from tracer window" +msgstr "Показать путь из окна трассировщика" + +#: pseudocodediagram-tsa +msgid "Tracer starting at %8x (%s)" +msgstr "Трассировщик начинает с %8x (%s)" + +#: pseudocodediagram-tp +msgid "Tracer paths" +msgstr "Пути трассировщика" + +#: pseudocodediagram-wtwsbu +msgid "Which tracer window shall be used?" +msgstr "Какое окно трассировщика должно использоваться?" + +#: pseudocodediagram-ntwrv +msgid "No tracerform with results visible" +msgstr "Отсутствует окно трассировщика с видимыми результатами" + +#: pseudocodediagram-v +msgid "View" +msgstr "Вид" + +#: pseudocodediagram-z +msgid "Zoom" +msgstr "Увеличение" + +#: pseudocodediagram-zi +msgid "Zoom in" +msgstr "Увеличить" + +#: pseudocodediagram-zo +msgid "Zoom out" +msgstr "Уменьшить" + +#: pseudocodediagram-e +msgid "Edit" +msgstr "Редактировать" + +#: pseudocodediagram-nh +msgid "new header" +msgstr "новый заголовок" + +#: pseudocodediagram-nbbc +msgid "new block background color (0xBBGGRR)" +msgstr "новый фоновый цвет блока (0xBBGGRR)" + +#: pseudocodediagram-sl +msgid "Sources list" +msgstr "Список источников" + +#: pseudocodediagram-dl +msgid "Destinations list" +msgstr "Список назначений" + +#: pseudocodediagram-be +msgid "Block editor" +msgstr "Редактор блока" + +#: pseudocodediagram-ok +msgid "OK" +msgstr "Подтвердить" + +#: pseudocodediagram-cancel +msgid "Cancel" +msgstr "Отмена" + +#: pseudocodediagram-gts +msgid "Go to source" +msgstr "Перейти к источнику" + +#: pseudocodediagram-gtd +msgid "Go to destination" +msgstr "Пойдите по месту назначения" + +#: pseudocodediagram-rap +msgid "Remove all points" +msgstr "Убрать все точки" + +#: pseudocodediagram-ebh +msgid "Edit block header" +msgstr "Редактировать заголовок блока" + +#: pseudocodediagram-ebc +msgid "Edit block color" +msgstr "Редактировать цвет блока" + +#: pseudocodediagram-ls +msgid "List sources" +msgstr "Список источников" + +#: pseudocodediagram-ld +msgid "List destinations" +msgstr "Список назначений" + +#: pseudocodediagram-eac +msgid "Edit annotation color" +msgstr "Редактировать цвет аннотации" + +#: pseudocodediagram-da +msgid "Delete annotation" +msgstr "Удалить аннотацию" + +#: pseudocodediagram-ca +msgid "Create annotation" +msgstr "Создать аннотацию" + +#: pseudocodediagram-mdi +msgid "[Diagram info]" +msgstr "[Информация о диограмме]" + +#: pseudocodediagram-fstart +msgid " Function start: 0x%X" +msgstr " Начало функции: 0x%X" + +#: pseudocodediagram-fstop +msgid " Function stop: 0x%X" +msgstr " Конец функции: 0x%X" + +#: pseudocodediagram-dbc +msgid " Diagram blocks count: %d" +msgstr " Количество блоков: %d" + +#: pseudocodediagram-dlc +msgid " Diagram links count: %d" +msgstr " Количество ссылок: %d" + +#: pseudocodediagram-diagram +msgid "Diagram" +msgstr "Диаграмма" + +#: pseudocodediagram-sd +msgid "Spawn diagram" +msgstr "Породить диаграмму" \ No newline at end of file diff --git a/Cheat Engine/bin/languages/ru_RU/tutorial-x86_64.po b/Cheat Engine/bin/languages/ru_RU/tutorial-x86_64.po index 22710e0c..bbfa572f 100755 --- a/Cheat Engine/bin/languages/ru_RU/tutorial-x86_64.po +++ b/Cheat Engine/bin/languages/ru_RU/tutorial-x86_64.po @@ -1,945 +1,929 @@ -msgid "" -msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" -"Project-Id-Version: Tutorial v3.4 RU\n" -"Language-Team: SER[G]ANT \n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"X-Generator: Poedit 2.2\n" -"POT-Creation-Date: \n" -"PO-Revision-Date: \n" -"Last-Translator: \n" -"MIME-Version: 1.0\n" - -#: tform1.btnok.caption -msgctxt "tform1.btnok.caption" -msgid "OK" -msgstr "Подтвердить" - -#: tform1.button1.caption -msgctxt "tform1.button1.caption" -msgid "Next" -msgstr "Дальше" - -#: tform1.caption -msgid "Cheat Engine Tutorial v3.4" -msgstr "Учебное руководство v3.4" - -#: tform1.edtpassword.hint -msgid "Use this to go imeadiatly to the step you want to try" -msgstr "Введите пароль для немедленного перехода к нужному вам шагу" - -#: tform1.label1.caption -msgid "Password" -msgstr "Пароль" - -#: tform10.button3.caption -msgid "Restart game" -msgstr "Перезапуск игры" - -#: tform10.button4.caption -msgctxt "tform10.button4.caption" -msgid "Attack" -msgstr "Атака" - -#: tform10.button5.caption -msgctxt "TFORM10.BUTTON5.CAPTION" -msgid "Attack" -msgstr "Атака" - -#: tform10.button6.caption -msgctxt "tform10.button6.caption" -msgid "Restart game and autoplay" -msgstr "Случайная игра" - -#: tform10.button7.caption -msgctxt "TFORM10.BUTTON7.CAPTION" -msgid "Attack" -msgstr "Атака" - -#: tform10.button8.caption -msgctxt "TFORM10.BUTTON8.CAPTION" -msgid "Attack" -msgstr "Атака" - -#: tform10.caption -msgid "Step 9" -msgstr "Шаг 9" - -#: tform10.label10.caption -msgctxt "TFORM10.LABEL10.CAPTION" -msgid "Health: 500" -msgstr "Здоровье: 500" - -#: tform10.label2.caption -msgctxt "tform10.label2.caption" -msgid "Health:" -msgstr "Здоровье:" - -#: tform10.label3.caption -msgid "Player 1: Dave" -msgstr "Игрок 1: Дейв" - -#: tform10.label4.caption -msgctxt "tform10.label4.caption" -msgid "Health: 100" -msgstr "Здоровье: 100" - -#: tform10.label5.caption -msgid "Player 2: Eric" -msgstr "Игрок 2: Эрик" - -#: tform10.label6.caption -msgctxt "TFORM10.LABEL6.CAPTION" -msgid "Health: 100" -msgstr "Здоровье: 100" - -#: tform10.label7.caption -msgid "C. Player 3: HAL" -msgstr "Враг 1: Хал" - -#: tform10.label8.caption -msgctxt "tform10.label8.caption" -msgid "Health: 500" -msgstr "Здоровье: 500" - -#: tform10.label9.caption -msgid "C. Player 4: KITT" -msgstr "Враг 2: Китт" - -#: tform2.button1.caption -msgctxt "TFORM2.BUTTON1.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform2.button2.caption -msgctxt "tform2.button2.caption" -msgid "Hit me" -msgstr "Удар" - -#: tform2.caption -msgid "Step 2" -msgstr "Шаг 2" - -#: tform2.label2.caption -msgctxt "tform2.label2.caption" -msgid "Health:" -msgstr "Здоровье:" - -#: tform2.speedbutton1.caption -msgctxt "tform2.speedbutton1.caption" -msgid "Skip" -msgstr "Пропустить" - -#: tform3.button1.caption -msgctxt "TFORM3.BUTTON1.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform3.button2.caption -msgctxt "TFORM3.BUTTON2.CAPTION" -msgid "Hit me" -msgstr "Удар" - -#: tform3.caption -msgid "Step 3" -msgstr "Шаг 3" - -#: tform3.speedbutton1.caption -msgctxt "TFORM3.SPEEDBUTTON1.CAPTION" -msgid "Skip" -msgstr "Пропустить" - -#: tform4.button1.caption -msgctxt "TFORM4.BUTTON1.CAPTION" -msgid "OK" -msgstr "Подтвердить" - -#: tform4.caption -msgid "Tutorial End" -msgstr "Конец обучения" - -#: tform4.label1.caption -msgid "Well done, you've completed the tutorial of Cheat Engine." -msgstr "Поздравляю, вы успешно завершили все этапы обучения." - -#: tform4.label2.caption -msgid "Just play around with the tutorial and learn how the other scanmethods work." -msgstr "Теперь можете пройти их по новой, применяя другие правила поиска." - -#: tform4.label3.caption -msgid "And you can always check out the Cheat Engine Forum for useful information and ask for help" -msgstr "И вы всегда можете найти полезную информацию или обратиться за помощью на форуме Cheat Engine" - -#: tform4.label4.caption -msgid "Cheat Engine Forum" -msgstr "Форум Cheat Engine" - -#: tform5.button1.caption -msgid "Fire" -msgstr "Выстрел" - -#: tform5.button2.caption -msgctxt "TFORM5.BUTTON2.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform5.button3.caption -msgctxt "TFORM5.BUTTON3.CAPTION" -msgid "Hit me" -msgstr "Удар" - -#: tform5.caption -msgid "Step 4" -msgstr "Шаг 4" - -#: tform5.label2.caption -msgid "Ammo" -msgstr "Патроны" - -#: tform5.label3.caption -msgctxt "TFORM5.LABEL3.CAPTION" -msgid "Health:" -msgstr "Здоровье:" - -#: tform5.label5.caption -msgid "(float)" -msgstr "(float)" - -#: tform5.label6.caption -msgid "(double)" -msgstr "(double)" - -#: tform5.speedbutton1.caption -msgctxt "TFORM5.SPEEDBUTTON1.CAPTION" -msgid "Skip" -msgstr "Пропустить" - -#: tform6.button1.caption -msgctxt "tform6.button1.caption" -msgid "Change value" -msgstr "Изменить значение" - -#: tform6.button2.caption -msgctxt "TFORM6.BUTTON2.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform6.caption -msgid "Step 5" -msgstr "Шаг 5" - -#: tform6.speedbutton1.caption -msgctxt "TFORM6.SPEEDBUTTON1.CAPTION" -msgid "Skip" -msgstr "Пропустить" - -#: tform7.button1.caption -msgctxt "TFORM7.BUTTON1.CAPTION" -msgid "Change value" -msgstr "Изменить значение" - -#: tform7.button2.caption -msgctxt "TFORM7.BUTTON2.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform7.button3.caption -msgctxt "tform7.button3.caption" -msgid "Change pointer" -msgstr "Изменить указатель" - -#: tform7.caption -msgid "Step 6" -msgstr "Шаг 6" - -#: tform7.speedbutton1.caption -msgctxt "TFORM7.SPEEDBUTTON1.CAPTION" -msgid "Skip" -msgstr "Пропустить" - -#: tform8.button1.caption -msgctxt "TFORM8.BUTTON1.CAPTION" -msgid "Hit me" -msgstr "Удар" - -#: tform8.button2.caption -msgctxt "TFORM8.BUTTON2.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform8.caption -msgid "Step 7" -msgstr "Шаг 7" - -#: tform8.label1.caption -msgctxt "TFORM8.LABEL1.CAPTION" -msgid "Health: 100" -msgstr "Здоровье: 100" - -#: tform8.speedbutton1.caption -msgctxt "TFORM8.SPEEDBUTTON1.CAPTION" -msgid "Skip" -msgstr "Пропустить" - -#: tform9.button1.caption -msgctxt "TFORM9.BUTTON1.CAPTION" -msgid "Change value" -msgstr "Изменить значение" - -#: tform9.button2.caption -msgctxt "TFORM9.BUTTON2.CAPTION" -msgid "Next" -msgstr "Дальше" - -#: tform9.button3.caption -msgctxt "TFORM9.BUTTON3.CAPTION" -msgid "Change pointer" -msgstr "Изменить указатель" - -#: tform9.caption -msgid "Step 8" -msgstr "Шаг 8" - -#: tform9.speedbutton1.caption -msgctxt "TFORM9.SPEEDBUTTON1.CAPTION" -msgid "Skip" -msgstr "Пропустить" - -#: tfrmhelp.caption -msgid "Help" -msgstr "Помощь" - -#: tfrmhelp.image1.hint -msgid "More information like videos for this step and written tutorials" -msgstr "Дополнительная информация в виде видео или письменного руководства для этого шага." - -#: unit1.rsfirststeptoohardbettergiveupnow -msgid "First step too hard? Go to forum.cheatengine.org, then click on \"Tutorials\" for helpful guides!" -msgstr "Первый шаг слишком сложен? Зайдите на forum.cheatengine.org в раздел «Cheat Engine Tutorials», где вы можете найти много полезных руководств!" - -#: unit1.rstutorial1 -msgid "" -"Welcome to the Cheat Engine Tutorial (v3.4)\n" -"\n" -"This tutorial will teach you the basics of cheating in video games. It will also show you foundational aspects of using Cheat Engine (or CE for short). Follow the steps below to get started.\n" -"\n" -"1: Open Cheat Engine if it currently isn't running.\n" -"2: Click on the \"Open Process\" icon (it's the top-left icon with the computer on it, below \"File\".).\n" -"3: With the Process List window now open, look for this tutorial's process in the list. It will look something like \"00001F98-Tutorial-x86_64.exe\" or \"0000047C-Tutorial-i386.exe\". (The first 8 numbers/letters will probably be different.)\n" -"4: Once you've found the process, click on it to select it, then click the \"Open\" button. (Don't worry about all the other buttons right now. You can learn about them later if you're interested.)\n" -"\n" -"Congratulations! If you did everything correctly, the process window should be gone with Cheat Engine now attached to the tutorial (you will see the process name towards the top-center of CE).\n" -"\n" -"Click the \"Next\" button below to continue, or fill in the password and click the \"OK\" button to proceed to that step.)\n" -"\n" -"If you're having problems, simply head over to forum.cheatengine.org, then click on \"Tutorials\" to view beginner-friendly guides!\n" -msgstr "" -"Добро пожаловать в учебное руководство Cheat Engine (v3.4)\n" -"\n" -"Это учебное руководство научит вас основам читерства в видеоиграх. Оно также покажет вам основополагающие аспекты использования Cheat Engine. Выполните шаги ниже, чтобы начать обучение.\n" -"\n" -"1: Откройте Cheat Engine, если он не запущен в данный момент.\n" -"2: Нажмите на иконку «Выбор процесса для открытия» (иконка с изображением компьютера в верхнем левом углу, расположенная под «Файл».).\n" -"3: В окне «Список процессов» найдите и откройте процесс этого обучающего руководства. Он будет выглядеть как «00001F98-Tutorial-x86_64.exe» или «0000047C-Tutorial-i386.exe». (Первые 8 цифр/букв, скорее всего, будут отличаться.)\n" -"4: Как только вы нашли процесс, нажмите на него, чтобы его выделить, а затем нажмите на кнопку «Открыть». (Не обращайте сейчас внимания на другие кнопки. Вы можете узнать о них позднее, если вам будет интересно.)\n" -"\n" -"Поздравляю! Если вы всё сделали правильно, то окно с процессами, пропадёт, а Cheat Engine присоединиться к процессу обучающего руководства (вы увидите название процесса в верхней центральной части Cheat Engine).\n" -"\n" -"Нажмите на кнопку «Дальше» для продолжения или укажите пароль и нажмите «Подтвердить», чтобы приступить к определённому шагу.\n" -"\n" -"Если у вас возникли проблемы, просто зайдите на forum.cheatengine.org в раздел «Cheat Engine Tutorials», для просмотра руководств, ориентированных на новичков!\n" - -#: unit10.rsdead -msgid "DEAD" -msgstr "МЁРТВ" - -#: unit10.rsfailureyourteamdied -msgid "Failure. Your team died" -msgstr "Неудача. Ваша команда мертва" - -#: unit10.rshealth -msgid "Health: %s" -msgstr "Здоровье: %s" - -#: unit10.rsrestartgameandautoplay -msgctxt "unit10.rsrestartgameandautoplay" -msgid "Restart game and autoplay" -msgstr "Случайная игра" - -#: unit10.rsstep9sharedcodepw -msgid "Step 9: Shared code: (PW=%s)" -msgstr "Шаг 9: Совместно используемый код: (пароль=%s)" - -#: unit10.rsstop -msgid "Stop" -msgstr "Стоп" - -#: unit10.rsthisplayerisalreadydeadrestartthegame -msgid "This player is already dead. Restart the game" -msgstr "Этот игрок уже мёртв. Перезапустите игру" - -#: unit10.rstryagain10 -msgid "Can't figure out how to do this? Don't worry. Try asking in the forum at cheatengine.org or perhaps someone already explained it better there. Are you sure you want to quit?" -msgstr "" -"Не можете разобраться? Не беспокойтесь, попробуйте спросить об этом на форуме cheatengine.org или, возможно, там уже кто-то это подробно объяснил.\n" -"Вы уверены, что хотите выйти?" - -#: unit10.rstutorialstep9 -msgid "" -"This step will explain how to deal with code that is used for other object of the same type\n" -"\n" -"Often when you've found health of a unit or your own player, you will find that if you remove the code, it affects enemies as well.\n" -"In these cases you must find out how to distinguish between your and the enemies objects.\n" -"Sometimes this is as easy as checking the first 4 bytes (Function pointer table) which often point to a unique location for the player, and sometimes it's a team number, or a pointer to a pointer to a pointer to a pointer to a pointer to a playername. It all depends on the " -"complexity of the game, and your luck\n" -"\n" -"The easiest method is finding what addresses the code you found writes to and then use the dissect data feature to compare against two structures. (Your unit(s)/player and the enemies) And then see if you can find out a way to distinguish between them.\n" -"When you have found out how to distinguish between you and the computer you can inject an assembler script that checks for the condition and then either do not execute the code or do something else. (One hit kills for example)\n" -"Alternatively, you can also use this to build a so called \"Array of byte\" string which you can use to search which will result in a list of all your or the enemies players\n" -"In this tutorial I have implemented the most amazing game you will ever play.\n" -"It has 4 players. 2 Players belong to your team, and 2 Players belong to the computer. \n" -"Your task is to find the code that writes the health and make it so you win the game WITHOUT freezing your health\n" -"To continue, press \"Restart game and autoplay\" to test that your code is correct\n" -"\n" -"\n" -"Tip: Health is a float\n" -"Tip2: There are multiple solutions\n" -msgstr "" -"Этот шаг научит вас работать с инструкцией, которую используют несколько объектов одного и того же типа.\n" -"\n" -"Часто бывает так, что вы делаете что-либо с инструкцией, работающей со здоровьем вашего игрока и тоже самое происходит со здоровьем врагов.\n" -"В таких случаях вам необходимо выяснить, как можно отличить вашего игрока от врагов.\n" -"Иногда это так же просто, как проверка первых четырёх байт структуры (Таблица указателей на функции), которые часто указывают на уникальное расположение для игрока, а иногда это номер команды (id), в которой состоит игрок, или указатель на указатель на указатель на " -"указатель на указатель на имя_игрока. Всё зависит от сложности игры и вашей удачи.\n" -"\n" -"Самый лёгкий метод - узнать в какие адреса записывает инструкция, определить начала структур (Вашего объекта/персонажа и вражеских) и попытаться найти различия между ними, воспользовавшись функцией «Анализ данных/структур».\n" -"Когда вы узнали, как отличить вашего игрока от компьютера, вы можете выполнить инъекцию ассемблерного скрипта, в котором сначала сверяется условие (ваш ли это игрок/объект или вражеский), а затем либо просто выполняется оригинальный код, либо делается что-то ещё (например: " -"убийство с одного удара). Так же, вы можете использовать отличительные особенности структур для создания так называемой строки «Массива байт», поиск которой поможет найти структуры всех ваших или вражеских игроков/объектов.\n" -"\n" -"Специально для этого примера, я сделал самую классную игру из всех, в которые вы когда-либо играли. В ней присутствует 4 игрока: 2 игрока в вашей команде и 2 игрока в команде компьютера. Ваша задача состоит в том, чтобы найти инструкцию, которая пишет в адрес со значением " -"здоровья и выиграть игру БЕЗ замораживания здоровья ваших игроков.\n" -"Чтобы проверить работоспособность вашего скрипта, нажмите кнопку «Случайная игра»\n" -"\n" -"\n" -"Подсказка: Значение здоровья имеет тип Float\n" -"Подсказка 2: Данное задание можно решить несколькими способами.\n" - -#: unit10.rsu10thiswasthelasttutorial -msgid "This was the last tutorial and you skipped it. You lose" -msgstr "Это был последний шаг, а ты и его пропустил. Бездельник" - -#: unit2.rsawyouredeathletmereviveyou -msgctxt "unit2.rsawyouredeathletmereviveyou" -msgid "Aw, you're dead! Let me revive you" -msgstr "Вы умерли! Позвольте вас оживить." - -#: unit2.rsloser -msgctxt "unit2.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit2.rsquittingonstep2thisistheeasieststepthereisfindheal -msgid "Quitting on step2? This is the easiest step there is. Find health, change health, done.... Sure you want to quit?" -msgstr "" -"Сдаётесь уже сейчас? Это самый простой шаг из всех. Просто найдите значение здоровья, измените его и готово...\n" -"Вы уверены, что хотите выйти?" - -#: unit2.rsstep2exactvaluescanningpw -msgid "Step 2: Exact Value scanning (PW=" -msgstr "Шаг 2: Поиск точного значения (пароль=" - -#: unit2.rstutorialstep2 -msgid "" -"Now that you have opened the tutorial with Cheat Engine let's get on with the next step.\n" -"\n" -"You can see at the bottom of this window is the text Health: xxx\n" -"Each time you click 'Hit me' your health gets decreased.\n" -"\n" -"To get to the next step you have to find this value and change it to 1000\n" -"\n" -"To find the value there are different ways, but I'll tell you about the easiest, 'Exact Value':\n" -"First make sure value type is set to at least 2-bytes or 4-bytes. 1-byte will also work, but you'll run into an easy to fix problem when you've found the address and want to change it. The 8-byte may perhaps works if the bytes after the address are 0, but I wouldn't take " -"the bet.\n" -"Single, double, and the other scans just don't work, because they store the value in a different way.\n" -"\n" -"When the value type is set correctly, make sure the scantype is set to 'Exact Value'\n" -"Then fill in the number your health is in the value box. And click 'First Scan'\n" -"After a while (if you have a extremely slow pc) the scan is done and the results are shown in the list on the left\n" -"\n" -"If you find more than 1 address and you don't know for sure which address it is, click 'Hit me', fill in the new health value into the value box, and click 'Next Scan'\n" -"repeat this until you're sure you've found it. (that includes that there's only 1 address in the list.....)\n" -"\n" -"Now double click the address in the list on the left. This makes the address pop-up in the list at the bottom, showing you the current value.\n" -"Double click the value, (or select it and press enter), and change the value to 1000.\n" -"\n" -"If everything went ok the next button should become enabled, and you're ready for the next step.\n" -"\n" -"\n" -"Note:\n" -"If you did anything wrong while scanning, click \"New Scan\" and repeat the scanning again.\n" -"Also, try playing around with the value and click 'hit me'\n" -msgstr "" -"Теперь, когда у вас открыты Cheat Engine и это учебное руководство, вы можете приступить к следующему шагу.\n" -"\n" -"В нижней части окна вы можете увидеть текст «Здоровье: ххх»\n" -"Каждый раз, когда вы нажимаете на кнопку «Удар», здоровье будут уменьшаться.\n" -"\n" -"Чтобы перейти к следующему шагу, вам необходимо найти значение здоровья и изменить его на 1000\n" -"\n" -"Это значение можно найти различными способами, но я расскажу вам о самом простом, «Точное значение»:\n" -"Для начала выберите тип значения «2 Байта» или «4 Байта». «1 Байт» тоже сгодиться, но тогда вы не сможете изменить значение на «1000» (что можно легко исправить). Так же можно использовать и «8 Байт», но я не стал бы это делать.\n" -"Такие типы значения как «Float», «Double» и другие сейчас не сработают, т.к. в них значения хранятся по-другому.\n" -"\n" -"Теперь, когда тип значения был выбран правильно, убедитесь, что типом поиска указано «Точное значение».\n" -"Далее, укажите количество здоровья в поле «Значение» и нажмите кнопку «Поиск»\n" -"Через некоторое время (в зависимости от мощности вашего компьютера) поиск завершится, а его результаты появятся в виде списка, расположенного в левой части программы.\n" -"\n" -"Если в этом списке будет более одного адреса, и вы не знаете наверняка в каком из них хранится значение здоровья, то нажмите кнопку «Удар» ещё раз, введите новое значение здоровья в поле «Значение» и нажмите на кнопку «Отсев». Повторяйте данную процедуру пока не будете " -"уверены, что нашли нужный адрес. (или пока в списке не останется только 1 адрес...)\n" -"Теперь сделайте двойной клик по найденному адресу (или выделите его и нажмите клавишу «Enter») и поменяйте значение на 1000.\n" -"\n" -"Если всё сделано правильно, то вам станет доступна кнопка «Дальше» и вы сможете перейти к следующему шагу.\n" -"\n" -"Примечание:\n" -"Если вы допустили какую-либо ошибку при поиске, то нажмите на кнопку «Нов. поиск» и проделайте все действия ещё раз.\n" - -#: unit3.rsdead -msgid "Seems you've done it again! Let me get a replacement! (And restart your scan!)" -msgstr "Похоже, что полоска закончилась. Давайте я её восполню!" - -#: unit3.rsloser -msgctxt "unit3.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit3.rsstep3unknowninitialvaluepw -msgid "Step 3: Unknown initial value (PW=" -msgstr "Шаг 3: Неизвестное значение (пароль=" - -#: unit3.rstryagain3 -msgid "Step 3 isn't really that hard. Just do a new scan, unkown initial value and then decreased value till you find it. Almost everyone gets past this one. Sure you want to quit?" -msgstr "" -"Этот шаг на самом деле не так сложен. Просто начните с поиска неизвестного значения, нажимайте на кнопку «Удар» и производите отсев по правилу «Значение уменьшилось» до тех пор, пока не найдёте нужный адрес. Любой может справиться с этим.\n" -"Вы уверены, что хотите выйти?" - -#: unit3.rstutorialstep3 -msgid "" -"Ok, seeing that you've figured out how to find a value using exact value let's move on to the next step.\n" -"\n" -"First things first though. Since you are doing a new scan, you have to click on New Scan first, to start a new scan. (You may think this is straighforward, but you'd be surprised how many people get stuck on that step) I won't be explaining this step again, so keep this in " -"mind\n" -"Now that you've started a new scan, let's continue\n" -"\n" -"In the previous test we knew the initial value so we could do a exact value, but now we have a status bar where we don't know the starting value.\n" -"We only know that the value is between 0 and 500. And each time you click 'hit me' you lose some health. The amount you lose each time is shown above the status bar.\n" -"\n" -"Again there are several different ways to find the value. (like doing a decreased value by... scan), but I'll only explain the easiest. \"Unknown initial value\", and decreased value.\n" -"Because you don't know the value it is right now, a exact value wont do any good, so choose as scantype 'Unknown initial value', again, the value type is 4-bytes. (most windows apps use 4-bytes)click first scan and wait till it's done.\n" -"\n" -"When it is done click 'hit me'. You'll lose some of your health. (the amount you lost shows for a few seconds and then disappears, but you don't need that)\n" -"Now go to Cheat Engine, and choose 'Decreased Value' and click 'Next Scan'\n" -"When that scan is done, click hit me again, and repeat the above till you only find a few. \n" -"\n" -"We know the value is between 0 and 500, so pick the one that is most likely the address we need, and add it to the list.\n" -"Now change the health to 5000, to proceed to the next step.\n" -msgstr "" -"Хорошо, видимо вы разобрались с поиском точного значения, что позволило нам приступить к следующему шагу.\n" -"\n" -"Вначале о самом важном. Поскольку вы делаете новый поиск, то первым делом вам нужно нажать на кнопку \"Нов. поиск\", для того чтобы его начать (Вы можете подумать: «Это же очевидно». Но вы были бы удивлены, узнав как много людей застревает на этом шаге). Я не буду объяснять " -"это снова, поэтому имейте это в виду.\n" -"Теперь, когда вы начали новый поиск, давайте продолжим.\n" -"\n" -"В предыдущем шаге мы точно знали начальное значение, поэтому мы могли произвести поиск «Точного значения», но сейчас у нас есть только полоска, без каких-либо чисел.\n" -"Всё что нам известно, так это то, что значение находится в диапазоне от 0 до 500. И каждый раз, после нажатия на кнопку «Удар», теряется часть здоровья. Сколько именно - отображается над полоской.\n" -"\n" -"И тут есть несколько способов найти значение (например: выполняя отсев по правилу «Значение уменьшилось на...»), но я объясню вам самое простое. Будут использованы только два типа поиска - «Неизвестное значение» и «Значение уменьшилось».\n" -"Т.к прямо сейчас значение нам не известно, то от поиска «Точного значения» не будет никакой пользы, поэтому выберите «Неизвестное значение», а тип, как и в прошлый раз, «4 Байта» (большинство приложений в Windows используют именно этот тип данных).\n" -"Нажмите на кнопку «Поиск» и ждите его завершения.\n" -"\n" -"После завершения поиска нажмите на кнопку «Удар». Часть здоровья теряется (Потерянное количество будет отображаться над полоской в течении нескольких секунд, а затем исчезнет, но нам это значение и не нужно).\n" -"Теперь возвращайтесь в Cheat Engine, выберите «Значение уменьшилось» и нажмите «Отсев».\n" -"После завершения отсева снова нажмите на кнопку «Удар» и снова сделайте отсев по правилу «Значение уменьшилось». Повторяйте эти действия пока в списке не окажется один или чуть более адресов.\n" -"\n" -"Итак, нам известно, что значение находится в диапазоне от 0 до 500, поэтому, если в списке найденных адресов находится более одного адреса, то выберите более подходящий к данному диапазону и добавьте его в таблицу.\n" -"Изменение значения этого адреса на 5000 позволит вам перейти к следующему шагу.\n" - -#: unit5.rsconfirmclose5 -msgid "Come on. This step is simple. For health do a float scan, and for ammo a double type. (don't forget to disable fastscan for double in this case) Just ignore the fact that it looks different because it has a \".\" in the value. You sure you want to quit?" -msgstr "" -"Да ладно, это же просто. Выполняйте поиск, используя тип данных «Float» для нахождения значения здоровья и «Double» для патрон. (Не забудьте отключить «Быстрый поиск» при поиске «Double» значения).\n" -"Вы уверены, что хотите выйти?" - -#: unit5.rsdead -msgid "I think you're dead!%sPress ok to become a brain eating zombie" -msgstr "Я думаю, вы умерли!%s Нажмите «Подтвердить», чтобы стать зомби, пожирающим мозги" - -#: unit5.rsloser -msgctxt "unit5.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit5.rsoutofammo -msgid "Out of ammo!%sPress ok to stock up on some ammo" -msgstr "Патроны закончились!%s Нажмите «Подтвердить» для пополнения" - -#: unit5.rsstep4floatingpointspw -msgid "Step 4: Floating points (PW=" -msgstr "Шаг 4: Числа с плавающей точкой (пароль=" - -#: unit5.rstutorialstep4 -msgid "" -"In the previous tutorial we used bytes to scan, but some games store information in so called 'floating point' notations. \n" -"(probably to prevent simple memory scanners from finding it the easy way)\n" -"a floating point is a value with some digits behind the point. (like 5.12 or 11321.1)\n" -"\n" -"Below you see your health and ammo. Both are stored as Floating point notations, but health is stored as a float and ammo is stored as a double.\n" -"Click on hit me to lose some health, and on shoot to decrease your ammo with 0.5\n" -" \n" -"You have to set BOTH values to 5000 or higher to proceed.\n" -"\n" -"Exact value scan will work fine here, but you may want to experiment with other types too.\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"Hint: It is recommended to disable \"Fast Scan\" for type double\n" -msgstr "" -"В предыдущем шаге мы искали только целые числа, но некоторые игры хранят значения в виде так называемого «числа с плавающей точкой» (вероятно, чтобы усложнить поиск для простых сканеров памяти). Число с плавающей точкой - это значение с некими цифрами после точки (например: " -"5.12 или 11321.1)\n" -"\n" -"В нижней части окна вы можете видеть количество вашего здоровья и патрон. Значения обоих из них хранятся в виде чисел с плавающей точкой, но значение здоровья хранится как Float, а патрон - как Double.\n" -"При нажатии на кнопку «Удар» вы утратите часть здоровья, а при нажатии на кнопку «Выстрел» количество патрон уменьшится на 0.5\n" -"\n" -"Чтобы перейти к следующему шагу, вам нужно изменить значение обоих параметров на 5000 или больше.\n" -"\n" -"В этом случае, вам просто нужно искать и отсеивать «Точное значение», но, чисто для своего развития, вы можете поиграться и с другими типами поиска («Диапазон», «Значение уменьшилось на...», «Больше чем...» «Значение не изменилось» и т.д.)\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"Подсказка: Рекомендуется отключить «Быстрый поиск» при поиске значения с типом «Double»\n" - -#: unit6.rsloser -msgctxt "unit6.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit6.rsstep5codefinderpw -msgid "Step 5: Code finder (PW=%s)" -msgstr "Шаг 5: Нахождение и подмена кода (пароль=%s)" - -#: unit6.rstryagain6 -msgid "This may look difficult. but it's basicly. Find health, rigthclick health, find what writes, change health, click replace, change health, done. But don't feel down if you don't get it. at least you know the basicas of memory scanning... Are you sure you want to quit?" -msgstr "" -"Это может показаться трудным, но это основа всего. Найдите адрес со значением здоровья, нажмите «Найти инструкции, записывающие по этому адресу», измените значение здоровья, нажмите «Заменить NOP'ами», снова измените значение здоровья - готово. Не расстраивайтесь, если у " -"вас не получится. Как минимум, вы знаете основы поиска в памяти...\n" -"Вы уверены, что хотите выйти?" - -#: unit6.rstutorialstep5 -msgid "" -"Sometimes the location of a value is stored at changes, when you restart the game, or even while you're playing.. In that case you can use 2 things to still make a table that works.\n" -"In this step I'll try to describe how to use the Code Finder function.\n" -"\n" -"The value down here will be at a different location each time you start the tutorial, so a normal entry in the address list wouldn't work.\n" -"First try to find the address. (you've got to this point so I assume you know how to)\n" -"When you've found the address, right-click the address in Cheat Engine and choose \"Find out what writes to this address\". A window will pop up with an empty list.\n" -"Then click on the Change value button in this tutorial, and go back to Cheat Engine. If everything went right, there should be an address with assembler code there now.\n" -"Click it and choose the replace option to replace it with code that does nothing. That will also add the code address to the code list in the advanced options window. (Which gets saved if you save your table)\n" -"\n" -"Click on stop, so the game will start running normal again, and close to close the window.\n" -"Now, click on Change value, and if everything went right the Next button should become enabled.\n" -"\n" -"Note: When you're freezing the address with a high enough speed it may happen that next becomes visible anyhow\n" -msgstr "" -"Иногда найденные вами адреса, с какими-либо значениями, меняются при перезапуске игры или даже во время самой игры. В таком случае, вы можете воспользоваться несколькими способами для создания рабочей таблицы.\n" -"\n" -"В этом шаге я расскажу об одном таком способе - нахождение и подмена кода.\n" -"Адрес со значением, расположенным ниже, будет меняться при каждом перезапуске этой обучающей программы, поэтому просто нахождение адреса нам не поможет, т.к. в следующий раз он будет другим.\n" -"\n" -"Чтобы пройти этот шаг, нам нужно с помощью подмены кода сделать так, чтобы при нажатии на кнопку «Изменить значение» значение оставалось прежним.\n" -"\n" -"Для начала попробуйте найти адрес. (Думаю, к этому моменту, вы уже знаете как это сделать)\n" -"После того как вы нашли нужный адрес и добавили его в таблицу, нажмите на него правой кнопкой мыши, выберите и нажмите «Найти инструкции, записывающие по этому адресу». Откроется окно «Следующие инструкции записывают в ххххх» с пустым списком.\n" -"Теперь нажмите кнопку «Изменить значение» в этой обучающей программе, а затем снова вернитесь в Cheat Engine. Если всё сделано правильно, то в списке появится адрес с ассемблерной инструкцией.\n" -"Выделите её и нажмите на кнопку «Заменить NOP'ами», которая заменит выбранную инструкцию на NOP (NOP - инструкция процессора на языке ассемблера, которая предписывает ничего не делать), а также добавит адрес с этой инструкцией в список кодов, которые расположены в окне " -"«Дополнительные возможности». Если вы сохраните таблицу, то и этот список будет сохранён вместе с ней.\n" -"\n" -"Нажмите на кнопку «Остановить» и закройте окно «Следующие инструкции записывают в ххххх».\n" -"Теперь нажмите на кнопку «Изменить значение» и, если всё сделано правильно, кнопка «Дальше» станет доступна.\n" -"\n" -"Примечание: Если вы заморозите адрес с достаточно высоким интервалом заморозки, то может случится так, что кнопка «Дальше» также станет доступна\n" - -#: unit6.rswelldoneyouscrewedupthetutorial -msgctxt "unit6.rswelldoneyouscrewedupthetutorial" -msgid "Well done, you screwed up the tutorial!!!!" -msgstr "Отлично! Вы справились с заданием!!!!" - -#: unit7.rsdontfuckingfreezethepointer -msgid "I'm sorry, but freezing the pointer is not really a functional solution" -msgstr "Простите, но заморозка указателя - это не совсем функциональное решение." - -#: unit7.rsloser -msgctxt "unit7.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit7.rsstep6pointerspw -msgid "Step 6: Pointers: (PW=%s)" -msgstr "Шаг 6: Указатели: (пароль=%s)" - -#: unit7.rstryagain7 -msgid "So, pointers are too difficult eh? Don't worry, try again later. For most beginners this is difficult to grasp. But I have to tell you it's a powerfull feature if you learn to use it. Are you sure you want to quit?" -msgstr "" -"Неужели указатели так сложны? Не волнуйтесь, попробуйте ещё раз позже. Большинству новичкам трудно понять это сразу. Однако, указатели откроют большие возможности, если вы научитесь ими пользоваться.\n" -"Вы уверены, что хотите выйти?" - -#: unit7.rstutorialstep6 -msgid "" -"In the previous step I explained how to use the Code finder to handle changing locations. But that method alone makes it difficult to find the address to set the values you want.\n" -"That's why there are pointers:\n" -"\n" -"At the bottom you'll find 2 buttons. One will change the value, and the other changes the value AND the location of the value.\n" -"For this step you don't really need to know assembler, but it helps a lot if you do.\n" -"\n" -"First find the address of the value. When you've found it use the function to find out what accesses this address.\n" -"Change the value again, and a item will show in the list. Double click that item. (or select and click on more info) and a new window will open with detailed information on what happened when the instruction ran.\n" -"If the assembler instruction doesn't have anything between a '[' and ']' then use another item in the list.\n" -"If it does it will say what it think will be the value of the pointer you need.\n" -"Go back to the main cheat engine window (you can keep this extra info window open if you want, but if you close it, remember what is between the [ and ] ) and do a 4 byte scan in hexadecimal for the value the extra info told you.\n" -"When done scanning it may return 1 or a few hundred addresses. Most of the time the address you need will be the smallest one. Now click on the "Add Address Manually" button and select the pointer checkbox.\n" -"\n" -"The window will change and allow you to type in the address of a pointer and a offset.\n" -"Fill in as address the address you just found.\n" -"If the assembler instruction has a calculation (e.g: [esi+12]) at the end then type the value in that's at the end. else leave it 0. If it was a more complicated instruction look at the calculation.\n" -"\n" -"example of a more complicated instruction:\n" -"[EAX*2+EDX+00000310] eax=4C and edx=00801234.\n" -"In this case EDX would be the value the pointer has, and EAX*2+00000310 the offset, so the offset you'd fill in would be 2*4C+00000310=3A8. (this is all in hex, use calc.exe from windows in scientific mode to calculate)\n" -"\n" -"Back to the tutorial, click OK and the address will be added, If all went right the address will show P->xxxxxxx, with xxxxxxx being the address of the value you found. If thats not right, you've done something wrong.\n" -"Now, change the value using the pointer you added in 5000 and freeze it. Then click Change pointer, and if all went \n" -"right the next button will become visible.\n" -"\n" -"\n" -"extra:\n" -"And you could also use the pointer scanner to find the pointer to this address\n" -msgstr "" -"В предыдущем шаге мы научились замораживать значение динамического адреса при помощи подмены кода, но тот метод не позволяет изменять само значение адреса когда захотим.\n" -"Вот почему есть указатели:\n" -"Внизу вы видите две кнопки. Одна изменяет значение, а другая изменяет и само значение, и адрес в котором оно хранится.\n" -"На данном этапе знание ассемблера не обязательно, но оно бы вам очень помогло.\n" -"\n" -"Для начала найдите адрес со значением. После того как вы его нашли и добавили в таблицу, нажмите на него правой кнопкой мыши и выберите и нажмите «Найти инструкции, обращающиеся к этому адресу», чтобы найти ассемблерные инструкции, которые получают доступ к этому адресу. " -"Теперь измените значение нажатием кнопки «Изменить значение» в обучающей программе и, в появившимся окне Cheat Engine, вы увидите список с ассемблерными инструкциями. Сделайте двойной клик по одной из них (или выделите инструкцию и нажмите на кнопку «Дополнительная " -"информация») и появится новое окно с детальной информацией о том, что произошло при срабатывании этой инструкции.\n" -"\n" -"Если в ассемблерной инструкции нет квадратных скобок «[» и «]», то выберите другую инструкцию из списка, где они присутствуют.\n" -"Теперь нажмите на кнопку «Дополнительная информация» и скопируйте значение, указанное в «Вероятное значение указателя, нужное для нахождения этого адреса:»\n" -"\n" -"Вернитесь в главное окно Cheat Engine и начните поиск значения, которое вы скопировали из «Вероятное значение указателя, нужное для нахождения этого адреса:» или чуть ниже, где отображено состояние регистров (если инструкция имеет вид «mov [edx],eax», то смотрите состояние " -"регистра edx). Выберите тип данных «4 Байта» и поставьте галочку напротив «Hex», т.к. это значение отображено в шестнадцатеричном виде. Поиск может завершится нахождением одного или нескольких сотен адресов. В большинстве случаев, адресов находится не очень много. Теперь " -"нажмите на кнопку «Добавить адрес» и, в появившемся окне, поставьте галочку напротив «Указатель».\n" -"\n" -"Окно добавления адреса изменится и мы можем заполнить указатель и смещение.\n" -"В качестве адреса укажите только что найденный адрес.\n" -"Если ассемблерная инструкция выполняет некие вычисления (например: [esi+12]), то в качестве смещения укажите число 12, в противном случае (если просто [esi]) оставьте 0.\n" -"Ассемблерная инструкция может иметь и более сложные вычисления.\n" -"\n" -"Например:\n" -"[EAX*2+EDX+00000310], где eax=4C, а edx=00801234.\n" -"В данном случае, «EDX» будет хранить значение указателя, а «EAX*2+00000310» будет хранить смещение, которое можно узнать, выполнив вычисление при помощи Windows-калькулятора в инженерном режиме (2*4C+00000310=3A8).\n" -"(На системах выше Windows XP, вместо инженерного режима, нужно использовать режим программиста.)\n" -"\n" -"Но вернёмся обратно к нашему уроку.\n" -"В окне «Добавить адрес» вы уже ввели указатель и смещение, поэтому нажмите кнопку «Подтвердить». В таблицу Cheat Engine добавится адрес, который будет отображен в виде «У-> xxxxxxx», где «xxxxxxx» - текущий адрес со значением. Если значение этого адреса отличается, то вы " -"сделали что-то не правильно.\n" -"Теперь измените значение добавленного вами адреса на 5000 и заморозьте его. Если всё сделано правильно, то после нажатия на кнопку «Изменить указатель» станет доступна кнопка «Дальше».\n" -"\n" -"\n" -"Дополнение:\n" -"Вы также можете воспользоваться сканером указателей («Редактор памяти» -> «Инструменты» -> «Сканирование указателей»), чтобы найти указатель на этот адрес.\n" - -#: unit7.rswelldoneyouscrewedupthetutorial -msgctxt "unit7.rswelldoneyouscrewedupthetutorial" -msgid "Well done, you screwed up the tutorial!!!!" -msgstr "Отлично! Вы справились с заданием!!!!" - -#: unit7.rsyouvegotsecondslefttochangethevalueto5000 -msgid "You have %s second%s left to change the value to 5000" -msgstr "У вас есть %s секунд, чтобы изменить значение на 5000" - -#: unit8.rsawyouredeathletmereviveyou -msgctxt "unit8.rsawyouredeathletmereviveyou" -msgid "Aw, you're dead! Let me revive you" -msgstr "Вы умерли! Позвольте вас оживить" - -#: unit8.rshealth -msgid "Health" -msgstr "Здоровье" - -#: unit8.rsloser -msgctxt "unit8.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit8.rsstep7codeinjectionpw -msgid "Step 7: Code Injection: (PW=%s)" -msgstr "Шаг 7: Инъекция кода: (пароль=%s)" - -#: unit8.rstryagain8 -msgid "Code injections too tough? No problem, memory scanning and basic pointers should be enough to get you experienced enough and you can always try the tutorial later. Are you sure you want to quit?" -msgstr "" -"Инъекция кода кажется слишком трудной? Не беда, умение находить значения и простые указатели говорит о том, что вы уже достаточно опытны, и вы всегда можете попытаться пройти этот шаг ещё раз.\n" -"Вы уверены, что хотите выйти?" - -#: unit8.rstutorialstep7 -msgid "" -"Code injection is a technique where you inject a piece of code into the target process, and then reroute the execution of code to go through your own written code.\n" -"\n" -"In this tutorial you'll have a health value and a button that will decrease your health by 1 each time you click it.\n" -"Your task is to use code injection to make the button increase your health by 2 each time it is clicked\n" -"\n" -"Start with finding the address and then find what writes to it.\n" -"then when you've found the code that decreases it browse to that address in the disassembler, and open the auto assembler window (ctrl+a)\n" -"There click on template and then code injection, and give it the address that decreases health (If it isn't already filled in correctly)\n" -"That will generate a basic auto assembler injection framework you can use for your code.\n" -"\n" -"Notice the alloc, that will allocate a block of memory for your code cave, in the past, in the pre windows 2000 systems, people had to find code caves in the memory(regions of memory unused by the game), but that's luckily a thing of the past since windows 2000, and will " -"these days cause errors when trying to be used, due to SP2 of XP and the NX bit of new CPU's\n" -"\n" -"Also notice the line newmem: and originalcode: and the text \"Place your code here\"\n" -"As you guessed it, write your code here that will increase the health with 2.\n" -"An usefull assembler instruction in this case is the \"ADD instruction\"\n" -"here are a few examples:\n" -"\"ADD [00901234],9\" to increase the address at 00901234 with 9\n" -"\"ADD [ESP+4],9\" to increase the address pointed to by ESP+4 with 9\n" -"In this case, you'll have to use the same thing between the brackets as the original code has that decreases your health\n" -"\n" -"Notice:\n" -"It is recommended to delete the line that decreases your health from the original code section, else you'll have to increase your health with 3 (you increase with 3, the original code decreases with 1, so the end result is increase with 2), which might become confusing. But " -"it's all up to you and your programming.\n" -"\n" -"Notice 2:\n" -"In some games the original code can exist out of multiple instructions, and sometimes, not always, it might happen that a code at another place jumps into your jump instruction end will then cause unknown behavior. If that happens, you should usually look near that " -"instruction and see the jumps and fix it, or perhaps even choose to use a different address to do the code injection from. As long as you're able to figure out the address to change from inside your injected code.\n" -msgstr "" -"Инъекция кода - это метод, при котором в выбранный процесс программы добавляется кусок кода с перенаправлением выполнения оригинального кода через добавленный вами код.\n" -"\n" -"На этом шаге у вас есть значение здоровья и кнопка для его уменьшения на 1.\n" -"Ваша задача состоит в том, чтобы использовать инъекцию кода для увеличения значения здоровья на 2 при каждом нажатии на кнопку «Удар».\n" -"\n" -"Начните с нахождения адреса, который хранит значение здоровья, затем узнайте какие ассемблерные инструкции его уменьшают. Для этого нажмите «Найти инструкции, записывающие по этому адресу» на найденный адрес, а затем на кнопку «Удар».\n" -"Когда вы нашли нужную инструкцию, перейдите в дизассемблер и откройте окно «Автоассемблер» нажатием сочетания клавиш Ctrl+A (или через меню «Инструменты» -> «Автоассемблер»).\n" -"Теперь нажмите на меню «Шаблон» -> «Инъекция кода» и в появившимся окне укажите адрес, по которому расположена ассемблерная инструкция, уменьшающая здоровье (Если правильный адрес ещё не заполнен, т.к. Cheat Engine автоматически указывает в этой строке адрес выделенной в " -"отладчике ассемблерной инструкции). Сгенерируется шаблон базового скрипта для инъекции, который вы можете использовать для добавления вашего кода.\n" -"\n" -"Обратите внимание на директиву «alloc», которая выделяет блок памяти под ваш код. Когда-то давно, ещё до выхода системы Windows 2000, людям приходилось самостоятельно находить неиспользуемую область памяти (так называемый «code cave») в игре, чтобы внедрить в неё свой код, " -"но, к счастью, всё это осталось в прошлом. В наши дни, вследствие выхода Сервис Пака 2 для Windows XP и технологии NX-Bit у новых процессоров, использование «code cave» может привести к различным ошибкам.\n" -"Также обратите внимание на строки «newmem:», «originalcode:» и надпись «place your code here»\n" -"Как вы уже догадались, именно там, где находится эта надпись, и нужно ввести наш код, который будет увеличивать значение здоровья на «2».\n" -"Для этого нам на нужно воспользоваться арифметической командой «ADD»\n" -"Вот пару примеров:\n" -"«ADD [00901234],9» - прибавляет число 9 к значению по адресу 00901234 \n" -"«ADD [ESP+4],9» - прибавляет число 9 к значению по адресу, на который указывает ESP+4\n" -"В нашем случае, в качестве адреса нужно использовать тот же адрес, что находится между скобками в оригинальной ассемблерной инструкции, уменьшающей здоровье.\n" -"Примечание:\n" -"В этом случае, в асвтоассемблере рекомендуется удалить из секции «originalcode:» оригинальную инструкцию, уменьшающую здоровье. Иначе вам придётся увеличивать значение здоровья на 3 (Вы увеличиваете значение здоровья на 3, оригинальная инструкция уменьшает это значение на " -"1, в конечном итоге, значение увеличится на 2), что может вас немного запутать. Но всё это зависит только от вас и вашего уровня программирования.\n" -"\n" -"Примечание 2:\n" -"В некоторых играх ассемблерный код, выполняющий действие с каким-либо значением в игре, может состоять из нескольких частей, находящихся в разных местах. И если вы сделаете инъекцию в такой код, то иногда, правда редко, это может привести к тому, что код из другого места " -"прыгнет в конец поставленного вами прыжка, на ваш «code cave», в котором расположен ваш чит, что может привести к непредсказуемым действиям. В таких случаях необходимо просмотреть код рядом с тем местом, куда вы делаете инъекцию, проверить все переходы и поправить их или " -"попробовать использовать другую инструкцию, находящуюся рядом, для выполнения инъекции.\n" - -#: unit9.rsloser -msgctxt "unit9.rsloser" -msgid "BOO" -msgstr "БУ!" - -#: unit9.rsstep8multilevelpointerspw -msgid "Step 8: Multilevel pointers: (PW=%s)" -msgstr "Шаг 8: Многоуровневые указатели: (пароль=%s)" - -#: unit9.rstryagain9 -msgid "Aw, you've almost reached the end. But don't worry, multilevel pointers can be a real pain when dealing with. If you get more experienced someday you can try it again. Are you sure you want to quit?" -msgstr "" -"Эх, вы ведь почти подошли к концу обучения... Но не волнуйтесь, когда дело доходит до многоуровневых указателей - это может быть реальной головной болью. Однажды вы станете намного опытнее и сможете попытаться пройти этот шаг ещё раз.\n" -"Вы действительно хотите выйти?" - -#: unit9.rstutorialstep8 -msgid "" -"This step will explain how to use multi-level pointers.\n" -"In step 6 you had a simple level-1 pointer, with the first address found already being the real base address.\n" -"This step however is a level-4 pointer. It has a pointer to a pointer to a pointer to a pointer to a pointer to the health.\n" -"\n" -"You basicly do the same as in step 6. Find out what accesses the value, look at the instruction and what probably is the base pointer value, and what is the offset, and already fill that in or write it down. But in this case the address you'll find will also be a pointer. " -"You just have to find out the pointer to that pointer exactly the same way as you did with the value. Find out what accesses that address you found, look at the assembler instruction, note the probable instruction and offset, and use that.\n" -"and continue till you can't get any further (usually when the base address is a static address, shown up as green)\n" -"\n" -"Click Change Value to let the tutorial access the health.\n" -"If you think you've found the pointer path click Change Register. The pointers and value will then change and you'll have 3 seconds to freeze the address to 5000\n" -"\n" -"Extra: This problem can also be solved using a auto assembler script, or using the pointer scanner\n" -"Extra2: In some situations it is recommended to change ce's codefinder settings to Access violations when \n" -"Encountering instructions like mov eax,[eax] since debugregisters show it AFTER it was changed, making it hard to find out the the value of the pointer\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"Extra3: If you're still reading. You might notice that when looking at the assembler instructions that the pointer is being read and filled out in the same codeblock (same routine, if you know assembler, look up till the start of the routine). This doesn't always happen, " -"but can be really useful in finding a pointer when debugging is troublesome\n" -msgstr "" -"Этот шаг научит вас нахождению многоуровневых указателей.\n" -"В «Шаг 6» у вас был простой одноуровневый указатель, первый же найденный адрес и был реальным базовым адресом.\n" -"В этом шаге вы будете иметь дело с четырёхуровневым указателем, т.е. указатель на указатель на указатель на указатель на указатель адреса здоровья.\n" -"\n" -"В основном, вам нужно делать всё тоже самое, что и в «Шаг 6». Найдите адрес с нижеуказанным значением, нажмите «Найти инструкции, обращающиеся к этому адресу», измените значение с помощью кнопки «Изменить значение», взгляните на всплывшие инструкции, узнайте вероятное " -"значение указателя и смещение (последнее нужно запомнить или где-нибудь записать). Начните новый поиск, использовав предполагаемое значение указателя (не забудьте поставить галочку напротив «Hex»).\n" -"Вы нашли адрес. В данном случае, т.к. имеем дело с многоуровневым указателем, найденный адрес так же будет являться указателем. Теперь, аналогичным образом, вам нужно найти указатель на этот указатель. Поставьте на только что найденный адрес «Найти инструкции, обращающиеся " -"к этому адресу», измените значение, взгляните на всплывшие инструкции... И этот найденный адрес будет являться указателем на указатель. Продолжайте поиск, повторяя те же действия (не забывая запоминать/записывать смещения и их последовательность), пока в списке найденных " -"адресов не появится адрес, окрашенный в зелёный цвет.\n" -"Теперь нажмите в Cheat Engine на кнопку «Добавить адрес» и поставьте галку напротив «Указатель». В нижнем поле ввода укажите найденный адрес, окрашенный в зелёный цвет, а чуть выше укажите смещения (сверху вниз) в той последовательности, в которой вы их находили. В конечном " -"итоге, у вас в таблице появится адрес вида «У-> xxxxxxx».\n" -"\n" -"Теперь измените значение адреса «У-> xxxxxxx» на 5000, заморозьте его и нажмите кнопку «Изменить указатель». Если вы нашли верную цепочку указателей, то кнопка «Дальше» станет доступна.\n" -"\n" -"Дополнение: Для решения этого шага можно воспользоваться и сканером указателей, для автоматического нахождения многоуровневого указателя, или вообще не искать их, а написать скрипт автоассемблера.\n" -"Дополнение 2: В некоторых ситуациях, когда вы имеете дело с инструкциями вида mov eax,[eax], рекомендуется изменить настройки «Определителя кода» на «Нарушение доступа», т.к. состояние регистров отладчика показывается только ПОСЛЕ выполнения инструкции, затрудняя поиск " -"указателя\n" -"\n" -"\n" -"\n" -"\n" -"\n" -"Дополнение 3: Если вы всё ещё читаете. Вы можете заметить, что ассемблерные инструкции, считающие значение указателя и те, что заполняют это значение, находятся в одном и том же сегменте кода (в одном цикле кода, если вы знаете ассемблер - поищите начало этого цикла). Такая " -"ситуация возникает не всегда, но может быть очень полезна при нахождении указателя, если отладка затруднена.\n" - -#: unit9.rsunrandomizerdetected -msgid "Unrandomizer detected" -msgstr "Обнаружен «Антирандомайзер»" - -#: unit9.rsyouvegotsecondslefttochangethevalueto5000 -msgid "You've got %s seconds left to change the value to 5000" -msgstr "У вас есть %s секунд, чтобы изменить значение на 5000" +msgid "" +msgstr "" +"Project-Id-Version: Tutorial v3.6 RU\n" +"POT-Creation-Date: \n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: SER[G]ANT \n" +"Language: ru_RU\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.4.2\n" + +#: tform1.btnok.caption +msgctxt "tform1.btnok.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tform1.button1.caption +msgctxt "tform1.button1.caption" +msgid "Next" +msgstr "Дальше" + +#: tform1.edtpassword.hint +msgid "Use this to go imeadiatly to the step you want to try" +msgstr "Введите пароль для немедленного перехода к нужному вам шагу" + +#: tform1.label1.caption +msgid "Password" +msgstr "Пароль" + +#: tform10.button3.caption +msgid "Restart game" +msgstr "Перезапуск игры" + +#: tform10.button4.caption +msgctxt "tform10.button4.caption" +msgid "Attack" +msgstr "Атака" + +#: tform10.button5.caption +msgctxt "tform10.button5.caption" +msgid "Attack" +msgstr "Атака" + +#: tform10.button6.caption +msgctxt "tform10.button6.caption" +msgid "Restart game and autoplay" +msgstr "Случайная игра" + +#: tform10.button7.caption +msgctxt "tform10.button7.caption" +msgid "Attack" +msgstr "Атака" + +#: tform10.button8.caption +msgctxt "tform10.button8.caption" +msgid "Attack" +msgstr "Атака" + +#: tform10.caption +msgid "Step 9" +msgstr "Шаг 9" + +#: tform10.label10.caption +msgctxt "tform10.label10.caption" +msgid "Health: 500" +msgstr "Здоровье: 500" + +#: tform10.label2.caption +msgctxt "tform10.label2.caption" +msgid "Health:" +msgstr "Здоровье:" + +#: tform10.label3.caption +msgid "Player 1: Dave" +msgstr "Союзник1" + +#: tform10.label4.caption +msgctxt "tform10.label4.caption" +msgid "Health: 100" +msgstr "Здоровье: 100" + +#: tform10.label5.caption +msgid "Player 2: Eric" +msgstr "Союзник2" + +#: tform10.label6.caption +msgctxt "tform10.label6.caption" +msgid "Health: 100" +msgstr "Здоровье: 100" + +#: tform10.label7.caption +msgid "C. Player 3: HAL" +msgstr "Враг1" + +#: tform10.label8.caption +msgctxt "tform10.label8.caption" +msgid "Health: 500" +msgstr "Здоровье: 500" + +#: tform10.label9.caption +msgid "C. Player 4: KITT" +msgstr "Враг2" + +#: tform2.button1.caption +msgctxt "tform2.button1.caption" +msgid "Next" +msgstr "Дальше" + +#: tform2.button2.caption +msgctxt "tform2.button2.caption" +msgid "Hit me" +msgstr "Удар" + +#: tform2.caption +msgid "Step 2" +msgstr "Шаг 2" + +#: tform2.label2.caption +msgctxt "tform2.label2.caption" +msgid "Health:" +msgstr "Здоровье:" + +#: tform2.speedbutton1.caption +msgctxt "tform2.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tform3.button1.caption +msgctxt "tform3.button1.caption" +msgid "Next" +msgstr "Дальше" + +#: tform3.button2.caption +msgctxt "tform3.button2.caption" +msgid "Hit me" +msgstr "Удар" + +#: tform3.caption +msgid "Step 3" +msgstr "Шаг 3" + +#: tform3.speedbutton1.caption +msgctxt "tform3.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tform4.button1.caption +msgctxt "tform4.button1.caption" +msgid "OK" +msgstr "Подтвердить" + +#: tform4.caption +msgid "Tutorial End" +msgstr "Конец обучения" + +#: tform4.label1.caption +msgid "Well done, you've completed the tutorial of Cheat Engine." +msgstr "Поздравляю, вы успешно завершили учебное руководство по Cheat Engine." + +#: tform4.label2.caption +msgid "Just play around with the tutorial and learn how the other scanmethods work." +msgstr "Просто поиграйтесь с руководством и узнайте, как работают другие методы поиска." + +#: tform4.label3.caption +msgid "And you can always check out the Cheat Engine Forum for useful information and ask for help" +msgstr "И вы всегда можете найти полезную информацию или обратиться за помощью на форуме Cheat Engine" + +#: tform4.label4.caption +msgid "Cheat Engine Forum" +msgstr "Форум Cheat Engine" + +#: tform5.button1.caption +msgid "Fire" +msgstr "Огонь" + +#: tform5.button2.caption +msgctxt "tform5.button2.caption" +msgid "Next" +msgstr "Дальше" + +#: tform5.button3.caption +msgctxt "tform5.button3.caption" +msgid "Hit me" +msgstr "Удар" + +#: tform5.caption +msgid "Step 4" +msgstr "Шаг 4" + +#: tform5.label2.caption +msgid "Ammo" +msgstr "Патроны:" + +#: tform5.label3.caption +msgctxt "tform5.label3.caption" +msgid "Health:" +msgstr "Здоровье:" + +#: tform5.speedbutton1.caption +msgctxt "tform5.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tform6.button1.caption +msgctxt "tform6.button1.caption" +msgid "Change value" +msgstr "Изменить значение" + +#: tform6.button2.caption +msgctxt "tform6.button2.caption" +msgid "Next" +msgstr "Дальше" + +#: tform6.caption +msgid "Step 5" +msgstr "Шаг 5" + +#: tform6.speedbutton1.caption +msgctxt "tform6.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tform7.button1.caption +msgctxt "tform7.button1.caption" +msgid "Change value" +msgstr "Изменить значение" + +#: tform7.button2.caption +msgctxt "tform7.button2.caption" +msgid "Next" +msgstr "Дальше" + +#: tform7.button3.caption +msgctxt "tform7.button3.caption" +msgid "Change pointer" +msgstr "Изменить указатель" + +#: tform7.caption +msgid "Step 6" +msgstr "Шаг 6" + +#: tform7.speedbutton1.caption +msgctxt "tform7.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tform8.button1.caption +msgctxt "tform8.button1.caption" +msgid "Hit me" +msgstr "Удар" + +#: tform8.button2.caption +msgctxt "tform8.button2.caption" +msgid "Next" +msgstr "Дальше" + +#: tform8.caption +msgid "Step 7" +msgstr "Шаг 7" + +#: tform8.label1.caption +msgctxt "tform8.label1.caption" +msgid "Health: 100" +msgstr "Здоровье: 100" + +#: tform8.speedbutton1.caption +msgctxt "tform8.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tform9.button1.caption +msgctxt "tform9.button1.caption" +msgid "Change value" +msgstr "Изменить значение" + +#: tform9.button2.caption +msgctxt "tform9.button2.caption" +msgid "Next" +msgstr "Дальше" + +#: tform9.button3.caption +msgctxt "tform9.button3.caption" +msgid "Change pointer" +msgstr "Изменить указатель" + +#: tform9.caption +msgid "Step 8" +msgstr "Шаг 8" + +#: tform9.speedbutton1.caption +msgctxt "tform9.speedbutton1.caption" +msgid "Skip" +msgstr "Пропустить" + +#: tfrmhelp.caption +msgid "Help" +msgstr "Помощь" + +#: tfrmhelp.image1.hint +msgid "More information like videos for this step and written tutorials" +msgstr "Дополнительная информация, например, видеоролики по этому шагу или письменные руководства" + +#: unit1.rsfirststeptoohardbettergiveupnow +msgid "First step too hard? Go to forum.cheatengine.org, then click on \"Tutorials\" for helpful guides!" +msgstr "Первый шаг слишком сложен? Зайдите на forum.cheatengine.org в раздел «Cheat Engine Tutorials», где вы можете найти много полезных руководств!" + +#: unit1.rstutorial1 +msgid "" +"Welcome to the Cheat Engine Tutorial (v3.6)\n" +"\n" +"This tutorial will teach you the basics of cheating in video games. It will also show you foundational aspects of using Cheat Engine (or CE for short). Follow the steps below to get started.\n" +"\n" +"1: Open Cheat Engine if it currently isn't running.\n" +"2: Click on the \"Open Process\" icon (it's the top-left icon with the computer on it, below \"File\".).\n" +"3: With the Process List window now open, look for this tutorial's process in the list. It will look something like \"00001F98-Tutorial-x86_64.exe\" or \"0000047C-Tutorial-i386.exe\". (The first 8 numbers/letters will probably be different.)\n" +"4: Once you've found the process, click on it to select it, then click the \"Open\" button. (Don't worry about all the other buttons right now. You can learn about them later if you're interested.)\n" +"\n" +"Congratulations! If you did everything correctly, the process window should be gone with Cheat Engine now attached to the tutorial (you will see the process name towards the top-center of CE).\n" +"\n" +"Click the \"Next\" button below to continue, or fill in the password and click the \"OK\" button to proceed to that step.)\n" +"\n" +"If you're having problems, simply head over to forum.cheatengine.org, then click on \"Tutorials\" to view beginner-friendly guides!\n" +msgstr "" +"Добро пожаловать в учебное руководство Cheat Engine\n" +"\n" +"Это учебное руководство научит вас основам читерства в видеоиграх. Оно также покажет вам основополагающие аспекты использования Cheat Engine. Выполните шаги ниже, чтобы начать обучение.\n" +"\n" +"1: Откройте Cheat Engine, если он не запущен в данный момент.\n" +"2: Нажмите на иконку «Выбор процесса для открытия» (иконка с изображением компьютера в верхнем левом углу, расположенная под «Файл».).\n" +"3: В окне «Список процессов» найдите и откройте процесс этого обучающего руководства. Он будет выглядеть как «00001F98-Tutorial-x86_64.exe» или «0000047C-Tutorial-i386.exe». (Первые 8 цифр/букв, скорее всего, будут отличаться.)\n" +"4: Как только вы нашли процесс, нажмите на него, чтобы его выделить, а затем нажмите на кнопку «Открыть». (Не обращайте сейчас внимания на другие кнопки. Вы можете узнать о них позднее, если вам будет интересно.)\n" +"\n" +"Поздравляю! Если вы всё сделали правильно, то окно с процессами, пропадёт, а Cheat Engine присоединиться к процессу обучающего руководства (вы увидите название процесса в верхней центральной части Cheat Engine).\n" +"\n" +"Нажмите на кнопку «Дальше» для продолжения или укажите пароль и нажмите «Подтвердить», чтобы приступить к определённому шагу.\n" +"\n" +"Если у вас возникли проблемы, просто зайдите на forum.cheatengine.org в раздел «Cheat Engine Tutorials», для просмотра руководств, ориентированных на новичков!\n" + +#: unit10.rsdead +msgid "DEAD" +msgstr "МЁРТВ" + +#: unit10.rsfailureyourteamdied +msgid "Failure. Your team died" +msgstr "Неудача. Ваша команда мертва" + +#: unit10.rshealth +msgid "Health: %s" +msgstr "Здоровье: %s" + +#: unit10.rsrestartgameandautoplay +msgctxt "unit10.rsrestartgameandautoplay" +msgid "Restart game and autoplay" +msgstr "Случайная игра" + +#: unit10.rsstep9sharedcodepw +msgid "Step 9: Shared code: (PW=%s)" +msgstr "Шаг 9: Общий код: (пароль=%s)" + +#: unit10.rsstop +msgid "Stop" +msgstr "Стоп" + +#: unit10.rsthisplayerisalreadydeadrestartthegame +msgid "This player is already dead. Restart the game" +msgstr "Этот игрок уже мёртв. Перезапустите игру" + +#: unit10.rstryagain10 +msgid "Can't figure out how to do this? Don't worry. Try asking in the forum at cheatengine.org or perhaps someone already explained it better there. Are you sure you want to quit?" +msgstr "" +"Не можете разобраться? Не беспокойтесь, попробуйте спросить об этом на форуме cheatengine.org или, возможно, там уже кто-то это подробно объяснил.\n" +"Вы уверены, что хотите выйти?" + +#: unit10.rstutorialstep9 +msgid "" +"This step will explain how to deal with code that is used for other object of the same type\n" +"\n" +"Often when you've found health of a unit or your own player, you will find that if you remove the code, it affects enemies as well.\n" +"In these cases you must find out how to distinguish between your and the enemies objects.\n" +"Sometimes this is as easy as checking the first 4 bytes (Function pointer table) which often point to a unique location for the player, and sometimes it's a team number, or a pointer to a pointer to a pointer to a pointer to a pointer to a playername. It all depends on the complexity of the " +"game, and your luck\n" +"\n" +"The easiest method is finding what addresses the code you found writes to and then use the dissect data feature to compare against two structures. (Your unit(s)/player and the enemies) And then see if you can find out a way to distinguish between them.\n" +"When you have found out how to distinguish between you and the computer you can inject an assembler script that checks for the condition and then either do not execute the code or do something else. (One hit kills for example)\n" +"Alternatively, you can also use this to build a so called \"Array of byte\" string which you can use to search which will result in a list of all your or the enemies players\n" +"In this tutorial I have implemented the most amazing game you will ever play.\n" +"It has 4 players. 2 Players belong to your team, and 2 Players belong to the computer. \n" +"Your task is to find the code that writes the health and make it so you win the game WITHOUT freezing your health\n" +"To continue, press \"Restart game and autoplay\" to test that your code is correct\n" +"\n" +"\n" +"Tip: Health is a float\n" +"Tip2: There are multiple solutions\n" +msgstr "" +"Этот шаг научит вас работать с инструкцией, которую используют несколько объектов одного и того же типа.\n" +"\n" +"Часто бывает так, что вы делаете что-либо с инструкцией, работающей со здоровьем вашего игрока и тоже самое происходит со здоровьем врагов.\n" +"В таких случаях вам необходимо выяснить, как можно отличить вашего игрока от врагов.\n" +"Иногда это так же просто, как проверка первых четырёх байт структуры (Таблица указателей на функции), которые часто указывают на уникальное расположение для игрока, а иногда это номер команды (id), в которой состоит игрок, или указатель на указатель на указатель на указатель на указатель на " +"имя_игрока. Всё зависит от сложности игры и вашей удачи.\n" +"\n" +"Самый лёгкий метод - узнать в какие адреса записывает инструкция, определить начала структур (Вашего объекта/персонажа и вражеских) и попытаться найти различия между ними, воспользовавшись функцией «Анализ данных/структур».\n" +"Когда вы узнали, как отличить вашего игрока от компьютера, вы можете выполнить внедрение ассемблерного скрипта, в котором сначала сверяется условие (ваш ли это игрок/объект или вражеский), а затем либо просто выполняется оригинальный код, либо делается что-то ещё (например: убийство с одного " +"удара). Так же, вы можете использовать отличительные особенности структур для создания так называемой строки «Массива байт», поиск которой поможет найти структуры всех ваших или вражеских игроков/объектов.\n" +"\n" +"Специально для этого примера, я сделал самую классную игру из всех, в которые вы когда-либо играли. В ней присутствует 4 игрока: 2 игрока в вашей команде и 2 игрока в команде компьютера. Ваша задача состоит в том, чтобы найти инструкцию, которая пишет в адрес со значением здоровья и выиграть " +"игру БЕЗ замораживания здоровья ваших игроков.\n" +"Чтобы проверить работоспособность вашего скрипта, нажмите кнопку «Случайная игра»\n" +"\n" +"\n" +"Подсказка: Значение здоровья имеет тип Float\n" +"Подсказка 2: Данное задание можно решить несколькими способами.\n" + +#: unit10.rsu10thiswasthelasttutorial +msgid "This was the last tutorial and you skipped it. You lose" +msgstr "Это был последний шаг и ты его пропустил. Ты проиграл" + +#: unit2.rsawyouredeathletmereviveyou +msgctxt "unit2.rsawyouredeathletmereviveyou" +msgid "Aw, you're dead! Let me revive you" +msgstr "Вы умерли! Позвольте вас оживить" + +#: unit2.rsloser +msgctxt "unit2.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit2.rsquittingonstep2thisistheeasieststepthereisfindheal +msgid "Quitting on step2? This is the easiest step there is. Find health, change health, done.... Sure you want to quit?" +msgstr "" +"Сдаётесь уже сейчас? Это самый простой шаг из всех. Просто найдите значение здоровья, измените его и готово...\n" +"Вы уверены, что хотите выйти?" + +#: unit2.rsstep2exactvaluescanningpw +msgid "Step 2: Exact Value scanning (PW=" +msgstr "Шаг 2: Поиск точного значения (пароль=" + +#: unit2.rstutorialstep2 +msgid "" +"Now that you have opened the tutorial with Cheat Engine let's get on with the next step.\n" +"\n" +"You can see at the bottom of this window is the text Health: xxx\n" +"Each time you click 'Hit me' your health gets decreased.\n" +"\n" +"To get to the next step you have to find this value and change it to 1000\n" +"\n" +"To find the value there are different ways, but I'll tell you about the easiest, 'Exact Value':\n" +"First make sure value type is set to at least 2-bytes or 4-bytes. 1-byte will also work, but you'll run into an easy to fix problem when you've found the address and want to change it. The 8-byte may perhaps works if the bytes after the address are 0, but I wouldn't take the bet.\n" +"Single, double, and the other scans just don't work, because they store the value in a different way.\n" +"\n" +"When the value type is set correctly, make sure the scantype is set to 'Exact Value'\n" +"Then fill in the number your health is in the value box. And click 'First Scan'\n" +"After a while (if you have an extremely slow pc) the scan is done and the results are shown in the list on the left.\n" +"\n" +"If you find more than 1 address and you don't know for sure which address it is, click 'Hit me', fill in the new health value into the value box, and click 'Next Scan'\n" +"repeat this until you're sure you've found it. (that includes that there's only 1 address in the list.....)\n" +"\n" +"Now double click the address in the list on the left. This makes the address pop-up in the list at the bottom, showing you the current value.\n" +"Double click the value, (or select it and press enter), and change the value to 1000.\n" +"\n" +"If everything went ok the Next button should become enabled, and you're ready for the next step.\n" +"\n" +"\n" +"Note:\n" +"If you did anything wrong while scanning, click \"New Scan\" and repeat the scanning again.\n" +"Also, try playing around with the value and click 'Hit me'.\n" +msgstr "" +"Теперь, когда у вас открыты Cheat Engine и это учебное руководство, вы можете приступить к следующему шагу.\n" +"\n" +"В нижней части окна вы можете увидеть текст «Здоровье: ххх»\n" +"Каждый раз, когда вы нажимаете на кнопку «Удар», здоровье будет уменьшаться.\n" +"\n" +"Чтобы перейти к следующему шагу, вам необходимо найти значение здоровья и изменить его на 1000\n" +"\n" +"Это значение можно найти различными способами, но я расскажу вам о самом простом, «Точное значение»:\n" +"Для начала выберите тип значения «2 Байта» или «4 Байта». «1 Байт» тоже сгодится, но тогда вы не сможете изменить значение на «1000» (что можно легко исправить). Так же можно использовать и «8 Байт», но я не стал бы это делать.\n" +"Такие типы значения как «Float», «Double» и другие сейчас не сработают, т.к. в них значения хранятся по-другому.\n" +"\n" +"Теперь, когда тип значения был выбран правильно, убедитесь, что типом поиска указано «Точное значение».\n" +"Далее, укажите количество здоровья в поле «Значение» и нажмите кнопку «Поиск»\n" +"Через некоторое время (в зависимости от мощности вашего компьютера) поиск завершится, а его результаты появятся в виде списка, расположенного в левой части программы.\n" +"\n" +"Если в этом списке будет более одного адреса, и вы не знаете наверняка в каком из них хранится значение здоровья, то нажмите кнопку «Удар» ещё раз, введите новое значение здоровья в поле «Значение» и нажмите на кнопку «Отсев». Повторяйте данную процедуру пока не будете уверены, что нашли " +"нужный адрес. (или пока в списке не останется только 1 адрес...)\n" +"Теперь сделайте двойной клик по найденному адресу (или выделите его и нажмите клавишу «Enter») и поменяйте значение на 1000.\n" +"\n" +"Если всё сделано правильно, то вам станет доступна кнопка «Дальше» и вы сможете перейти к следующему шагу.\n" +"\n" +"\n" +"Примечание:\n" +"Если вы допустили какую-либо ошибку при поиске, то нажмите на кнопку «Нов. поиск» и проделайте все действия ещё раз.\n" + +#: unit3.rsdead +msgid "Seems you've done it again! Let me get a replacement! (And restart your scan!)" +msgstr "Похоже, что полоска закончилась. Давайте я её восполню!" + +#: unit3.rsloser +msgctxt "unit3.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit3.rsstep3unknowninitialvaluepw +msgid "Step 3: Unknown initial value (PW=" +msgstr "Шаг 3: Неизвестное значение (пароль=" + +#: unit3.rstryagain3 +msgid "Step 3 isn't really that hard. Just do a new scan, unkown initial value and then decreased value till you find it. Almost everyone gets past this one. Sure you want to quit?" +msgstr "" +"Шаг 3, на самом деле, не так сложен. Просто начните с поиска неизвестного значения, нажимайте на кнопку «Удар» и производите отсев по правилу «Значение уменьшилось» до тех пор, пока не найдёте нужный адрес. Почти все справляются с этим.\n" +"Вы уверены, что хотите выйти?" + +#: unit3.rstutorialstep3 +msgid "" +"Ok, seeing that you've figured out how to find a value using exact value let's move on to the next step.\n" +"\n" +"First things first though. Since you are doing a new scan, you have to click on New Scan first, to start a new scan. (You may think this is straighforward, but you'd be surprised how many people get stuck on that step) I won't be explaining this step again, so keep this in mind.\n" +"Now that you've started a new scan, let's continue.\n" +"\n" +"In the previous test we knew the initial value so we could do an exact value search, but now we have a status bar where we don't know the starting value.\n" +"We only know that the value is between 0 and 500. And each time you click 'Hit me' you lose some health. The amount you lose each time is shown above the status bar.\n" +"\n" +"Again there are several different ways to find the value. (like doing a decreased value by... scan), but I'll only explain the easiest. \"Unknown initial value\", and decreased value.\n" +"Because you don't know the value it is right now, exact value wont do any good, so choose as scantype 'Unknown initial value', again, the value type is 4-bytes. (Most windows apps use 4-bytes.) Click First scan and wait till it's done.\n" +"\n" +"When it is done click 'Hit me'. You'll lose some of your health. (the amount you lost shows for a few seconds and then disappears, but you don't need that)\n" +"Now go to Cheat Engine, and choose 'Decreased Value' and click 'Next Scan'\n" +"When that scan is done, click 'Hit me' again, and repeat the above till you only find a few. \n" +"\n" +"We know the value is between 0 and 500, so pick the one that is most likely the address we need, and add it to the list.\n" +"Now change the health to 5000, to proceed to the next step.\n" +msgstr "" +"Хорошо, видимо вы разобрались с поиском точного значения, что позволило нам приступить к следующему шагу.\n" +"\n" +"Вначале о самом важном. Поскольку вы делаете новый поиск, то первым делом вам нужно нажать на кнопку «Нов. поиск», для того чтобы его начать (Вы можете подумать: «Это же очевидно». Но вы были бы удивлены, узнав как много людей застревает на этом шаге). Я не буду объяснять это снова, поэтому " +"имейте это в виду.\n" +"Теперь, когда вы начали новый поиск, давайте продолжим.\n" +"\n" +"В предыдущем шаге мы точно знали начальное значение, поэтому мы могли произвести поиск «Точного значения», но сейчас у нас есть только полоска, без каких-либо чисел.\n" +"Всё что нам известно, так это то, что значение находится в диапазоне от 0 до 500. И каждый раз, после нажатия на кнопку «Удар», теряется часть здоровья. Сколько именно - отображается над полоской.\n" +"\n" +"И тут есть несколько способов найти значение (например: выполняя отсев по правилу «Значение уменьшилось на...»), но я объясню вам самое простое. Будут использованы только два типа поиска - «Неизвестное значение» и «Значение уменьшилось».\n" +"Т.к прямо сейчас значение нам не известно, то от поиска «Точного значения» не будет никакой пользы, поэтому выберите «Неизвестное значение», а тип, как и в прошлый раз, «4 Байта» (большинство приложений Windows используют 4-байтовый тип).\n" +"Нажмите на кнопку «Поиск» и ждите его завершения.\n" +"\n" +"После завершения поиска нажмите на кнопку «Удар». Часть здоровья теряется (Потерянное количество будет отображаться над полоской в течении нескольких секунд, а затем исчезнет, но нам это значение и не нужно).\n" +"Теперь возвращайтесь в Cheat Engine, выберите «Значение уменьшилось» и нажмите «Отсев».\n" +"После завершения отсева снова нажмите на кнопку «Удар» и снова сделайте отсев по правилу «Значение уменьшилось». Повторяйте эти действия пока в списке не окажется один или чуть более адресов.\n" +"\n" +"Итак, нам известно, что значение находится в диапазоне от 0 до 500, поэтому, если в списке найденных адресов находится более одного адреса, то выберите более подходящий к данному диапазону и добавьте его в таблицу.\n" +"Изменение значения этого адреса на 5000 позволит вам перейти к следующему шагу.\n" + +#: unit5.rsconfirmclose5 +msgid "Come on. This step is simple. For health do a float scan, and for ammo a double type. (don't forget to disable fastscan for double in this case) Just ignore the fact that it looks different because it has a \".\" in the value. You sure you want to quit?" +msgstr "" +"Да ладно, это же просто. Выполняйте поиск, используя тип данных «Float» для нахождения значения здоровья и «Double» для патрон. (Не забудьте отключить «Быстрый поиск» при поиске «Double» значения). Просто игнорируйте тот факт, что он выглядит по-другому, потому что у него есть «.» в значении.\n" +"Вы уверены, что хотите выйти?" + +#: unit5.rsdead +msgid "I think you're dead!%sPress ok to become a brain eating zombie" +msgstr "Я думаю, вы умерли!%s Нажмите «Подтвердить», чтобы стать зомби, пожирающим мозги" + +#: unit5.rsloser +msgctxt "unit5.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit5.rsoutofammo +msgid "Out of ammo!%sPress ok to stock up on some ammo" +msgstr "Патроны закончились!%s Нажмите «Подтвердить» для пополнения" + +#: unit5.rsstep4floatingpointspw +msgid "Step 4: Floating points (PW=" +msgstr "Шаг 4: Плавающие точки (пароль=" + +#: unit5.rstutorialstep4 +msgid "" +"In the previous tutorial we used bytes to scan, but some games store information in so called 'floating point' notations. \n" +"(probably to prevent simple memory scanners from finding it the easy way)\n" +"a floating point is a value with some digits behind the point. (like 5.12 or 11321.1)\n" +"\n" +"Below you see your health and ammo. Both are stored as Floating point notations, but health is stored as a float and ammo is stored as a double.\n" +"Click on hit me to lose some health, and on shoot to decrease your ammo with 0.5\n" +" \n" +"You have to set BOTH values to 5000 or higher to proceed.\n" +"\n" +"Exact value scan will work fine here, but you may want to experiment with other types too.\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"Hint: It is recommended to disable \"Fast Scan\" for type double\n" +msgstr "" +"В предыдущем шаге мы искали только целые числа, но некоторые игры хранят значения в виде так называемого «числа с плавающей точкой» (вероятно, чтобы усложнить поиск для простых сканеров памяти). Число с плавающей точкой - это значение с некими цифрами после точки (например: 5.12 или 11321.1)\n" +"\n" +"В нижней части окна вы можете видеть количество вашего здоровья и патрон. Оба хранятся в виде чисел с плавающей точкой, только значение здоровья хранится как Float, а патрон - как Double.\n" +"При нажатии на кнопку «Удар» вы утратите часть здоровья, а при нажатии на кнопку «Огонь» количество патрон уменьшится на 0.5\n" +"\n" +"Чтобы перейти к следующему шагу, вам нужно изменить значение обоих параметров на 5000 или больше.\n" +"\n" +"Здесь отлично подойдет поиск точного значения, но вы можете поэкспериментировать и с другими типами.\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"Подсказка: Рекомендуется отключить «Быстрый поиск» при поиске значения с типом «Double»\n" + +#: unit6.rsloser +msgctxt "unit6.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit6.rsstep5codefinderpw +msgid "Step 5: Code finder (PW=%s)" +msgstr "Шаг 5: Нахождение и подмена кода (пароль=%s)" + +#: unit6.rstryagain6 +msgid "This may look difficult, but it shouldn't be. Basically find health, right click health, find what overwrites it, change health, click replace, change health, done. But don't feel down if you don't get it. At least you know the basics of memory scanning... Are you sure you want to quit?" +msgstr "" +"Это может показаться трудным, но это не так. Найдите адрес со значением здоровья, кликните по нему правой кнопкой мыши, выясните что его перезаписывает, измените здоровье, замените всплывшую инструкцию на NOP, измените значение - готово.\n" +"Не расстраивайтесь, если у вас не получится. Как минимум, вы знаете основы поиска в памяти...\n" +"Вы уверены, что хотите выйти?" + +#: unit6.rstutorialstep5 +msgid "" +"Sometimes the location of a value is stored at changes, when you restart the game, or even while you're playing. In that case you can use 2 things to still make a table that works.\n" +"In this step I'll try to describe how to use the Code Finder function.\n" +"\n" +"The value down here will be at a different location each time you start the tutorial, so a normal entry in the address list wouldn't work.\n" +"First try to find the address. (You've got to this point so I assume you know how to do that.)\n" +"When you've found the address, right-click the address in Cheat Engine and choose \"Find out what writes to this address\". A window will pop up with an empty list.\n" +"Then click on the Change value button in this tutorial, and go back to Cheat Engine. If everything went right, there should be an address with assembler code there now.\n" +"Click it and choose the Replace option to replace it with code that does nothing. That will also add the code address to the code list in the Advanced Options window. (Which gets saved if you save your table.)\n" +"\n" +"Click on Stop, so the game will start running normal again, and click on Close to close the window.\n" +"Now, click on Change value, and if everything went right the Next button should become enabled.\n" +"\n" +"Note: When you're freezing the address with a high enough speed it may happen that Next becomes visible anyhow.\n" +msgstr "" +"Иногда расположение значения меняется при перезапуске игры или даже во время самой игры. В таком случае, вы можете воспользоваться несколькими способами для создания рабочей таблицы. В этом шаге я попытаюсь описать способ нахождения и подмены кода.\n" +"\n" +"Адрес со значением, расположенным ниже, будет меняться при каждом перезапуске этой обучающей программы, поэтому просто нахождение адреса нам не поможет, т.к. в следующий раз он будет другим.\n" +"\n" +"Чтобы пройти этот шаг, нам нужно с помощью подмены кода сделать так, чтобы при нажатии на кнопку «Изменить значение» значение оставалось прежним.\n" +"\n" +"Для начала попробуйте найти адрес. (Думаю, к этому моменту, вы уже знаете как это сделать)\n" +"После того как вы нашли нужный адрес и добавили его в таблицу, нажмите на него правой кнопкой мыши, выберите и нажмите «Выяснить, что записывает по этому адресу». Откроется окно «Следующие инструкции записывают в ххххх» с пустым списком.\n" +"Теперь нажмите кнопку «Изменить значение» в этой обучающей руководстве, а затем снова вернитесь в Cheat Engine. Если всё сделано правильно, то в списке появится адрес с ассемблерной инструкцией.\n" +"Выделите её и нажмите на кнопку «Заменить на NOP», которая заменит выбранную инструкцию на NOP (NOP - инструкция процессора на языке ассемблера, которая предписывает ничего не делать), а также добавит адрес с этой инструкцией в список кодов, которые расположены в окне «Дополнительные " +"возможности». Если вы сохраните таблицу, то и этот список будет сохранён вместе с ней.\n" +"\n" +"Нажмите на кнопку «Остановить» и закройте окно «Следующие инструкции записывают в ххххх».\n" +"Теперь нажмите на кнопку «Изменить значение» и, если всё сделано правильно, кнопка «Дальше» станет доступна.\n" +"\n" +"Примечание: Если вы заморозите адрес с достаточно высокой скоростью, то может случится так, что кнопка «Дальше» также станет доступна\n" + +#: unit6.rswelldoneyouscrewedupthetutorial +msgctxt "unit6.rswelldoneyouscrewedupthetutorial" +msgid "Well done, you screwed up the tutorial!!!!" +msgstr "Молодец, ты запорол учебное руководство!!!!" + +#: unit7.rsdontfuckingfreezethepointer +msgid "I'm sorry, but freezing the pointer is not really a functional solution" +msgstr "Простите, но заморозка указателя - это не совсем функциональное решение" + +#: unit7.rsloser +msgctxt "unit7.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit7.rsstep6pointerspw +msgid "Step 6: Pointers: (PW=%s)" +msgstr "Шаг 6: Указатели: (пароль=%s)" + +#: unit7.rstryagain7 +msgid "So, pointers are too difficult eh? Don't worry, try again later. For most beginners this is difficult to grasp. But I have to tell you it's a powerful feature if you learn to use it. Are you sure you want to quit?" +msgstr "" +"Неужели указатели так сложны? Не волнуйтесь, попробуйте ещё раз позже. Большинству новичкам трудно понять это сразу. Но я должен вам сказать, что это очень мощная функция, если вы научитесь её использовать.\n" +"Вы уверены, что хотите выйти?" + +#: unit7.rstutorialstep6 +msgid "" +"In the previous step I explained how to use the Code finder to handle changing locations. But that method alone makes it difficult to find the address to set the values you want.\n" +"That's why there are pointers:\n" +"\n" +"At the bottom you'll find 2 buttons. One will change the value, and the other changes the value AND the location of the value.\n" +"For this step you don't really need to know assembler, but it helps a lot if you do.\n" +"\n" +"First find the address of the value. When you've found it use the function to find out what accesses this address.\n" +"Change the value again, and an item will show up in the list. Double click that item. (or select and click on more info) and a new window will open with detailed information on what happened when the instruction ran.\n" +"If the assembler instruction doesn't have anything between a '[' and ']' then use another item in the list.\n" +"If it does it will say what it think will be the value of the pointer you need.\n" +"Go back to the main cheat engine window (you can keep this extra info window open if you want, but if you close it, remember what is between the '[' and ']' ) and do a 4 byte scan in hexadecimal for the value the extra info told you.\n" +"When done scanning it may return 1 or a few hundred addresses. Most of the time the address you need will be the smallest one. Now click on the \"Add Address Manually\" button and select the pointer checkbox.\n" +"\n" +"The window will change and allow you to type in the address of a pointer and an offset.\n" +"Fill in the address you just found. It can be in the form: \"Tutorial-i386.exe\"+xxxxxx (relative to the process), \n" +"or you can double click the address to add it to the address list and use the absolute address which appears there.\n" +"If the assembler instruction has a calculation (e.g: [esi+12]) at the end then type the value in that's at the end above the address field. This is the offset. Otherwise leave it 0. If it was a more complicated instruction look at the following calculation.\n" +"\n" +"Example of a more complicated instruction:\n" +"[EAX*2+EDX+00000310] eax=4C and edx=00801234.\n" +"In this case EDX would be the value the pointer has, and EAX*2+00000310 the offset, so the offset you'd fill in would be 2*4C+00000310=3A8. (This is all in hex, use calc.exe from Windows in Programmer mode to calculate hex values.)\n" +"\n" +"Back to the tutorial, click OK and the address will be added. If all went right the address will show P->xxxxxxx, with xxxxxxx being the address of the value you found. If that's not right, you've done something wrong.\n" +"Now, change the value using the pointer you added in to 5000 and click in the 'Active' coloumn to freeze it. Then click Change pointer, and if all went right the Next button will become visible.\n" +"\n" +"\n" +"extra:\n" +"You could also use the pointer scanner to find the pointer to this address. https://cheatengine.org/help/pointer-scan.htm\n" +msgstr "" +"В предыдущем шаге мы научились замораживать значение динамического адреса при помощи подмены кода, но тот метод не позволяет изменять само значение адреса когда захотим.\n" +"Вот почему есть указатели:\n" +"Внизу вы видите две кнопки. Одна изменяет значение, а другая изменяет и само значение, и адрес в котором оно хранится.\n" +"На данном этапе знание ассемблера не обязательно, но оно бы вам очень помогло.\n" +"\n" +"Для начала найдите адрес со значением. После того как вы его нашли, используйте функцию «Выяснить, что обращается к этому адресу».\n" +"Теперь измените значение нажатием кнопки «Изменить значение» в обучающем руководстве и в появившимся окне Cheat Engine, вы увидите список с ассемблерными инструкциями. Сделайте двойной клик по ней (или выделите инструкцию и нажмите на кнопку «Дополнительная информация») и появится новое окно с " +"детальной информацией о том, что произошло при срабатывании этой инструкции.\n" +"Если в ассемблерной инструкции нет квадратных скобок «[» и «]», то выберите другую инструкцию из списка.\n" +"Если они есть, то в данном окне будет отображено вероятное значение указателя.\n" +"Вернитесь в главное окно Cheat Engine и начните поиск значения, которое вы скопировали из «Вероятное значение указателя, нужное для нахождения этого адреса:» или чуть ниже, где отображено состояние регистров (если инструкция имеет вид «mov [edx],eax», то смотрите значение регистра «edx»). " +"Выберите тип данных «4 Байта» и поставьте галочку напротив «Hex», т.к. это значение отображено в шестнадцатеричном виде. Поиск может завершится нахождением одного или нескольких сотен адресов. В большинстве случаев, адресов находится не очень много. Теперь нажмите на кнопку «Добавить адрес» и, " +"в появившемся окне, поставьте галочку напротив «Указатель».\n" +"\n" +"Окно добавления адреса изменится и мы можем заполнить указатель и смещение.\n" +"В качестве адреса укажите только что найденный адрес. Он может быть в виде: «Tutorial-i386.exe» + xxxxxx (в зависимости от названия процесса),\n" +"или вы можете кликнуть дважды по адресу для его добавления в таблицу и использовать абсолютный адрес, который появится там.\n" +"Если ассемблерная инструкция содержит вычисление (например: [esi+12]), то в качестве смещения укажите число 12. В противном случае (если просто [esi]) оставьте 0.\n" +"Ассемблерная инструкция может иметь и более сложные вычисления.\n" +"\n" +"Например:\n" +"[EAX*2+EDX+00000310], где eax=4C, а edx=00801234.\n" +"В данном случае, «EDX» будет хранить значение указателя, а «EAX*2+00000310» будет хранить смещение, которое можно узнать, выполнив вычисление при помощи Windows-калькулятора в инженерном режиме (2*4C+00000310=3A8).\n" +"(На системах выше Windows XP, вместо инженерного режима, нужно использовать режим программиста.)\n" +"\n" +"Но вернёмся обратно к нашему уроку.\n" +"В окне «Добавить адрес» вы уже ввели указатель и смещение, поэтому нажмите кнопку «Подтвердить». В таблицу Cheat Engine добавится адрес, который будет отображен в виде «У-> xxxxxxx», где «xxxxxxx» - текущий адрес со значением. Если значение этого адреса отличается, то вы сделали что-то не " +"правильно.\n" +"Теперь измените значение добавленного вами адреса на 5000 и установите флажок в столбце «Актив.» чтобы заморозьте его. Если всё сделано правильно, то после нажатия на кнопку «Изменить указатель» станет доступна кнопка «Дальше».\n" +"\n" +"\n" +"Дополнение:\n" +"Вы также можете воспользоваться сканером указателей, чтобы найти указатель на этот адрес. https://cheatengine.org/help/pointer-scan.htm\n" + +#: unit7.rswelldoneyouscrewedupthetutorial +msgctxt "unit7.rswelldoneyouscrewedupthetutorial" +msgid "Well done, you screwed up the tutorial!!!!" +msgstr "Молодец, ты испортил учебное руководство!!!!" + +#: unit7.rsyouvegotsecondslefttochangethevalueto5000 +msgid "You have %s second%s left to change the value to 5000" +msgstr "У вас осталось %s секунд, чтобы изменить значение на 5000" + +#: unit8.rsawyouredeathletmereviveyou +msgctxt "unit8.rsawyouredeathletmereviveyou" +msgid "Aw, you're dead! Let me revive you" +msgstr "Вы умерли! Позвольте вас оживить" + +#: unit8.rshealth +msgid "Health" +msgstr "Здоровье" + +#: unit8.rsloser +msgctxt "unit8.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit8.rsstep7codeinjectionpw +msgid "Step 7: Code Injection: (PW=%s)" +msgstr "Шаг 7: Внедрение кода: (пароль=%s)" + +#: unit8.rstryagain8 +msgid "Code injections too tough? No problem, memory scanning and basic pointers should be enough to get you experienced enough and you can always try the tutorial later. Are you sure you want to quit?" +msgstr "" +"Внедрение кода кажется слишком трудной? Не беда, умение находить значения и простые указатели говорит о том, что вы уже достаточно опытны, и вы всегда можете попытаться пройти этот шаг ещё раз.\n" +"Вы уверены, что хотите выйти?" + +#: unit8.rstutorialstep7 +msgid "" +"Code injection is a technique where you inject a piece of code into the target process, and then reroute the execution of code to go through your own written code.\n" +"\n" +"In this tutorial you'll have a health value and a button that will decrease your health by 1 each time you click it.\n" +"Your task is to use code injection to make the button increase your health by 2 each time it is clicked.\n" +"\n" +"Start with finding the address and then find what writes to it.\n" +"Then when you've found the code that decreases it browse to that address in the disassembler, and open the auto assembler window (Ctrl+A).\n" +"There click on template and then code injection, and give it the address that decreases health (if it isn't already filled in correctly).\n" +"That will generate a basic auto assembler injection framework you can use for your code.\n" +"\n" +"Notice the alloc, that will allocate a block of memory for your code cave, in the past, in the pre windows 2000 systems, people had to find code caves in the memory (regions of memory unused by the game), but that's luckily a thing of the past since windows 2000, and will these days cause " +"errors when trying to be used, due to SP2 of XP and the NX bit of new CPUs.\n" +"\n" +"Also notice the line newmem: and originalcode: and the text \"Place your code here\".\n" +"As you guessed it, write your code here that will increase the health with 2.\n" +"A useful assembler instruction in this case is the \"ADD instruction\".\n" +"\n" +"Here are a few examples:\n" +"\"ADD [00901234],9\" to increase the address at 00901234 with 9\n" +"\"ADD [ESP+4],9\" to increase the address pointed to by ESP+4 with 9\n" +"In this case, you'll have to use the same thing between the brackets as the original code has that decreases your health.\n" +"\n" +"Notice:\n" +"It is recommended to delete the line that decreases your health from the original code section, else you'll have to increase your health with 3 (you increase with 3, the original code decreases with 1, so the end result is increase with 2), which might become confusing. But it's all up to you " +"and your programming.\n" +"\n" +"Notice 2:\n" +"In some games the original code can exist out of multiple instructions, and sometimes, not always, it might happen that a code at another place jumps into your jump instruction end will then cause unknown behavior. If that happens, you should usually look near that instruction and see the " +"jumps and fix it, or perhaps even choose to use a different address to do the code injection from. As long as you're able to figure out the address to change from inside your injected code.\n" +msgstr "" +"Внедрение кода - это метод, при котором в выбранный процесс программы добавляется кусок кода с перенаправлением выполнения оригинального кода через добавленный вами код.\n" +"\n" +"На этом шаге у вас есть значение здоровья и кнопка для его уменьшения на 1.\n" +"Ваша задача состоит в том, чтобы использовать внедрение кода для увеличения значения здоровья на 2 при каждом нажатии на кнопку «Удар».\n" +"\n" +"Начните с нахождения адреса, а затем найдите то, что записывает по этому адресу\n" +"Когда вы нашли инструкцию, которая уменьшает его, перейдите в дизассемблер и откройте окно «Автоассемблер» (Ctrl+A).\n" +"Теперь нажмите на меню «Шаблон» -> «Внедрение кода» и в появившимся окне укажите адрес, по которому расположена ассемблерная инструкция, уменьшающая здоровье (Если правильный адрес ещё не заполнен, т.к. Cheat Engine автоматически указывает в этой строке адрес выделенной в отладчике " +"ассемблерной инструкции). Сгенерируется шаблон базового скрипта для внедрения, который вы можете использовать для добавления вашего кода.\n" +"\n" +"Обратите внимание на директиву «alloc», которая выделяет блок памяти под ваш код. Когда-то давно, ещё до выхода системы Windows 2000, людям приходилось самостоятельно находить неиспользуемую область памяти (так называемый «code cave») в игре, чтобы внедрить в неё свой код, но, к счастью, всё " +"это осталось в прошлом. В наши дни, вследствие выхода Пакет Обновления 2 для Windows XP и технологии NX-Bit у новых процессоров, использование «code cave» может привести к различным ошибкам.\n" +"Также обратите внимание на строки «newmem:», «originalcode:» и надпись «place your code here»\n" +"Как вы уже догадались, именно там, где находится эта надпись, и нужно ввести наш код, который будет увеличивать значение здоровья на «2».\n" +"Для этого нам на нужно воспользоваться арифметической командой «ADD»\n" +"Вот пару примеров:\n" +"«ADD [00901234],9» - прибавляет число 9 к значению по адресу 00901234 \n" +"«ADD [ESP+4],9» - прибавляет число 9 к значению по адресу, на который указывает ESP+4\n" +"В нашем случае, в качестве адреса нужно использовать тот же адрес, что находится между скобками в оригинальной ассемблерной инструкции, уменьшающей здоровье.\n" +"Примечание:\n" +"В этом случае, в асвтоассемблере рекомендуется удалить из секции «originalcode:» оригинальную инструкцию, уменьшающую здоровье. Иначе вам придётся увеличивать значение здоровья на 3 (Вы увеличиваете значение здоровья на 3, оригинальная инструкция уменьшает это значение на 1, в конечном итоге, " +"значение увеличится на 2), что может вас немного запутать. Но всё это зависит только от вас и вашего уровня программирования.\n" +"\n" +"Примечание 2:\n" +"В некоторых играх ассемблерный код, выполняющий действие с каким-либо значением в игре, может состоять из нескольких частей, находящихся в разных местах. И если вы сделаете внедрение в такой код, то иногда, правда редко, это может привести к тому, что код из другого места прыгнет в конец " +"поставленного вами прыжка, на ваш «code cave», в котором расположен ваш чит, что может привести к непредсказуемым действиям. В таких случаях необходимо просмотреть код рядом с тем местом, куда вы делаете внедрение, проверить все переходы и поправить их или попробовать использовать другую " +"инструкцию, находящуюся рядом, для выполнения внедрения.\n" + +#: unit9.rsloser +msgctxt "unit9.rsloser" +msgid "BOO" +msgstr "БУ!" + +#: unit9.rsstep8multilevelpointerspw +msgid "Step 8: Multilevel pointers: (PW=%s)" +msgstr "Шаг 8: Многоуровневые указатели: (пароль=%s)" + +#: unit9.rstryagain9 +msgid "Aw, you've almost reached the end. But don't worry, multilevel pointers can be a real pain when dealing with. If you get more experienced someday you can try it again. Are you sure you want to quit?" +msgstr "" +"Эх, вы ведь почти подошли к концу обучения. Но не волнуйтесь, когда дело доходит до многоуровневых указателей - это может быть реальной головной болью. Однажды вы станете намного опытнее и сможете попытаться пройти этот шаг ещё раз.\n" +"Вы действительно хотите выйти?" + +#: unit9.rstutorialstep8 +msgid "" +"This step will explain how to use multi-level pointers.\n" +"In step 6 you had a simple level-1 pointer, with the first address found already being the real base address.\n" +"This step however is a level-4 pointer. It has a pointer to a pointer to a pointer to a pointer to a pointer to the health.\n" +"\n" +"You basicly do the same as in step 6. Find out what accesses the value, look at the instruction and what probably is the base pointer value, and what is the offset, and already fill that in or write it down. But in this case the address you'll find will also be a pointer. You just have to find " +"out the pointer to that pointer exactly the same way as you did with the value. Find out what accesses that address you found, look at the assembler instruction, note the probable instruction and offset, and use that.\n" +"And continue till you can't get any further (usually when the base address is a static address, shown up as green.)\n" +"\n" +"Click Change Value to let the tutorial access the health.\n" +"If you think you've found the pointer path click Change Register. The pointers and value will then change and you'll have 3 seconds to freeze the address to 5000.\n" +"\n" +"Extra: This problem can also be solved using an auto assembler script, or using the pointer scanner.\n" +"Extra2: In some situations it is recommended to change CE's Codefinder settings to Access violations when \n" +"encountering instructions like mov eax,[eax] since debug registers show it AFTER it was changed, making it hard to find out the value of the pointer.\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"Extra3: If you're still reading. You might notice that when looking at the assembler instructions that the pointer is being read and filled out in the same codeblock (same routine, if you know assembler, look up till the start of the routine). This doesn't always happen, but can be really " +"useful in finding a pointer when debugging is troublesome.\n" +msgstr "" +"Этот шаг научит вас нахождению многоуровневых указателей.\n" +"В «Шаг 6» у вас был простой одноуровневый указатель, первый же найденный адрес и был реальным базовым адресом.\n" +"В этом шаге вы будете иметь дело с четырёхуровневым указателем, т.е. указатель на указатель на указатель на указатель на указатель адреса здоровья.\n" +"\n" +"В основном, вам нужно делать всё тоже самое, что и в «Шаг 6». Найдите адрес с нижеуказанным значением, нажмите «Найти инструкции, обращающиеся к этому адресу», измените значение с помощью кнопки «Изменить значение», взгляните на всплывшие инструкции, узнайте вероятное значение указателя и " +"смещение (последнее нужно запомнить или где-нибудь записать). Начните новый поиск, использовав предполагаемое значение указателя (не забудьте поставить галочку напротив «Hex»).\n" +"Вы нашли адрес. В данном случае, т.к. имеем дело с многоуровневым указателем, найденный адрес так же будет являться указателем. Теперь, аналогичным образом, вам нужно найти указатель на этот указатель. Поставьте на только что найденный адрес «Найти инструкции, обращающиеся к этому адресу», " +"измените значение, взгляните на всплывшие инструкции... И этот найденный адрес будет являться указателем на указатель. Продолжайте поиск, повторяя те же действия (не забывая запоминать/записывать смещения и их последовательность), пока в списке найденных адресов не появится адрес, окрашенный в " +"зелёный цвет.\n" +"Теперь нажмите в Cheat Engine на кнопку «Добавить адрес» и поставьте галку напротив «Указатель». В нижнем поле ввода укажите найденный адрес, окрашенный в зелёный цвет, а чуть выше укажите смещения (сверху вниз) в той последовательности, в которой вы их находили. В конечном итоге, у вас в " +"таблице появится адрес вида «У-> xxxxxxx».\n" +"\n" +"Теперь измените значение адреса «У-> xxxxxxx» на 5000, заморозьте его и нажмите кнопку «Изменить указатель». Если вы нашли верную цепочку указателей, то кнопка «Дальше» станет доступна.\n" +"\n" +"Дополнение: Для решения этого шага можно воспользоваться и сканером указателей, для автоматического нахождения многоуровневого указателя, или вообще не искать их, а написать скрипт автоассемблера.\n" +"Дополнение 2: В некоторых ситуациях, когда вы имеете дело с инструкциями вида mov eax,[eax], рекомендуется изменить настройки «Определителя кода» на «Нарушение доступа», т.к. состояние регистров отладчика показывается только ПОСЛЕ выполнения инструкции, затрудняя поиск указателя\n" +"\n" +"\n" +"\n" +"\n" +"\n" +"Дополнение 3: Если вы всё ещё читаете. Вы можете заметить, что ассемблерные инструкции, считающие значение указателя и те, что заполняют это значение, находятся в одном и том же сегменте кода (в одном цикле кода, если вы знаете ассемблер - поищите начало этого цикла). Такая ситуация возникает " +"не всегда, но может быть очень полезна при нахождении указателя, если отладка затруднена.\n" + +#: unit9.rsunrandomizerdetected +msgid "Unrandomizer detected" +msgstr "Обнаружен «Антирандомайзер»" + +#: unit9.rsyouvegotsecondslefttochangethevalueto5000 +msgid "You've got %s seconds left to change the value to 5000" +msgstr "У вас осталось %s секунд, чтобы изменить значение на 5000"