Сейчас на форуме: tyns777 (+5 невидимых) |
![]() |
eXeL@B —› Программирование —› Windows Password filter (passfilt.dll) |
Посл.ответ | Сообщение |
|
Создано: 21 августа 2007 13:24 · Поправил: Alexus2006 · Личное сообщение · #1 как самому написать такую DLL ??? slil.ru/24762358 (~4.5 Kb) экспортируется всего одна функция PasswordFilter() причем она как то интересно написана т.е. она является точкой входа DLL там где должна быть int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) как это так я вообще не пойму... написал свой dll с экспортом такой же функции всё вроде нормально он блин не работает ![]() Помогите плиз ... ![]() |
|
Создано: 21 августа 2007 13:27 · Поправил: Alexus2006 · Личное сообщение · #2 |
|
Создано: 21 августа 2007 13:38 · Личное сообщение · #3 |
|
Создано: 21 августа 2007 13:38 · Личное сообщение · #4 |
|
Создано: 21 августа 2007 16:57 · Личное сообщение · #5 |
|
Создано: 22 августа 2007 08:14 · Личное сообщение · #6 RamMerlabs это как? функция экспортируется так: __declspec(dllexport) BOOL NTAPI PasswordFilter(PUNICODE_STRING UserName, PUNICODE_STRING FullName, PUNICODE_STRING Password, BOOL SetOperation); То что функция не совсем такая при экспорте получается это я видел только вот как добиться такого же экспорта? ![]() |
|
Создано: 22 августа 2007 08:50 · Личное сообщение · #7 |
|
Создано: 22 августа 2007 09:26 · Личное сообщение · #8 |
|
Создано: 22 августа 2007 15:08 · Поправил: Alexus2006 · Личное сообщение · #9 всё получилось всем спасибо ![]() Теперь ещё вопрос как из своей проги передать в эту функцию параметры: typedef bool (__import * FType(PUNICODE_STRING UserName, PUNICODE_STRING FullName, PUNICODE_STRING Password, BOOL SetOperation)); PUNICODE_STRING UserName; PUNICODE_STRING FullName; PUNICODE_STRING Password; ??? //Загрузил бибилиотеку HINSTANCE dllinstance = LoadLibrary("My_Passfilt.dll"); //Нашел адрес функции FType * TestFunc; TestFunc = (FType *) GetProcAddress(dllinstance, "PasswordFilter"); //теперь по идее можно её вызвать bool res = TestFunc(UserName, FullName, Password, true); Передать параметры ни как не получается ![]() ![]() |
|
Создано: 24 августа 2007 00:02 · Личное сообщение · #10 Тип вызова какой? Для каждого типа вызова параметры передаються по своему (у fastcall в регистрах, stdcall в стэк и т.д.) Нужно знать какой тип вызова... В С как его дописать не знаю, а вот в дельфе мона вот так:
![]() |
|
Создано: 13 сентября 2007 14:53 · Личное сообщение · #11 |
![]() |
eXeL@B —› Программирование —› Windows Password filter (passfilt.dll) |