powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Декомпилятор для Firebird
25 сообщений из 94, страница 2 из 4
Декомпилятор для Firebird
    #39021207
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012Хорошо что-то декомпилирую.
Но потом это что компилируется /под другим именем процедуры/ и сравнивается бинарный код
оригинального и декомпилированного /после компиляции/.
И все ok.
Так что это не что-то ...

Это все зашибись. И что с этим делать, как на практике использовать? Единственное, что в голову приходит - восстановление кода процедур/триггеров в базах, в которых он по каким-то причинам убит. Есть еще варианты?
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021214
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertЕсть еще варианты?
При декомпиляции имеются "все" что нужно программисту, который например решит написать debugger
скриптов.

IBExpertвосстановление кода процедур/триггеров в базах,
Пригодится тем кто отвечает за эксплуатацию "брошенных" проектов ... ... ...

PS: Вообщем декомпилятор свою задачу решает.
И понятно это не инструмент для разработки.
Была у меня мысль написать и парсер для SQL /получение бинарного кода скриптов/ с продвинутыми
возможностями, но пока для меня это не главное.
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021218
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012Посмотри на fbc правильно кавычки я поставил?
. . .
Command to be executed now:

C:\"Program Files (x86)"\Firebird\Firebird_2_5\bin\isql 127.0.0.1/3050:C:\src\ab_demo.fdb -nod -pag 0 -i C:\src\logs.oltp25\1build_oltp_emul_25.tmp -m -o C:\src\logs.oltp25\1build_oltp_emul_25.err -user SYSDBA -pas masterkey

Result:
Unable to open
. . .
Unable to open вроде связано с -i C:\src\logs.oltp25\1build_oltp_emul_25.tmp
Но он имеется в наличии!repeat {
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1168724&msg=17966098
} until <что-то-не-прокатывает-опять>
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021220
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидв кр случае, создайте пустую базу, запустите ISQL и далее в нём вводите:А вот это message не досмотрел.
"Шас спою".
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021222
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь но на завтра от меня ждут "победы"
/вообщем проект на выходе и начальник хочет в понедельник видеть то, что он хочет увидеть/.

Sorry.
Дискуссию не прерываю.
Но у текущей работы больше прав, чем у меня.
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021225
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012При декомпиляции имеются "все" что нужно программисту, который например решит написать debugger скриптов.


Для отладки скриптов декомпилятор не нужен.

Владимир2012Пригодится тем кто отвечает за эксплуатацию "брошенных" проектов ... ... ...


Только если убиты исходные коды объектов в базе. Обычно они имеются.
Т.е., потенциальных пользователей твоего декомпилятора очень немного, и даже им он нужен на один раз.
Хочешь продать - продавай не сам декомпилятор, а услугу по восстановлению кода.
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021228
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertХочешь продать - продавай не сам декомпилятор, а услугу по восстановлению кода.
Меня деньги интересуют /можешь верить, а можешь и не верить/ в том количестве, чтобы мог
оплатить за интернет, квартплата, ... ... /правда иной раз деньги нужны на hardware/,
так что мысль что либо продавать возникает во мне реже чем "палка стреляет".

Не все измеряется деньгами /но какое-то количество все же неизбежно нужно иметь/ ...
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021229
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012 > Ну вот пример результата декомпиляции

Ну чо, вполне сносно, даже больше, чем программа-минимум.
Хотя до удобоваримого варианта ещё далеко, конечно.
Особенно улыбнули даже не Decl_012 - Decl_021, а кусок

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
FOR 
 SELECT    G.KODNP,
          G.KODSTREET,
          G.HOUSE,
          G.CORPUS,
          G.KODSIMVOL,
          G.ID,
          G.AVGID,
          B.STREET
 FROM      ZKP_GRPSCH G
 INTO      :Decl_016,:Decl_017,
          :Decl_019,
          :Decl_020,
          :Decl_021,
          :Decl_012,
          :Decl_013,
          :Decl_022
...
 SELECT    FIRST ( 1 )
          ZKP_LS.ID
 FROM      ZKP_LS
 INTO      :Decl_ID



Но вообще молодец. Сколько времени угрохал?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021243
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамНо вообще молодец. Сколько времени угрохал?
Трудно сказать. Занимался не только декомпилятором.
Был момент забросил его /так как и того что было реализовано вполне хватало/.
Потом глобализация на меня нахлынула и скрупулезно проверил правильность декомпиляции всех
"мелочей".

PS: Да честно скажу давным давно уже и забыл про декомпилятор.
Но вот вчера один из участиков форума искал parser SQL.
Хотел ему помочь, но ему "не угодишь".
"Вспомнил молодость" и подумал не создать ли post про декомпилятор на форуме Firebird.

