Ru-Board.club
← Вернуться в раздел «Программы»

» xp-AntiSpy

Автор: Hrist
Дата сообщения: 05.10.2005 10:38
ArtLonger

Цитата:
Получил сегодня интересное письмо:

а какой емаил у этого автора патча? может я смогу его разыскать в инете?
я так понял он дизасемблером ковырял вашу суперутиль?
было бы не плохо патчик для русификации заделать что бы не править реестр...
Автор: ArtLonger
Дата сообщения: 05.10.2005 13:43
Hrist

Цитата:
а какой емаил у этого автора патча? может я смогу его разыскать в инете?

Написал в ПМ, смотри.

Может запостить в "Андеграунд" и попросить тамошних мастеров сделать универсальный патчик?
Автор: Hrist
Дата сообщения: 06.10.2005 08:50
ArtLonger
автор патча достаточно быстро ответил:

Добрый день. Если под автором имеется ввиду непосредственный автор программы, то ему нужно просто в функции CreateFont() использовать нужный параметр, определяющий Charset.

получаеться можно было бы обойтись и без патча?
Автор: ArtLonger
Дата сообщения: 06.10.2005 12:44
Hrist

Цитата:
получаеться можно было бы обойтись и без патча?

Нельзя. Автор программы не хочет менять и более простые вещи, относящиеся к локализации. Я ему писал о некоторых хотелках - он обещал подумать, но воз и ныне там .

Кстати, ответ по патчу можно было привести здесь. [more=Вот полный вариант ответа...]

Цитата:
Если под автором имеется ввиду непосредственный автор программы, то ему нужно просто в функции CreateFont() использовать нужный параметр, определяющий Charset. А если вы хотите исправить уже откомпилированный файл, то нужно найти место в программе, где вызывается функция CreateFont(), и подредактировать место, где определяются параметры для этой функции. Для этого лучше использовать дизассемблер и шестнацетиричный редактор. Дело в том, что у функции CreateFont очень много параметров, и для втоматического исправления кода нужен достаточно надежный анализатор этого кода. На создание такого анализатора вы потратите уйму времени, а на анализ кода при помощи дизассемлера требуется от силы полчасика.

Итак, приступим к изучению программы.

1. Если программа упакована каким либо пакером, то нужно её распаковать, вернее - это уже отдельная тема (взлом упакованой программы). А если нет, как в случае с антиспаем, то переходим к следующему шагу.

2. Нужно найти библиотеки импорта. Для этого можно использовать depends.exe от microsotf. Эта программа показывает все библиотеки и импортируемые программой функции из этих библиотек (в упакованном виде весит примерно 380 Кб, могу выслать). Нас интересует библиотека GDI32.DLL и функция CreateFont().

3. Теперь о функциях API создания шрифта. Это могут быть
CreateFontA() / CreateFontW()
CreateFontIndirectA() / CreateFontIndirectW()
CreateFontIndirectExA() / CreateFontIndirectExW()
Поясню: CreateFontA() и CreateFontW() это разные реализации одной и той же функции, т.е. они выполняют одну и ту же работу, только отличаются типом параметров. CreateFontA() в качестве строкового параметра принимает ANSI строки, а CreateFontW() - строки в Юникоде. С остальными функциями - так же.
У функции CreateFont() очень много параметров-14, а все остальные принимают только указатель на структуру, в которой уже собраны все эти парамеры.С антиспаем - используется CreateFontA().

4. Теперь про CreateFontA().
BOOL CreateFont(int nHeight, // определяет высоту шрифта в логических единицах
int nWidth, // определяет ширину шрифта, (обычно равен 0,ширина по умолчанию)
int nEscapement, // наклон в десятых градуса базовой линии текста (обычно 0)
int nOrientation, // наклон в десятых градуса базовой линии символа (обычно 0)
int nWeight, // вес символа (жирность) (обычно 400)
BYTE bItalic, // курсив (обычно 0)
BYTE bUnderline, // подчеркивание (обычно 0)
BYTE cStrikeOut, // зачеркивание (обычно 0)
BYTE nCharSet, // определяет национальность шрифта (то что нам нужно)
BYTE nOutPrecision, // без комментариев (можно 0)
BYTE nClipPrecision, // без комментариев (можно 0)
BYTE nQuality, // без комментариев (можно 0)
BYTE nPitchAndFamily, // без комментариев (можно 0)
LPCTSTR lpszFacename);// название шрифра (например "Arial")

5. Нашли нужную функцию в импорте - теперь нужно найти место в программе, где она вызывается, проанализировать её парамеры, и попытаться исправить nCharSet. Здесь нужен какой либо дизассемблер. В антиспае - nCharSet равен 0, что соответсвует америке. А нам нужен RUSSIAN_CHARSET, его значение 204 или 0CCh. Как исправить? Для передачи параметров функции используется стек, первым с стек помещается последний параметр функции (lpszFacename), последним - первый (nHeight), а затем call [адрес в таблице импорта].
Трудность исправления значений параметров заключается в том, что много нулевых параметров и оптимизатор кода при компиляции программы сделал следующим образом: обнулил какой то регистр (например ebx), а затем, когда требуется записать в стек 0, выполняется команда push ebx. Эта команда занимает только один байт. Команда push 204 занимает уже два байта, и просто так ей не вставишь (нет места). Я же сделал так: nPitchAndFamily не был нулевым, и на него тратилось два байта, я его обнулил (заменил на push ebx), а освободившийся байт использовал для nCharSet. При этом все параметры между ними сместились на один байт. Это я проделал в двух местах. Для этого нужен шестнадцатиричный редактор. И все - антиспай у меня стал показывать нормальный текст.

Всего хорошего. На описание того что я сделал потребовалось больше времени, чем на сам патч.

[/more]
Автор: ArtLonger
Дата сообщения: 19.10.2005 13:04
Юрий Павлович сделал универсальный патч для лечения кракозяблов в xp-AntiSpy:

http://artlonger.fromru.com/xpas_cyr.zip

Подходит (теоретически) для любой версии. Тестируйте, если будут проблемы - пишите сюда.
Автор: shedow25
Дата сообщения: 01.01.2006 13:20
xp-AntiSpy 3.95-1

self installing setup program
_http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=3

packed zip archive without installer
_http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=4
Автор: CBB
Дата сообщения: 01.01.2006 15:39
Может, это смешно, но я никак не пойму, зачем нужен гвоздик в выделяемых строчках. В Аутлук экспресс такой гвоздик используется для отмены закрытия окна закачки после получения почты, а зачем он здесь - ну не могу догадаться
Автор: ArtLonger
Дата сообщения: 02.01.2006 21:24
Русская версия 3.95-1 готова, живёт в шапке.
Автор: Nick 2003
Дата сообщения: 02.01.2006 22:22
ArtLonger
Спасибо, твои переводы выкладываются на офсайте ?
Никто не в курсе, что нового в последней версии ?
Автор: Maz
Дата сообщения: 02.01.2006 22:47
Nick 2003

Цитата:
Никто не в курсе, что нового в поледней версии ?

исправлены некоторые ошибки.
Автор: Nick 2003
Дата сообщения: 02.01.2006 22:57
Maz
А откуда ты это взял ? На офсайте пока нет лога изменений к последней версии.
Автор: Maz
Дата сообщения: 02.01.2006 23:10
Nick 2003
В данном случае в архиве с переведенной версией artlonger'а
Автор: Nick 2003
Дата сообщения: 02.01.2006 23:20
Ясно, спасибо
Автор: ArtLonger
Дата сообщения: 03.01.2006 11:02
Nick 2003
Мой перевод на оффсайте выкладывается, но в меру оперативности Криса. Так что я сразу выкладываю у себя, а на оффсайте могут быть задержки - иногда больше недели.
Изменения последней версии в changelog'е на сайте действительно не выложены, а инфу о "некоторых ошибках" я взял со стартовой страницы антиспая. Видаь у Криса руки не дошли в новый год changelog обновлять...
Автор: Nick 2003
Дата сообщения: 18.02.2006 11:48
ArtLonger
Понятно
Автор: ArtLonger
Дата сообщения: 19.02.2006 11:41
Nick 2003
Вот более полный вариант, правда я не понял насчёт screenreader'a:

Код: Изменения в версии 3.95.1:
    31.12.2005
    + Улучшения интерфейса
        * С помощью кнопки TAB можно переводить фокус ввода на разные элементы окна.
        * По списку настроек можно перемещаться с помощью курсорных клавиш.
        * Выбранный режим ("Стандартный" или "Доступный") сохраняется при перезапуске xp-AntiSpy.
        * The prepended property texts to each setting in accessible mode now will be read by a screenreader too.
    - Устранены незначительные ошибки.
