Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.02;
Скачать: CL | DM;

Вниз

Ошибка в DLL при помещении её в HKLM->....->AppInit_DLLs   Найти похожие ветки 

 
Ortodocs   (2006-05-22 23:41) [0]

Моя dll-ка написана на Delphi 6.0. Необходимо чтоб она загружалась при запуске сиcтемы, и поэтому прописываю в ручную её в реестре по пути HKLM->SOFTWARE->Microsoft->WindowsNT->CurrentVersion->Windows->ключ AppInit_DLLs c параметром С:\dll.dll. После запуска системы и во время работы начинают выскакивать по 2 ошибки от каждого приложения, которое грузится в данный момент. Хотя dll-ка всё равно выполнят свои обязанности, возложенные мною на неё. Возможно это и было бы связано с тем, что я не правильно написал её код, но даже при создании новой dll-ки через File->New->Other->Dll Wizard в Delphi, не изменяя её:

library dll;
uses
SysUtils,
Classes;
{$R *.res}
begin
end.

всё равно выскакивают по 2 ошибки от каждой программы, такие как:

инструкция по адресу "0x7c918fea" обратилась к памяти по адресу "0x00000010".
Память не может быть "written"

инструкция по адресу "0x003a951d" обратилась к памяти по адресу "0x0000000c".
Память не может быть "written"

При этом мною замечено, что первая ошибка абсолютно одинакова для всех программ, а во второй меняется лишь адрес инструкции, но для каждой программы он постоянен.
Но если я буду загружать свою dll через LoadLibrary, то ошибок нет.
Так же не возникает ошибок, если новая dll была создана в C++Builder.
Если кто знает, как должна быть написана dll, чтоб она работала в моём случае, прошу ответить. Буду признателен.


 
Сергей М. ©   (2006-05-23 08:14) [1]

DLL собрана с ран-тайм пакетами ?


 
Игорь Шевченко ©   (2006-05-23 10:14) [2]

Возможно это связано с тем, что к моменту инициализации DLL еще не до конца проинициализирована user32.dll, а всякие там SysUtils при своей инициализации обращаются к функциям user32.
Откажись от Classes и Sysutils, например


 
Eraser ©   (2006-05-23 10:17) [3]


> Ortodocs   (22.05.06 23:41)

ловушки и MMF используются?


 
Leonid Troyanovsky ©   (2006-05-23 18:37) [4]


> Игорь Шевченко ©   (23.05.06 10:14) [2]

> Откажись от Classes и Sysutils, например


& Variants etc.

--
Regards, LVT.



Страницы: 1 вся ветка

Текущий архив: 2006.07.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.041 c
15-1147688699
Евгений Р.
2006-05-15 14:24
2006.07.02
OnDblClick в DrawGrid


1-1148406755
Juice
2006-05-23 21:52
2006.07.02
Вывести в меню список окон моего приложения


1-1147812521
ychenick
2006-05-17 00:48
2006.07.02
Папки как файлы ( отображение как zip архив)


2-1150366435
BFG9k
2006-06-15 14:13
2006.07.02
Длина динамического массива внутри процедуры


1-1148549206
D@Nger
2006-05-25 13:26
2006.07.02
Работа с считывателем пластиковых карт