Ты меня расстроил я думал обратишь внимание на комментарии к закрывающим "скобкам"
END -- BEGIN /IF ( :Decl_USENUM BETWEEN 30000 AND 39999 .../
...

Что касается префикса в именах переменных, то он меняется одной строчкой в декомпиляторе
/не для продажи делалось/.
Вспомнил префикс удобен для рефакторинга декомпилированных текстов процедур с помощью
notepad++/
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021245
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любопытно сейчас автор topc по поиску parser SQL выдал:
HResultДля каждого sentence типа "Select" для каждого клаус (может, и не для каждого, но точно для Select, Order By, Where и Group By) должна быть возможность изменить содержание прямо в структуре и выдать чистый текст запроса назад с учетом всех внесенных изменений.

Пытался ему втолковать /и для этого привел часть кода декомпилятора/, что вот мол смотри имеется
декомпилятор, который закрывает все твои "хотелки".
Но увы "крепкий орешек" оказался. И по моему он так и ничего не понял из тех возможностей декомпилятора,
которые ему были показаны.
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021247
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамОсобенно улыбнули даже не Decl_012 - Decl_021, а кусок
Где у декомпилятора хватало сведений для того, чтобы он мог восстановить имена переменных там он
генерил типа
DECLARE VARIABLE Decl_KREDIT_023 NUMERIC( 12, 4 ) = NULL;

Хотя вот посмотрел на приведенный тобой код декомпилятора и не вооруженным взглядом видно, что
Decl_016 можно было в декомпилированном тексте представить как Decl_KODNP.
Гм. тут и работы на пол дня, но как бы пока "не горит".
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021248
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012Пытался ему втолковать /и для этого привел часть кода декомпилятора/, что вот мол смотри имеется
декомпилятор, который закрывает все твои "хотелки".


Ничего он не закрывает, декомпилятор и парсер - вещи, можно сказать, противоположные.
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021251
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012> Ты меня расстроил

Ну да, налабать целый парсер и не добавить
простой цикл для кол-ва переменных > 1 -
тут есть от чего расстраиваться...

> я думал обратишь внимание на комментарии

Кому они нафиг сдались? Хотя мелочь, приятно, да.

> Что касается префикса в именах переменных

Речь шла не про префикс, а стиль именования.
Delphi ферштейн? Form/Button1-100500 видел?
Никогда не напрягало?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021253
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertНичего он не закрывает, декомпилятор и парсер - вещи, можно сказать, противоположные.
Может быть не правильно понял автора topic, но он как бы хотел все знать об select и ...
Декомпилятор эти данные предоставляет.
Ну вот смотри ты производишь parsing и в этот момент предоставляешь данные об select ...
У меня же тоже самое, но с точностью наоборот ...
Или как?
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021255
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамРечь шла не про префикс, а стиль именования.
Delphi ферштейн? Form/Button1-100500 видел?
Никогда не напрягало?
Туплю.
Приведи пример как надо ...
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021256
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012> Но увы "крепкий орешек" оказался.
Владимир2012> И по моему он так и ничего не понял

Ну это смотря кто из вас орех. :)

Понятное дело, конечно, что своя рубашка ближе к телу и
свой лисапед всегда милее, всех румяней и белее, но таки
декомпилятор и парсер вовсе не одно и то же, так что
вполне вероятно, что твоё творение ему просто не упёрлось.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021257
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012> там он генерил типа Decl_KREDIT_023

А чего 23-то? Почему не 42, 146?

> Хотя вот посмотрел на приведенный тобой код декомпилятора
> и не вооруженным взглядом видно, что Decl_016 можно было
> в декомпилированном тексте представить как Decl_KODNP.
> Гм. тут и работы на пол дня, но как бы пока "не горит".

Хм... Фигасе у вас там оценки времени...
Полдня на один цикл? Дайте две! (с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021258
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустамтак что
вполне вероятно, что твоё творение ему просто не упёрлось.Let it be
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021259
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012> У меня же тоже самое, но с точностью наоборот ...

Смотрю в календарь - воскресенье. Всё врут календари! (с)

Владимир2012> Приведи пример как надо ...

Для начала, не добавлять суффиксы, если они не нужны.
В тех случаях, когда нужны - добавлять их более адекватно.
Предлагаю нумеровать по простым числам натурального ряда. (с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021260
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамХм... Фигасе у вас там оценки времени...
Полдня на один цикл? Дайте две! (с)
Сказал бы на пять минут, то сказали бы - хвастун.

PS: "Всем не угодишь"
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021261
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012> Сказал бы на пять минут, то сказали бы - хвастун.

Предлагаю сторговаться на полчаса. (с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021263
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамПредлагаю нумеровать по простым числам натурального ряда. (с)
Вот вспомнил. Номера в префиксах переменных берутся из псевдокода.
То бишь если бинарном коде скрипта на переменную ссылаются по индексу 23, то и при декомпиляции
имеем :Decl_023
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021265
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамПредлагаю сторговаться на полчаса. (с)
Согласен + 5 минут от меня
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021266
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012Может быть не правильно понял автора topic, но он как бы хотел все знать об select и ...
Декомпилятор эти данные предоставляет.
Ну вот смотри ты производишь parsing и в этот момент предоставляешь данные об select ...
У меня же тоже самое, но с точностью наоборот ...
Или как?

Чтобы декомпилятор что-то там рассказал о селекте, ему надо скормить blr этого селекта.
Чтобы получить blr селекта, текст селекта надо скормить sql парсеру и компилятору.
Вот у автора того топика есть текст селекта, а корма для декомпилятора у него нет.
...
Рейтинг: 0 / 0
Декомпилятор для Firebird
    #39021268
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert, а корма для декомпилятора у него нет.
В нашем магазине колбасу продают ..., ему нужна живая корова ...
...
Рейтинг: 0 / 0
25 сообщений из 94, страница 2 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Декомпилятор для Firebird
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]