Форум: "Базы";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
ВнизMIDAS, Сервер приложений в виде DLL Найти похожие ветки
← →
Slava (2001-12-27 10:17) [0]Как зарегистрировать Remote Data Module, если он находится в DLL?
С .exe все понятно: один раз запустил и все, а с DLL заминочка вышла :о(
← →
GreySerg (2001-12-27 10:45) [1]посмотри DLLRegisterServer
← →
Slava (2001-12-27 10:52) [2]А что там надо посмотреть?
Сама DLL регистрируется: regsvr32 my.dll. Здесь все нормально.
А вот Remote Data Module,который в ней - нет.
← →
Slava (2001-12-27 12:09) [3]Вопрос открыт...
← →
Romkin (2001-12-27 12:22) [4]Если все нормально написано - все соединится. При регистрации через regsvr32 регистрируется все Factory, у которых не Internal.
Советую попробовать зарегистрировать через TRegSvr (Delphi/bin)
← →
Slava (2001-12-27 12:43) [5]Мда..а
Все дело оказалось в винде (как всегда :))
Что-то там сломалось.
Перезагрузил и все ОК.
Спасибо.
P.S. Сейчас попробую удаленно...
← →
Slava (2001-12-27 12:58) [6]Не получилось удаленно...
По-моему уже кто-то здесь вопрос этот задавал.
Если подкючаться через TSocketConnection, то все пучком, а если через TDCOMConnection, то "Класс не зарегистрирован."
Кто знает почему?
← →
Romkin (2001-12-27 12:59) [7]DLL на другой станции никогда не подключишь - должна находится на том же компе, что и клиент
← →
Slava (2001-12-27 13:08) [8]> Romkin
Почему? Где написано?
Почему тогда из dcomcnfg его видно?
А если это так, то другой вопрос:
Как можно exe разрегить?
А то мусор в реестре копится...
← →
Romkin (2001-12-27 13:23) [9]Потому что DLL грузится в адресное пространство процесса, а он на другой машине...
разрегистрация для Delphi Server.exe /unregserver, если не ошибаюсь
← →
Slava (2001-12-27 13:38) [10]ОК. Разрегистрировались.
Спасибо!
P.S. Но про DLL все равно непонятно...
← →
Romkin (2001-12-27 13:45) [11]Ну невозможна ситуация, когда процесс работает на одной машине, а dll, к нему подключенная - на другой. К тому же, при удаленном доступе делается marshalling, через IDispatch или собственный прокси, а в DLL можно подключаться через IUnknown
Возможно, DCOM подгрузит, если указать, что сервер должен выполняться на стороне клиента... проволочет на машину и там подгрузит, но вряд ли. Но это так же, как и просто на машине - с настройкой возится не надо.
← →
Slava (2001-12-29 10:02) [12]Вот ведь блин, а?
Проблема следующая:
Есть 2 компа: "МОЙ_КОМП" (Delphi6) и "НЕ_МОЙ_КОМП" (нет Delphi).
На обоих зарегин RemoteDataModule.
Создаю клиентское приложение с TDCOMConnection.
В Объект Инспекторе
Прописываю ComputerName:="НЕ_МОЙ_КОМП",
Connected:=True.
Все ОК. (сервер поднимается).
Компилирую. Запускаю. Ничего не происходит. Даже в списке процессов процесса такого нет. А на сервере server.exe поднимается,
но подключения к RemoteDataModule не происходит!!!
Ставлю Connected:=False и пытаюсь подключиться программно: ошибка
"Интерфейс не поддерживается". В дебаггере - тоже самое.
Прописываю ComputerName:="МОЙ_КОМП", запускаю клиента с "НЕ_МОЙ_КОМП" - ВСЕ ОК! Иду на 3-тий комп - тоже все ОК.
(все нормально подключается, сервер поднимается)
"МОЙ_КОМП" - W2K PRO
"НЕ_МОЙ_КОМП" - W2K PRO
3-тий комп - W2K SERVER
Romkin, на тебя все надежда. Заранее СПАСИБО!
← →
Slava (2001-12-29 10:43) [13]ВСЕ!
РАЗОБРАЛСЯ!
Во всем "виноват" антивирусник, который по-умолчанию блокирует
все на..р
E-Safe называется...
Прошу прощения.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.004 c