Русское сообщество по скриптингу

Декомпиляция плагинов (из .amxx в .sma) на основе amxxdump

Статьи или фрагменты кода для новичков и уже опытных скриптеров по AMXX.

Модератор: Chuvi

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только обучающему материалу по AMX Mod X.

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Non Sense » 04 дек 2017, 23:48

Как узнать из .amxx файла?
#define HOST "..."
#define USER "..."
#define PASS "..."
#define DB "..."
?
Аватара пользователя
Non Sense
 
Сообщения: 10
Зарегистрирован: 26 май 2014, 17:27
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение артист666 » 05 дек 2017, 00:27

Все define подставляются при компиляции.
Смотри в функции где оно используется.
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
Аватара пользователя
артист666
 
Сообщения: 2706
Зарегистрирован: 09 апр 2013, 17:46
Благодарил (а): 284 раз.
Поблагодарили: 639 раз.
Опыт программирования: Больше трех лет
Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Non Sense » 06 дек 2017, 00:51

артист666 писал(а):Все define подставляются при компиляции.
Смотри в функции где оно используется.

Прошу прощения. Я ботинок в этой теме. Можно конкретнее?
Аватара пользователя
Non Sense
 
Сообщения: 10
Зарегистрирован: 26 май 2014, 17:27
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение артист666 » 06 дек 2017, 01:01

Код: Выделить всё
SQL_MakeDbTuple(hostuserpassdb
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
Аватара пользователя
артист666
 
Сообщения: 2706
Зарегистрирован: 09 апр 2013, 17:46
Благодарил (а): 284 раз.
Поблагодарили: 639 раз.
Опыт программирования: Больше трех лет
Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Non Sense » 06 дек 2017, 01:16

артист666 писал(а):
Код: Выделить всё
SQL_MakeDbTuple(host, user, pass, db)

Не пойму.
Нужно узнавать информацию об этой функции через декомпиляцию с параметром -r?
Аватара пользователя
Non Sense
 
Сообщения: 10
Зарегистрирован: 26 май 2014, 17:27
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Fedcomp » 06 дек 2017, 11:13

Non Sense писал(а):
артист666 писал(а):Все define подставляются при компиляции.
Смотри в функции где оно используется.

Прошу прощения. Я ботинок в этой теме. Можно конкретнее?

Код: Выделить всё
#define SOMETHING 123456
func(){
  
call(SOMETHING)
}

otherfunc(){
  
hello(SOMETHING)

В скомпилированном варианте получим:
Код: Выделить всё
func(){
  
call(123456)
}

otherfunc(){
  
hello(123456)

о #define там не будет ни слова, это директива компилятора и используется только во время компиляции. В конечном плагине все константы будут подставлены.
Не помогаю в ЛС - есть форум.
Плагины тоже не пишу, на форуме достаточно хороших скриптеров.


"я ставлю зависимости потому что мне приятно" - subb98 @ 2017
Аватара пользователя
Fedcomp
Администратор
 
Сообщения: 4936
Зарегистрирован: 28 авг 2009, 20:47
Благодарил (а): 813 раз.
Поблагодарили: 1317 раз.
Языки программирования: =>
pawn / php / python / ruby
javascript / rust

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение артист666 » 06 дек 2017, 17:27

Non Sense писал(а):
артист666 писал(а):
Код: Выделить всё
SQL_MakeDbTuple(host, user, pass, db)

Не пойму.
Нужно узнавать информацию об этой функции через декомпиляцию с параметром -r?

В этой функции они будут.
На всякий, если не понял из пояснения Fedcomp'а. :-)
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
Аватара пользователя
артист666
 
Сообщения: 2706
Зарегистрирован: 09 апр 2013, 17:46
Благодарил (а): 284 раз.
Поблагодарили: 639 раз.
Опыт программирования: Больше трех лет
Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Non Sense » 06 дек 2017, 21:21

Fedcomp писал(а):о #define там не будет ни слова, это директива компилятора и используется только во время компиляции. В конечном плагине все константы будут подставлены.

Выходит, если я не знаю к какой функции присобачены данные связи с БД (Функции SQL_MakeDbTuple там нет), то и найти инфу о ней я не смогу?!
Аватара пользователя
Non Sense
 
Сообщения: 10
Зарегистрирован: 26 май 2014, 17:27
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Subb98 » 06 дек 2017, 21:43

Non Sense, задача на логику. Дед Ваня спрятал от внука Коли конфету. Коля знает, что конфета спрятана, предположительно, где-то в квартире, но не знает, в которой из комнат. Как поступил Коля?

а) проверил все комнаты подряд
б) проверил сначала комнату деда Вани
в) спросил деда Ваню в лоб: "sudo where my candy, muther fucker?!"
г) купил себе другую конфету
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5485
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1329 раз.
Поблагодарили: 2343 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP

Re: Декомпиляция плагинов (из .amxx в .sma) на основе amxxdu

Сообщение Non Sense » 06 дек 2017, 22:44

Subb98 писал(а):Non Sense, задача на логику. Дед Ваня спрятал от внука Коли конфету. Коля знает, что конфета спрятана, предположительно, где-то в квартире, но не знает, в которой из комнат. Как поступил Коля?

а) проверил все комнаты подряд
б) проверил сначала комнату деда Вани
в) спросил деда Ваню в лоб: "sudo where my candy, muther fucker?!"
г) купил себе другую конфету

Ну, интересная задача конечно, но аналогия не совсем правильная. В нашей, дед Ваня живет в общаге, с тучей комнат. Внук Коля не знает, где комната деда Вани. Дед Ваня, после чего спрятал конфету - обиделся на Колю, ушел, и отказывается говорить где конфета. Коле конфету достать желательно именно эту.
Аватара пользователя
Non Sense
 
Сообщения: 10
Зарегистрирован: 26 май 2014, 17:27
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Пред.След.

Вернуться в Статьи / фрагменты кода

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

Сейчас этот форум просматривают: Google [Bot] и гости: 11