Этот сайт создан как клуб русификаторщиков. Для нас существуют три основных правила.
1. Мы никому и ничего не должны!
2.Один пришедший на сайт толковый русификаторщик дороже всех пользователей.
3. Мы делаем русификаторы для своего сайта, но в оригинале ими могут пользоваться все в интернете.
Я его в группу Проверенные перевел, пусть попробует сообщения оставлять, темы создавать. А вы, Николай, отныне его Куратор.
В группе Стажер у него по прежнему нет возможности картинки грузить. Здесь похоже влияет наличие сообщений, размещенных на сайте. Сейчас попробую в его профиле покопаться...
Николай, хотел разместить ваше руководство на форуме,.. Ручной перевод FSShellExt.dll FolderSizes
Странно, что сам автор этого чудного материала почему-то не удосужился это сделать.
Теперь комментарий. Radialix не видит ссылок, т.к. дизассемблер IDA эти ссылки не предоставил.
Ссылок нет - переводить бесполезно, строки будут обрезаны по длине исходных строк.
Иногда IDA не может верно интерпретировать данные, т.е. не знает это код или строки или еще что-то. Это всего лишь программа как и любая другая, которая работает по алгоритмам, созданным человеком. Вот и здесь такой случай. В листинге отображается бинарный набор данных.
Естественно ни о каких ссылках не может идти речи. Поэтому пользователю нужно предпринять дополнительные действия, чтобы исправить эту ситуацию. А именно преобразовать эти данные в код, предварительно убедившись, что это именно код программы, а не что-то другое. Сделать это можно в другой программе дизассемблера/отладчика. Например, в x64dbg видно, что строка "Folder Size Report" вызывается из кода программы и у этой строки есть ссылка.
В IDA выбираем все неопределенные данные и щелкаем по кнопке преобразования этих данных в код (Convert to instruction). На вопрос отладчика о преобразовании отвечаем утвердительно (Force -> Yes).
Как видите и строки появились, и ссылки на них. Обновляем файл с картой ссылок. Возвращаемся в Radialix и обновляем проект. Теперь все ссылки есть, можно работать.
О ?!?! Начал редактировать сообщение, появилась кнопка "Загрузить файл". При сохранении: Not alloved text. Пришлось вернуться к первоначальному варианту.
В первой колонке "ID" Radialix показывает физические адреса строк, которые есть в файле. Например, для строки "Folder Size Report" это адрес 180207320.
На вашем скрине в IDA это адрес, по которому строка в файле находится физически.
Вы можете в этом удостовериться, если переключитесь на вкладку "Hex View-A".
Вернитесь на вкладку "IDA View-A" и обратите внимание на индексы "db" напротив символов строки. IDA не смогла определить, что это строка и преобразовала её в двоичные данные.
Вернемся в Radilaix. В колонке "Ссылки" отображаются адреса в коде программы, из которых идет чтение этих строк. Строк без ссылок не бывает, но Radialix умеет работать только с прямой адресацией строк, т.е. когда из кода программы идет обращение к строке напрямую. Если в колонке "Ссылки" напротив строки стоит прочерк, значит прямая ссылка отсутствует или же дизассемблер IDA не смог разобрать код.
Вот сейчас перед вами дилемма: вы не знаете, если ссылка на строку и IDA этого не знает. Что делать?
Нужно воспользоваться другим дизассемблером/отладчиком и прояснить этот вопрос. Radialix и IDA не закрываем. Загружаем файл в другой, современный отладчик, например, в x64dbg, и задаем поиск строки "Folder Size Report". После её нахождения переходим на вкладку дизассемблерного кода "CPU". Этот отладчик прекрасно справился с данными и показываем нам, что строка вызывается из кода программы и имеет прямую ссылку. Адрес инструкции, по которой идет обращение к строке - 1801A9D06.
Теперь мы знаем адрес в коде программы, откуда читается наша строка.
Возвращаемся в IDA и на вкладке "IDA View-A" переходим на адрес 1801A9D06. Здесь вы увидите, что IDA не смогла распознать этот код и представила его неопределёнными (двоичными) данными. Далее, как было сказано в предыдущем моем сообщении, помогаем дизассемблеру распознать код. После этого IDA корректно увидит строки и ссылки на них.
Бывает, что и при наличии распознанного кода IDA не видит строки (отображает их в виде двоичных данных как на скрине в начале этого сообщения) или неверно определяет начало строки. Тогда пользователю необходимо вручную указать корректный тип данных.
Сначала вопрос к Смотрящему. Как уважаемому nobody24 вставлять картинки на форуме. Я знаю единственный способ - делать вид, что добавляешь новость на сайте, загружать картинку, и на форуме использовать ссылку на эту картинку. Но nobody24, как я понимаю, добавлять новость не позволено. Вообще, известный мне способ довольно громоздкий, может есть другой?
Цитата: Leserg
Странно, что сам автор этого чудного материала почему-то не удосужился это сделать
Вопрос, хоть и косвено, но ко мне Не посчитал нужным. Во первых, достаточно известная технология, во вторых, я уже описывал его в работе "Начинающему борцу с крякозябликами" в разделе "Строки без ссылок" (правда там сложнее - строка одна, ссылка на нее тоже одна, но в разных частях программы строка используется в разных кодировках (1252 и UTF-8) Уважаемый Leserg легко нашел бы более простой способ, чем описанный мною, но на то он и Leserg ) Сюда же, раздел "Тестируем" - это работа nobody24, сюда же - мои поучения оснавательно "причесаны"
nobody24(у). Описанный Leserg(ом) способ в превосходной степени лучше перевода вручную. К тому же он решает вопрос по переводу новых версий программ
Как уважаемому nobody24 вставлять картинки на форуме.
Для всех один вариант: Пишем сообщение (пост) на форуме, справа внизу есть кнопочка "Загрузить файл": Далее жмём на "Оригинал", под строкой "По какой стороне выравнивать изображение?" выбираем позиционирование вашего изображения в вашем сообщении, при необходимости ставим флажок перед "Автоматически выравнивать последующие изображения" чтобы все следующие картинки позиционировались как первое (относится только к этому вашему сообщению). Далее Отправить. Всё.