upx и ParamStr(0)

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

upx и ParamStr(0)

Сообщение Attid » 13.06.2009 15:19:44

после использования upx
ParamStr(0) возврощает пустую строку =(

приложение консольное, линукс. как узнать имя процесса ?
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Re: upx и ParamStr(0)

Сообщение Иван Шихалев » 13.06.2009 17:18:34

Не использовать UPX? Из переменных окружения оно тоже не вытаскивается :(
Аватара пользователя
Иван Шихалев
энтузиаст
 
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург

Re: upx и ParamStr(0)

Сообщение Sergei I. Gorelkin » 13.06.2009 21:35:29

/proc/self/exe тоже пустым оказывается?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1406
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: upx и ParamStr(0)

Сообщение Иван Шихалев » 14.06.2009 01:18:59

Sergei I. Gorelkin писал(а):/proc/self/exe тоже пустым оказывается?

Да. Насколько я понимаю, upx формирует образ в памяти, которому передается управление... В принципе, наверное, можно попробовать выяснить родительский pid и уже по нему в /proc отправляться...

Добавлено спустя 1 минуту 22 секунды:
Но тогда по-хорошему нужен способ выяснить, под upx'ом ли мы... Хотя пустота ParamStr(0) — пожалуй, критерий...
Аватара пользователя
Иван Шихалев
энтузиаст
 
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург

Re: upx и ParamStr(0)

Сообщение Sergei I. Gorelkin » 14.06.2009 03:23:07

Есть утилита gzexe, которая служит для тех же целей, что и upx. По сути это bash-скрипт, который жмет программу с помощью gzip, потом дописывает в начало то ли сам себя, то ли часть себя. Там в комментариях есть слова о сохранении имени вызываемой программы. Можно посмотреть, как именно оно делается - с большой долей вероятности upx поступает так же.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1406
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: upx и ParamStr(0)

Сообщение Attid » 14.06.2009 10:09:55

Иван Шихалев писал(а):Не использовать UPX?

дык никогда не использовал, приходится работать на тонком клиенте места в обрез.

gzexe попробую.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Рейтинг@Mail.ru