gpt4 book ai didi

c# - 使用GPRS的WM6 socket

转载 作者:行者123 更新时间:2023-12-03 12:01:30 25 4
gpt4 key购买 nike

我正在WM6上的NTRIP客户端上写东西。基本上,我是通过首先发送配置从使用套接字的服务器获取数据的。但是我无法通过同一设备上的GPRS连接使它正常工作。

我发送此消息。

Get / HTTP/1.0
User-Agent: NTRIP client
Accept: */*
Connection: close

到此服务器。
Hostname: mamba.gps.caltech.edu
Port: 2101

我这样做来建立连接
string message = "GET / HTTP/1.0\r\nUser-Agent: NTRIP client\r\nAccept: */*\r\nConnection: close\r\n\r\n"
IPAddress ipAddress = Dns.GetHostEntry(hostname).AddressList[0];

_NTRIPCaster = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
_NTRIPCaster.Connect(new IPEndPoint(ipAddress, Convert.ToInt32(port)));
_NTRIPCaster.Send(Encoding.ASCII.GetBytes(message));
for (int i = 0; i < 50; i++) //Wait for upto 5 seconds for a response
{
Thread.Sleep(100);
if (_NTRIPCaster.Available > 0)
{
Byte[] inBytes = new byte[_NTRIPCaster.Available];
_NTRIPCaster.Receive(inBytes);
sourceTable += Encoding.ASCII.GetString(inBytes, 0, inBytes.Length);
//Check if all of the Source table has been recieved
if (sourceTable.Contains("ENDSOURCETABLE"))
{
sourceTableRecieved = true;
break;
}
}
}

如果我有Wi-Fi连接,或者设备已对接至PC,并且 Activity 同步正在共享PC的Internet连接,则所有这些都可以正常工作。

如果我切断了PC上的Internet并禁用了Wi-Fi,则其无法将主机名解析为IP地址。甚至都没有进入套接字连接。基本上,它不使用设备中的调制解调器,而是使用GPRS连接。无论是否连接GPRS,都会发生这种情况。

由于我使用的是WM6,因此我研究了连接管理器API- http://msdn.microsoft.com/en-us/library/aa458120

但是在关注了其他几篇文章之后,我已经能够在stackoverflow和其他论坛上找到我无法使它工作的功能。有谁知道我如何建立GPRS连接并开始向服务器发送数据。

最佳答案

如果使用更高级别的网络对象(例如HttpRequest),则.NET Framework将自动调用连接管理器API。您使用低级套接字是有原因的吗?

关于c# - 使用GPRS的WM6 socket ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7110816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com