Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
6-100020
Unforgiven
2001-11-08 02:36
2002.01.31
Работа с майлслотами


4-100107
Chup
2001-12-03 12:21
2002.01.31
CreateProcess


1-99992
Анатолий
2002-01-14 07:30
2002.01.31
Animate


1-100010
nikols
2002-01-15 12:05
2002.01.31
Надо конвертировать отчет QuickReport в Excel.


7-100087
headhunter
2001-10-17 10:00
2002.01.31
Звук в реальном времени





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский