Предварительные условия для прокси-сервера DCOM для подключения приложения DCOM к машине arerote через олицетворение

У нас есть приложение DCOM с множеством методов для бизнеса. Приложение написано на VC6 и работает нормально и развернуто как DLL.

При вызове с компьютера, на котором размещена библиотека DCOM (сервер DCOM), приложение, которое использует компоненты DCOM, работает нормально.

РЕДАКТИРОВАТЬ 4:
Приложение DCOM размещается со следующими свойствами

введите описание изображения здесь

Проблема заключается в распределенном развертывании, когда прокси-сервер приложения DCOM экспортируется (через Экспорт в качестве прокси-сервера из DCOMCNFG) и устанавливается на другом ПК (клиент DCOM). В этом случае тестовое приложение DCOM не работает.

При проверке предпосылок мы нашли следующие условия

  1. Сервер и клиент DCOM должны находиться в одной рабочей группе или
    Домен (оба ПК сейчас в одной РАБОЧЕЙ ГРУППЕ)
  2. Оба ПК должны быть доступны
  3. Следует добавить соответствующие исключения брандмауэра или брандмауэр в обоих
    ПК или нужно выключить
  4. Оба ПК должны иметь логин с одним и тем же именем пользователя и паролем (один пользователь с именем ‘demoUser’ был создан на обоих ПК с одним и тем же паролем)

Мы сделали все необходимые условия, но приложение не работает 🙁

Мы что-то пропустили или какие-либо настройки?

Пожалуйста, ведите меня. Заранее спасибо.

РЕДАКТИРОВАТЬ 1: Тестовое приложение не в состоянии создать сам объект при попытке на стороне клиента.

РЕДАКТИРОВАТЬ 2: [Решено] Ошибка

Ошибка и код ошибки

РЕДАКТИРОВАТЬ 3:
Когда оба компьютера были подключены к одной подсети (между подсетями был установлен аппаратный брандмауэр), эта проблема решена.

[Новая ошибка] Если оба компьютера вошли в систему с одним и тем же пользователем с одинаковым паролем, приложение работает, хотя и в WORKGROUP. Но если пароль изменяется на любом ПК, приложение выдает следующую ошибку.

System.InvalidCastException: Unable to cast COM object of type 'MyDCOM.ApplicationClass' to interface type 'MyDCOM.IApplication'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{18B31ADE-04BF-445A-ADE9-0984EBF49D8F}' failed due to the following error: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)).

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector