powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Remoting + dll
4 сообщений из 4, страница 1 из 1
Remoting + dll
    #35490309
Dima Freger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПОдскажите пожалуйста:

Делаю простейший пример:
1. Объект для предоставления сервером:

using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;

namespace RemObj
{
public class RemoteObject : MarshalByRefObject
{
public RemoteObject ()
{
Console.WriteLine("Remote object activated");
}

public String ReplyMessage(String msg)
{
Console.WriteLine("Client : "+msg);
return "Server : Yeah! I'm here";
}
}
}
делаю их этого всего dll.


2. Сервер


using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
using RemObj;
..........................................................................................
TcpChannel chan = new TcpChannel(8085);
ChannelServices.RegisterChannel(chan);

Type commonInterfaceType = Type.GetType("RemObj.RemoteObject");

RemotingConfiguration.RegisterWellKnownServiceType (commonInterfaceType, "RemotingServer", WellKnownObjectMode.SingleCall);

Console.WriteLine("Server Start");

В результате пишет ошибку:

An unhandled exception of type 'System.ArgumentNullException' occurred in mscorlib.dll
Additional information: Wert darf nicht Null sein.

Просматрива я дебаггером вижу, что значение commonInterfaceType есть null !!!
Не видит никак мою .dll

Подскажите пожалуйста что делаю не верно.
Заранее благодарен!
...
Рейтинг: 0 / 0
Remoting + dll
    #35490369
Фотография ХреноРедька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заместо Type.GetType() лучше испльзовать просто оператор typeof().
А в вашем варианте наверно надо передавать в метод GetType() не только имя типа, но и имя его сборки через запятую (возможно в этом я ошибаюсь).
...
Рейтинг: 0 / 0
Remoting + dll
    #35491422
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima Freger
Вы получили тип обьекта, а инстанс создать забыли.
Попробуйте применить
Код: plaintext
Activator.CreateInstance(....)
Эта функция возвращает обьект указанного типа.
А вообще-то можно и напрямую обьявить

Код: plaintext
RemoteObject commonInterfaceInstance = new RemoteObject ();
...
Рейтинг: 0 / 0
Remoting + dll
    #35491430
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так у меня пробежало без ошибок.

Код: plaintext
1.
2.
Type commonInterfaceType = typeof(RemoteObject);
RemotingConfiguration.RegisterWellKnownServiceType(commonInterfaceType, "RemotingServer", WellKnownObjectMode.SingleCall);

Море излечило меня от Джихада...(с)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Remoting + dll
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]