Автор: shedow25
Дата сообщения: 20.02.2006 07:43
xp-AntiSpy 3.95-2 (19.02.2006)

Цитата:
It fixes mainly the ability to modify the connection limit wich was not working since the last Windows Update from 2/16/2006.

_http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=3
Автор: ArtLonger
Дата сообщения: 20.02.2006 10:47

Цитата:
Изменения в версии 3.95.2:
    19.02.2006
    + Исправлено изменение лимита параллельных соединений (не работало после обновления Windows от 16 февраля 2006).
    - Исправлена ошибка, приводившая к падению программы при выборе заданных профилей.
Пропатченную версию с русской справкой качаем в шапке.
Автор: Nick 2003
Дата сообщения: 20.02.2006 18:07
ArtLonger
Оперативно, спасибо большое
Автор: shedow25
Дата сообщения: 11.06.2006 20:25
xp-AntiSpy 3.96

Цитата:
# Connection limit now can be applied also to 64-Bit systems
# Added settings

* Restrict anonymous network access
* Disable network crawling
* Allow uninstallation of the Windows Mediaplayer
* Disable the indexing service
* Do not generate Lan Manager Hashes
* Disable WGA check at logon

# Added symbol reference to the '?' menu
# Fixed some minor bugs

_http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=3
_http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=4
Автор: Dave_sp
Дата сообщения: 12.06.2006 03:08
xp-AntiSpy 3.96 Русская версия
http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=15
Автор: Hrist
Дата сообщения: 12.06.2006 16:48
круто...
кстати русская есть и в зипе без установки http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=16

вот еще бы сделали отмен сообщений об ошибке 1С
а то на сервер заходишь и кликаешь по десятку раз на окна об обшиках 1С
Автор: UKPR
Дата сообщения: 14.06.2006 18:49
XP-Antispy 3.96 Русская Версия
прямая сылка
_http://www.xp-antispy.t7m.de/xp-AntiSpy_setup-russian.exe
Автор: Maz
Дата сообщения: 16.06.2006 09:07
xp-AntiSpy 3.96-1
http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=3
http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=4
Автор: ArtLonger
Дата сообщения: 16.06.2006 10:38

Цитата:
xp-AntiSpy 3.96-1
Donnerstag, 15 Juni 2006

The Windows Update from yesterday also updated the file tcpip.sys. That's why the xp-AntiSpy 3.96 didn't detect it. This is fixed with the 3.96-1.
Also i changed the version of NSIS i use to create the setup program. I hope this will end all the false positives some virus scanning software detects.

Greetings, -chris-


По-русски:

Файл tcpip.sys 14 июня был опять модифицирован на Windows Update. Именно поэтому xp-AntiSpy 3.96 не мог поднять лимит соединений. Устранено в 3.96-1.
Также я изменил версию NSIS, который используется для создания программы установки. Я надеюсь, что это позволит избавиться от ложных срабатываний некоторых антивирусов.
Автор: serggl2003
Дата сообщения: 28.06.2006 08:43
xp-AntiSpy 3.96-2 Rus
http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=15
Автор: ArtLonger
Дата сообщения: 28.06.2006 10:36

Цитата:
Version 3.96-2 of the xp-AntiSpy is available for download now.
There was a little bug in the connection limit patcher of the version 3.96-1. This is now fixed and also the patching the connection limit on 64bit systems after the last patch day is now supported.

Автор: rubel
Дата сообщения: 29.06.2006 08:51
serggl2003
Твоя ссылка-с установкой или без?Нужна без установки xp-AntiSpy 3.96-2 Rus.
Автор: Maz
Дата сообщения: 29.06.2006 08:55
rubel

Цитата:
Нужна без установки xp-AntiSpy 3.96-2 Rus.

http://xp-antispy.org/index.php?option=com_remository&func=selmirror&itemid=16
Автор: rubel
Дата сообщения: 29.06.2006 19:50
Maz
Спасибо,скачал.

Страницы: 12345678910

Предыдущая тема: Aditor 3.10 ..проблема с открытием больших файлов..


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.