![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос про MIDAS!!! [D5, Oracle]
Julya © (2002-08-23 15:15:00)Создаю ActiveX Library, добавляю TRemoteDataModule, ну и кое-какие методы типа Logon(), Get...() Set..() и т.п. Регестрирую DLL. Пишу клиента (использую DCOMConnection). На локальной машине все хорошо... но когда хочешь клиентом приконнектиться к серверу на другой машине выскакивает ошибка "Класс не зарегистрирован". Где грабли, уважаемые мастера?
Romkin (2002-08-29 15:43:00) [1]А чем не устраивает exe?
а dll действительно должна грузится в адресное пространство процесса (клиентской части)
AndrewSM (2002-08-29 14:08:00) [2]>Julya
Если сервер выполняется под Win2000/XP лучше всего использовать COM+ приложения (Transactional Data Module). Появляется много новых возможностей - автоматическая авторизация, диспетчеризация ресурсов, распределенные транзакции и пр.
Digitman (2002-08-29 09:23:00) [3]>Julya
DLL (каково бы ни было ее содержание) не может быть загрежена и выполнена как самостоятельный процесс. Для исполнения тела DLL всегда требуется хост-процесс, в АП которого DLL и загружается. В случае с BSS хост-процессом является процесс самого BSS, поэтому у тебя и "получается". Но это не есть хорошо - использовать ресурсы, распределенные системой BSS-процессу, для исполнения его "телом" инородного ему кода. Основная задача BSS : используя гнездовой транспорт и локальный COM-механизм, осуществлять "посредническую миссию" между двумя распределенными процессами в обход DCOM-механизма (каковой имеет определенные особенности и ограничения)
Julya (2002-08-29 09:01:00) [4]Я использую Socket Server & TSocketConnection, и у меня получается обращаться к другой станции к ДЛЛ !!!
У меня возник такой вопрос: почему все таки надо писать EXE а не DLL (Romkin ответь если знаешь, плиз) и еще может кто знает какие есть подводные камни про работе с DLL??
Всем очень благодарна за помощь!!!
Polevi (2002-08-27 10:56:00) [5]используй Borland Socket Server и TSocketConnection
Romkin (2002-08-27 10:49:00) [6]Ну нельзя так просто с другой станции обратиться к dll, сервер приложений для удаленного доступа должен быть приложением (exe), а никак не библиотекой
Julya (2002-08-27 10:44:00) [7]Все нормально регистрирую! Все эти условия выполняются! Вопрос остается открытым! Помогите, кто знает!!
Digitman (2002-08-23 15:55:00) [8]
> Регестрирую DLL
Где регистрируешь ? Регистрация нужна , в первую очередь, там , где серверная сторона DCOM-механизма будет искать фабрику класса AppServer"а. Именно - на той машине, к которой ты обращается клиент.
Кр.того, на машине-сервере должен быть запущен DCOM-сервер (как NT-сервис или как Win9x-приложение) и в регистрационной базе DCOM-сервера должна присутствовать рег.запись, позволяющая DCOM-серверу стартовать твой AppServer с заданными правами по запросу удаленного DCOM-клиента