|
как подключить COM компоненту CSocket к NET проекту
|
|||
---|---|---|---|
#18+
как подключить COM компоненту CSocket к NET проекту. Я хочу подключить к C# проекту класс CSocket из проекта C++. Как мне найти компоненту, которую надо подключать? В C++ MFC проекте присутствует файл c:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxsock.h но он мне не нужен Я пытался подключать dll c:\Windows\System32\wsock32.dll Получается ошибка В описании класса я не нашёл указания на то, в каком файле находится его реализация Подскажите пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.08.2015, 15:12 |
|
как подключить COM компоненту CSocket к NET проекту
|
|||
---|---|---|---|
#18+
Володимир, не похоже что это COM объект. Скорее обычный С++ класс из библиотеки MFC и он не создавался для использования из .NET. Используй родные классы из пространства имен System.Net.Sockets ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2015, 00:34 |
|
как подключить COM компоненту CSocket к NET проекту
|
|||
---|---|---|---|
#18+
Наверно Вы правы Я пробовал использовать аналогичный .NET объект, но не могу подобрать конструктор из множества возможных вариантов Дело в том, что конструктор MFC CSocket вызывается с пустым списком аргументов. А в .NET такого конструктора нет. Прибор, с которым надо связаться на Windows Embedded и пока для меня закрыт, программист в отпуске подсказать некому. Если CSocet применить нельзя, остаётся вопрос Какие настройки поставить для объекта System.Net.Socket: client = new Socket( AddressFamily.?, SocketType.?, ProtocolType.? ); например client = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp ); если известно что IPAddress ip = IPAddress.Parse( "192.168.1.153" ) int port = 5123; . ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2015, 13:17 |
|
как подключить COM компоненту CSocket к NET проекту
|
|||
---|---|---|---|
#18+
Удалось приконнектиться и даже прочитать данные нашлось целых два варианта, чем они отличаются не знаю client = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP ); //connect успешный client = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp ); //connect успешный ну и дальше client.Send( msg ); int r = client.Receive( dBuf ); осталось добавить деструктор или using .... спасибо за подсказку ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2015, 19:12 |
|
как подключить COM компоненту CSocket к NET проекту
|
|||
---|---|---|---|
#18+
Володимир, кроме IP адреса нужно знать по какому протоколу будет идти общение. Скорее всего это будет TCP или UDP. Исходя из этого и выбирай аргументы. Код: c# 1.
Также можно использовать готовые классы для работы с TCP и UDP: TcpClient и UdpClient соответственно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2015, 19:45 |
|
|
start [/forum/topic.php?fid=21&msg=39022997&tid=1440821]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
139ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 237ms |
0 / 0 |