Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > dll для Notify


Автор: Beg1nner 26.10.2009, 20:46
доброе время суток.
Прошу помочь со следующей проблемой.
Прочитал http://www.rsdn.ru/article/baseserv/winlogon.xml про Notify но не могу сделать правильно dll.
Делаю как написано (вроде бы), tdump показывает экспорт. ф-ции: 
Код

Exports from dll.dll
  10 exported name(s), 10 export addresse(s).  Ordinal base is 1.
  Sorted by Name:
    RVA      Ord. Hint Name
    -------- ---- ---- ----
    00001A5C    8 0000 WLEventLock
    000019E4    3 0001 WLEventLogoff
    000019CC    2 0002 WLEventLogon
    00001A14    5 0003 WLEventShutdown
    00001A2C    6 0004 WLEventStartScreenSaver
    00001A8C   10 0005 WLEventStartShell
    000019FC    4 0006 WLEventStartup
    00001A44    7 0007 WLEventStopScreenSaver
    00001A74    9 0008 WLEventUnlock
    000030EC    1 0009 ___CPPdebugHook


но dll не грузиться в отличии от примера на vc =((

помогите, что делаю_не_правильно/вообще_не_делаю...

[censored] забыл файл приложить.... =(

M
dumb
нецензурная лексика в любых видах, мягко говоря, не приветствуется.

Автор: Alexeis 26.10.2009, 20:49
Цитата(Beg1nner @  26.10.2009,  19:46 Найти цитируемый пост)
помогите, что делаю_не_правильно/вообще_не_делаю...

  Ошибка в 17й строке.

Автор: Beg1nner 26.10.2009, 21:52
2Alexeis
сорри, файл проекта не приложил, можно еще раз ? =)

Автор: Alexeis 26.10.2009, 22:12
Цитата(Beg1nner @  26.10.2009,  19:46 Найти цитируемый пост)

но dll не грузиться в отличии от примера на vc =((

  Как это видно что не грузиться? Нет в списке Dll загруженного процесса? В реестре все правильно внесено? 

Автор: Beg1nner 26.10.2009, 23:38
Цитата(Alexeis @  26.10.2009,  20:12 Найти цитируемый пост)
 Как это видно что не грузиться?

Не создается лог-файл + нет в списке процесса.
В реестр всё внесено правильно, потому как аналог на vc работает нормально
 http://www.rsdn.ru/article/baseserv/winlogon/Notify.rar 

Автор: dumb 26.10.2009, 23:39
возможно, влияет старое-доброе(или таки злое? smile):
Код

    <DynamicRTL>true</DynamicRTL>
    <UsePackages>true</UsePackages>

если переключение этих опций не поможет, то показывай саму .dll

Автор: Beg1nner 27.10.2009, 19:14
2dumb
спасибо, да проблема была именно в этом.
Просто еще не знаком плотно с builder'ом и данная ситуация честно говоря ставила в тупик... 
с одно стороны как бы правильно...  а с другой не работает..... =)
всем спасибо еще раз. =)

Автор: Alexeis 27.10.2009, 20:42
dumb, а как это может повредить, ведь если на машине установлен билдер, то все необходимые библиотеки есть?

Автор: dumb 27.10.2009, 22:56
Цитата(Alexeis @  27.10.2009,  21:42 Найти цитируемый пост)
а как это может повредить, ведь если на машине установлен билдер, то все необходимые библиотеки есть? 

предполагаю, что путь к BIN'ам билдеровским прописывается не в обще-системную переменную окружения Path, а в пользовательскую. соответственно, при попытке загрузки такой(как получилась выше) .dll в контексте процесса winlogon(запускаемого от SYSTEM), не обнаруживаются куски RTL(cc32xx/mt.dll, borlndmm(или как там его), etc), лежащие в BIN'е.

Автор: Alexeis 28.10.2009, 00:29
Цитата(dumb @  27.10.2009,  21:56 Найти цитируемый пост)
предполагаю, что путь к BIN'ам билдеровским прописывается не в обще-системную переменную окружения Path

  У меня в системной. bpl пишутся в system32. Вероятно винлогон сам портачит с переменными окружения...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)