Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Минимум АПИ, Нужны советы 
:(
    Опции темы
Sunvas
Дата 10.9.2006, 00:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Как свести к минимуму использование апи функций в программе? Нужны конструктивные советы. Может у кого-нить найдуться исходники неких апи функций на асме?


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Alexeis
Дата 10.9.2006, 00:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(Sunvas @  10.9.2006,  00:31 Найти цитируемый пост)
исходники неких апи функций на асме

Это является собственостью Microsoft, а потому если что-то и есть, то это либо украдено, либо дизасемблировано. И то и другое запрещено по закону. Так что в этом здесь не помогут. (Если речь идет о WinApi)


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Sunvas
Дата 10.9.2006, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(alexeis1 @  10.9.2006,  00:45 Найти цитируемый пост)
Так что в этом здесь не помогут. (Если речь идет о WinApi)

Но почему сразу украдено?? Может гении додумались как та или иная процедура работает. Мне всего лишь надо минимум использование апи функций в программе. Нужны советы..


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Alexeis
Дата 10.9.2006, 01:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Ну в конце концов програма работает как клиент, на windows и при любой необходимость обо всем просит Win Api. Можно, конечно, написать сервис ядра который будет ко всему железу обращатся без api, но это будет не унивесально, только для того железа для которого будет предусмотрено. Но смысл Api дать универсальный аппаратно-независимый логический интерфес, где не надо себе ни чем морочить голову. Выходя из Api программа попадает во времена "ДОС". Где все нужно делать самому. А это более громоздко и не универсально.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
BUGOR
Дата 10.9.2006, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Да не, ну в ДОСе были прерывания, тоже довольно универсальная штукаsmile

А вообще вопрос неккоректен. Какие именно API функции ты хочешь заменить? Если функции которые "ниже" ring3 не уходят(wsprintf lstrlen и т.д.), то не вижу проблемы, если режима ядра, то их можно вызывать через системные сервисы(с помощью sysenter или int 2Eh), но в каждой системе(даже сервиспаке) номера сервисов разные, а это дополнительный гемморой. 

Это сообщение отредактировал(а) BUGOR - 10.9.2006, 09:10


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
RideX
Дата 10.9.2006, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 94
Регистрация: 8.9.2004

Репутация: 4
Всего: 7



Sunvas, пиши прогу под MS-DOS, или юзай Native API (ф-ции режима ядра). Хотя это посложнее будет чем Win32 API. Самый простой примерчик:
Код

implementation

{$R *.dfm}

const
 KeyName = '\Registry\Machine\SOFTWARE\NewKey';

 
procedure TForm1.Button1Click(Sender: TObject);
var
 uKeyName: TUnicodeString;
 attr: TObjectAttributes;
 hKey: dword;
begin
  RtlInitUnicodeString(@uKeyName, KeyName);
  InitializeObjectAttributes(@attr, @uKeyName, OBJ_CASE_INSENSITIVE, 0, nil);
  ZwCreateKey(@hKey, KEY_ALL_ACCESS, @attr, 0, nil, REG_OPTION_NON_VOLATILE, nil);
  ZwClose(hKey);
end;

end.

PM   Вверх
BUGOR
Дата 10.9.2006, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Так он же вроде вообще про API говорил, а ты ему Native API предлагаешь, это же те же апи, только вызываются из другой библиотекиsmile


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Snowy
Дата 10.9.2006, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(Sunvas @  10.9.2006,  00:31 Найти цитируемый пост)
Как свести к минимуму использование апи функций в программе?
Не использовать никаких функций. Только синтаксис языка smile

Цитата(Sunvas @  10.9.2006,  00:31 Найти цитируемый пост)
Может у кого-нить найдуться исходники неких апи функций на асме?
Ты собераешься на асме обращаться к диску? Или к клаве? Или к монитору? В винде? Не используя API? Дохлый номер.
Ну, если тебе не нужен интерфейс ввода-вывода, то можно.
Только программа не будет получать ни откуда данные и никуда их не будет выводить.

- Вот написал программу?
- А что она делает?
- А фиг знает - она не говорит smile

PM MAIL   Вверх
BUGOR
Дата 10.9.2006, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Цитата

Ты собераешься на асме обращаться к диску? Или к клаве? Или к монитору? В винде? Не используя API? Дохлый номер.
Ну, если тебе не нужен интерфейс ввода-вывода, то можно.
Только программа не будет получать ни откуда данные и никуда их не будет выводить.


Бред. 


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
RideX
Дата 10.9.2006, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 94
Регистрация: 8.9.2004

Репутация: 4
Всего: 7



Цитата(BUGOR @  10.9.2006,  13:03 Найти цитируемый пост)
Так он же вроде вообще про API говорил, а Native API предлагаешь, это же те же апи, только вызываются из другой библиотеки

Они вызываются из ntdll/ntoskrnl, и вообще-то не те же, это "ядерные", т.е. Ring0 функции  smile Иначе как ты себе представляешь, каким образом он собирается взаимодействовать с операционной системой, так что ли:
Цитата(BUGOR @  10.9.2006,  12:08 Найти цитируемый пост)
их можно вызывать через системные сервисы(с помощью sysenter или int 2Eh)
Так это никакие не сервисы, это шлюз в Ring0, соответственно для WindowsXP/Windows 2000

Цитата(Sunvas @  10.9.2006,  03:31 Найти цитируемый пост)
Может у кого-нить найдуться исходники неких апи функций на асме?
Что значит исходники? Исходники экспортируемых функций из системных библиотек? Вообще в Инете где-то были исходники Windows, но сразу скажу, что у меня их нет.

PM   Вверх
BUGOR
Дата 10.9.2006, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



RideX
Цитата

Они вызываются из ntdll/ntoskrnl, и вообще-то не те же, это "ядерные", т.е. Ring0 функции   Иначе как ты себе представляешь, каким образом он собирается взаимодействовать с операционной системой, так что ли:


Я вообще-то написал, что это Native API, я в курсе, что они исполняются в Ring0, но, что это принципиально меняет я не понимаю? Вопрос стоит как избавиться от АПИ, а ты вместо юзермодных предлагаешь ядерные, а что это меняет? Только имена функций и библиотеки из которых они импортируются. 


Цитата

так что ли:


Именно так, а чем предложенный мною вариант не подходит, в контексте данной темы?

Цитата


Цитата
их можно вызывать через системные сервисы(с помощью sysenter или int 2Eh)


Так это никакие не сервисы, это шлюз в Ring0, соответственно для WindowsXP/Windows 2000


Ты о чём вообще? Чтобы корректно вызвать sysenter или int 2Eh в eax надо положить номер сервиса.
Бог ты мой... Ну да на >= 2k будет работать точно, хотя скорее всего вообще на всей линейке NT будет работать, а может и на 98/Me или ты проверял, чтобы это утверждать?


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
RideX
Дата 10.9.2006, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 94
Регистрация: 8.9.2004

Репутация: 4
Всего: 7



Цитата(BUGOR @  10.9.2006,  18:15 Найти цитируемый пост)
ты вместо юзермодных предлагаешь ядерные, а что это меняет?
То, что юзермодные функции уже не используются.

Цитата(BUGOR @  10.9.2006,  18:15 Найти цитируемый пост)
чем предложенный мною вариант не подходит, в контексте данной темы?
Твой вариант использует функции ntoskrnl, ты понимаешь эту тему как полный отказ от использования API. Если ты считаешь это приемлемым, почему ты считаешь что нельзя использовать Native API, которые вернут тебе номер вызываемой ф-ции, а предлагаешь, как я понял, вручную подставлять их значения перед sysenter. К чему эта половинчатось? Тогда уж полностью отказывайся от использования функций Windows и не юзай ntoskrnl.

Цитата(BUGOR @  10.9.2006,  18:15 Найти цитируемый пост)
Ты о чём вообще?

Только лишь о том, что sysenter - это команда перехода в Ring0, т.е. в ntoskrnl.exe

Цитата(BUGOR @  10.9.2006,  18:15 Найти цитируемый пост)
Бог ты мой... Ну да на >= 2k будет работать точно, хотя скорее всего вообще на всей линейке NT будет работать, а может и на 98/Me или ты проверял, чтобы это утверждать?

Что я должен проверять, утверждаю что, про sysenter что ли? Так это в Intel Architecture Software Developer’s Manual написано, SYSENTER - Fast System Call, transfers to a flat protected mode kernel. И вообще, покажи где я говорил что что-то где-то не работает и про передачу параметров.
PM   Вверх
BUGOR
Дата 10.9.2006, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Цитата

То, что юзермодные функции уже не используются.


А где в теме сказано, что нужно избавиться от вызова только лишь юзермодных апи? Там сказано от АПИ в целом.

Цитата

Твой вариант использует функции ntoskrnl, ты понимаешь эту тему как полный отказ от использования API. Если ты считаешь это приемлемым, почему ты считаешь что нельзя использовать Native API, которые вернут тебе номер вызываемой ф-ции, а предлагаешь, как я понял, вручную подставлять их значения перед sysenter. К чему эта половинчатось? Тогда уж полностью отказывайся от использования функций Windows и не юзай ntoskrnl.


Вызов функций через системные сервисы  не использует ни экспорт, ни импорт файлов. Предложенный тобою вариант:
ZwCreateKey(@hKey, KEY_ALL_ACCESS, @attr, 0, nil, REG_OPTION_NON_VOLATILE, nil);

Это вызов функции которая ЭКСПОРТИРУЕТСЯ из ntdll.dll.

Цитата

Только лишь о том, что sysenter - это команда перехода в Ring0, т.е. в ntoskrnl.exe


Ну так я же с этим не спорюsmile

Цитата

Что я должен проверять, утверждаю что, про sysenter что ли? Так это в Intel Architecture Software Developer’s Manual написано, SYSENTER - Fast System Call, transfers to a flat protected mode kernel. И вообще, покажи где я говорил что что-то где-то не работает и про передачу параметров


Заметь, я везде на ряду с sysenter(а он появился вроде только в 2k) упоминаю int 2Eh. Ты в своём посте написал:
Цитата

соответственно для WindowsXP/Windows 2000

Я так понял ты имел ввиду, что это актуально только для этих систем. Я с этим не спорю, т.к. на других не проверял, хотя ntdll.dll есть и в 98 и в Me.

Добавлено @ 17:12 
Ну всё, я допёр, что ты имеешь ввиду... Да, я вызываю API, но в обход импорта и экспорта файлов, я думал автор топика именно этого хочет добиться. 

Это сообщение отредактировал(а) BUGOR - 10.9.2006, 17:10


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
RideX
Дата 10.9.2006, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 94
Регистрация: 8.9.2004

Репутация: 4
Всего: 7



BUGOR, ага, понятно smile Тогда, думаю, автору топа надо смотреть в сторону кроссплатформенных приложений, там, по идее, использование ф-ций API должно быть минимальным.
PM   Вверх
RA
Дата 10.9.2006, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Брутальный буратина
****


Профиль
Группа: Участник Клуба
Сообщений: 3497
Регистрация: 31.3.2002
Где: Лес

Репутация: 14
Всего: 115



Цитата(Sunvas @  10.9.2006,  00:31 Найти цитируемый пост)
Как свести к минимуму использование апи функций в программе

 А что за нужда такая? 

PS:
Если ты хочешь скрыть таблицу импорта то есть другой способ .....
PM   Вверх
Sunvas
Дата 11.9.2006, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(RAdmin @  10.9.2006,  20:26 Найти цитируемый пост)
А что за нужда такая? 

На компах, куда я вынужден сливать свои программы некоторые АПИ функции отключены!! Я не знаю какие именно. Это сделано из соображений безопасности, но у меня из-за этого даже простой вызов Findwindow полностью глючит программу. Я уже очень долго мирюсь с этим... Просто надоело - пытаюсь найти хоть какой-нить выход.


Цитата(RAdmin @  10.9.2006,  20:26 Найти цитируемый пост)
Если ты хочешь скрыть таблицу импорта то есть другой способ .....

ЗЫ ну подскажи.. (хотя это мне это нужно всего лишь из-за любознательности).


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
dumb
Дата 12.9.2006, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



Цитата(Sunvas @  11.9.2006,  22:41 Найти цитируемый пост)
На компах, куда я вынужден сливать свои программы некоторые АПИ функции отключены!!

скорее всего, дело в отсутствии административных прав у пользователя. даже если что-то и ограничивает использование "опасных" функций, есть большие сомнения что FindWindow попала в их ряды. опять же, ограничение этих самых "опасных" функций состоит лишь в том, что при их использовании будет возвращаться ошибка. только и всего.

Цитата(Sunvas @  11.9.2006,  22:41 Найти цитируемый пост)
даже простой вызов Findwindow полностью глючит программу

а такого рода явления, скорее всего, есть следствие недостаточного контроля ошибок.

Цитата(Sunvas @  11.9.2006,  22:41 Найти цитируемый пост)
Я уже очень долго мирюсь с этим... Просто надоело - пытаюсь найти хоть какой-нить выход.

выход - нормально исследовать ситуацию. ограничения прав, стоящее ПО, итд итп.
PM MAIL   Вверх
Sunvas
Дата 12.9.2006, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(dumb @  12.9.2006,  00:04 Найти цитируемый пост)
а такого рода явления, скорее всего, есть следствие недостаточного контроля ошибок.

Ошибки я хорошо контролирую. Даже пустая форма с кнопочкой, в Onclick которой написана данная функция страшно пугает ошибками памяти.


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
dumb
Дата 13.9.2006, 02:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



так что за ПО то там стоит? описываемая тобой ситуевина отдает какой-то дурно пахнущей мистикой. user posted image
PM MAIL   Вверх
Sunvas
Дата 13.9.2006, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(dumb @  13.9.2006,  02:27 Найти цитируемый пост)
так что за ПО то там стоит?

ПО - стандартное. Есть касперский, но он не насторен чему-то вредить....
Мне кажется, что АПИ функции отключены путем перекомпилирования системных библиотек..


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
dumb
Дата 14.9.2006, 02:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



Цитата(Sunvas @  13.9.2006,  21:45 Найти цитируемый пост)
Мне кажется, что АПИ функции отключены путем перекомпилирования системных библиотек..

ага, точно - windows ж open source! user posted image
возьми, например, avz и просканируй систему, а не рассказывай "байки из склепа". user posted image
PM MAIL   Вверх
Sunvas
Дата 14.9.2006, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(dumb @  14.9.2006,  02:41 Найти цитируемый пост)
ага, точно - windows ж open source! 

Путем тупого дизасемблирования и правки ассемблерного кода! Все делается из под доса, так что винда ничего не видит и не знает. Даж сам когда-то видел как такое делается...


Цитата(dumb @  14.9.2006,  02:41 Найти цитируемый пост)
"байки из склепа".

Это не байки, это горькота жизни.


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Damarus
Дата 14.9.2006, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 671
Регистрация: 6.5.2006

Репутация: нет
Всего: 29



Цитата(Sunvas @  14.9.2006,  19:00 Найти цитируемый пост)
Путем тупого дизасемблирования и правки ассемблерного кода! Все делается из под доса, так что винда ничего не видит и не знает. Даж сам когда-то видел как такое делается...

И как тот, кто правил, не повесился smile 
PM MAIL ICQ Jabber   Вверх
Yanis
Дата 15.9.2006, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(Snowy @  10.9.2006,  12:06 Найти цитируемый пост)
Только синтаксис языка 

Синтаксис языка (по крайней мере Delphi) использует WinAPI функции smile


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
dumb
Дата 15.9.2006, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



Цитата(Sunvas @  14.9.2006,  18:00 Найти цитируемый пост)
Путем тупого дизасемблирования и правки ассемблерного кода!

ты когда-нибудь пробовал? собрать рабочий модуль из дизассемблированного листинга - весьма нетривиальная задача, если речь не идет о программе типа "hello world". задачи такого рода(изменение поведения функций) решаются перехватом. дизасм в таких случаях помогает, а не решает.
PM MAIL   Вверх
Sunvas
Дата 15.9.2006, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(Damarus @  14.9.2006,  18:52 Найти цитируемый пост)
И как тот, кто правил, не повесился  

Повеселился - процедуры же не работают!


Цитата(dumb @  15.9.2006,  10:28 Найти цитируемый пост)
изменение поведения функций

Я же не говорю, чтобы поведение функций изменить! Можно из просто-на-просто запортить изменяя je на jne. Есть более продвинутые программы (платные), которые позволяют тем, кто сечет в ассемблере делать другие навороченые вещи. Одна такая программа кажись называется (точно не помню) "*** DrHack"


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
dumb
Дата 15.9.2006, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



процесс изменения hex-редактором кода системных библиотек, да еще и так, что они начинают сыпать ошибками, называется не "перекомпилирование системных библиотек", а идиотизм. за такое руки надо отрывать.
бороться с этим не надо, надо просто либо систему переставлять, либо взять основные системные dll из винды той же сборки и записать поверх испорченных.
PM MAIL   Вверх
Sunvas
Дата 15.9.2006, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(dumb @  15.9.2006,  16:11 Найти цитируемый пост)
либо взять основные системные dll из винды той же сборки и записать поверх испорченных.

Интересно, как ты это сделаешь на системе НТФС да еще и в винде?


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Damarus
Дата 15.9.2006, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 671
Регистрация: 6.5.2006

Репутация: нет
Всего: 29



Цитата(Sunvas @  15.9.2006,  19:10 Найти цитируемый пост)
Интересно, как ты это сделаешь на системе НТФС да еще и в винде?

sfc /scannow
PM MAIL ICQ Jabber   Вверх
RA
Дата 15.9.2006, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Брутальный буратина
****


Профиль
Группа: Участник Клуба
Сообщений: 3497
Регистрация: 31.3.2002
Где: Лес

Репутация: 14
Всего: 115



Или из доса.
PM   Вверх
Sunvas
Дата 15.9.2006, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(RA @  15.9.2006,  19:55 Найти цитируемый пост)
Или из доса.

В нтфс из под доса. Я знаю всего одну програму, которая может писать в НТФС из под доса. Но для этого мне надо еще и с чего-то загрузиться, а возможности у меня нет.
ЗЫ назови хоть одну толковую программу, которая могла бы писать в НТФС из под доса.

Цитата(Damarus @  15.9.2006,  18:16 Найти цитируемый пост)
sfc /scannow

А без диска никак! Там сидюков нет!

Давайте не будем отклоняться от темы!


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Damarus
Дата 16.9.2006, 06:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 671
Регистрация: 6.5.2006

Репутация: нет
Всего: 29



Цитата(Sunvas @  15.9.2006,  22:48 Найти цитируемый пост)
Давайте не будем отклоняться от темы!

А куда здесь отклонятся smile Если системные библиотеки повреждены, ты тут ничего не сделаешь.
PM MAIL ICQ Jabber   Вверх
Mr.Floppy
Дата 18.9.2006, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 3.7.2006
Где: Москва

Репутация: 1
Всего: 1



Цитата
Как свести к минимуму использование апи функций в программе?


Писать свои драйвера для низкоуровневого доступа к железу и обращаться к ним. Короче - половина операционки smile
PM MAIL   Вверх
RA
Дата 18.9.2006, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Брутальный буратина
****


Профиль
Группа: Участник Клуба
Сообщений: 3497
Регистрация: 31.3.2002
Где: Лес

Репутация: 14
Всего: 115



Цитата(Sunvas @  15.9.2006,  21:48 Найти цитируемый пост)
ЗЫ назови хоть одну толковую программу, которая могла бы писать в НТФС из под доса.

Волков, нортон и тп. но если загружаться несчего тогда пззззз.
PM   Вверх
Sunvas
Дата 21.9.2006, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(RA @  18.9.2006,  13:26 Найти цитируемый пост)
Волков, нортон и тп. но если загружаться несчего тогда пззззз.

Дану! А у меня че-то не пишут. Грузился када-то с дискеты 98, грузил волков и нортон - НТФС даже не  видели, не то, чтоб даже читали!


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Akella
Дата 22.9.2006, 08:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Цитата(Snowy @  10.9.2006,  11:06 Найти цитируемый пост)
- Вот написал программу?
- А что она делает?
- А фиг знает - она не говорит smile

 smile  smile  smile 

Цитата(Sunvas @  11.9.2006,  22:41 Найти цитируемый пост)
даже простой вызов Findwindow полностью глючит программу.

а как же сама винда работает?

Добавлено @ 08:14 
Sunvas, а если в папку своей программы кинуть системные библиотеки.... и работать с ними
PM MAIL   Вверх
Sunvas
Дата 22.9.2006, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(Akella @  22.9.2006,  08:12 Найти цитируемый пост)
а как же сама винда работает?

Цитата(Akella @  22.9.2006,  08:12 Найти цитируемый пост)
- А фиг знает - она не говорит smile

 smile  smile  smile 
Цитата(Akella @  22.9.2006,  08:12 Найти цитируемый пост)
Sunvas, а если в папку своей программы кинуть системные библиотеки.... и работать с ними

О! Первая умная мысль за все время конференции.
Из этого следуют вопросы: а могут ли быть конфликты из-за этого? Вызовы процедур из таких библиотек можно ли перехватить?





--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
dumb
Дата 23.9.2006, 03:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



Цитата(Sunvas @  22.9.2006,  15:10 Найти цитируемый пост)
Вызовы процедур из таких библиотек можно ли перехватить?

перехватить можно все.

для того, чтобы использовались "свои" dll, их нужно динамически подгружать, причем с указанием пути(например: LoadLibrary(".\kernel32.dll")). во всех остальных случаях будут использоваться библиотеки системы... хотя, можно и со статическим импортом повеселиться - законных способов сделать такое не припомню, а руками примерно так: переименовать kernel32.dll в krnl32.dll и в хекс-редакторе заменить строку(и) "KERNEL32.DLL" на ".\KRNL32.DLL"...
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1577 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.