Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Проблема с загрузкой dll при автозапуске [delphi] |

26.03.2008, 20:30
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 68
Провел на форуме: 140772
Репутация:
72
|
|
Проблема с загрузкой dll при автозапуске [delphi]
Вознила проблема такого плана: файл загрузчик библиотеки dll прописан в автозапуске винды, при обычном запуске все протекает нормально программа подключает dll, но вот при автозапуске(после перезагрузки или выключения ПК) файл незагружает dll или загружает, но функции библиотеки непашут. Библиотека находится в той же папке, что и программа загрузчик, атозапуск осуществляется через реестр вот отсюда: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Run.
Подскажите как решить данную проблему.
Код подключения к dll:
Код:
function FookKB: Longint;stdcall; external 'bbl.dll' name 'InstallHook';
function UnFookKB: Longint;stdcall; external 'bbl.dll' name 'RemoveHook';
Сама dll:
Код:
var
Hk: HHook;
function Proc(nCode: Integer; wParam, lParam: Integer): Integer; stdcall;
function MainWnd: HWnd;
begin
Result := FindWindow( nil, 'Hook' );
end;
var K: HKL;
begin
if nCode >= 0 then
begin
case nCode of
HSHELL_WINDOWACTIVATED,
HSHELL_LANGUAGE:
begin
K:=GetKeyboardLayout(0);
SendMessage( MainWnd, $0400 + 2, wParam, k );
end;
end;
end;
Result := CallNextHookEx( Hk, nCode, wParam, lParam);
end;
procedure InstallHook;
begin
Hk := SetWindowsHookEx( WH_SHELL, @Proc, Hinstance, 0 );
end;
procedure RemoveHook;
begin
UnhookWindowsHookEx( Hk );
end;
exports InstallHook, RemoveHook;
Последний раз редактировалось Dr.KoD; 26.03.2008 в 20:49..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|