我希望你能原谅我,如果这是显而易见的;刚开始用C++/cli。我正在使用一些示例C#代码来生成此代码,但在传统C++应用程序中使用cli模式,所以我在翻译时遇到了麻烦。不容易在网上找到样本。C++/CLI使用XmlWriter与TcpClient不写
这是一段代码。一个XDocument被传入这个代码。我通过写入一个文件来检查它,并且生成的xml文件看起来应该如此(与示例C#应用程序相同)。 tcpclient调用似乎工作,如果我更改地址,它会引发异常。我也看到在TCP Sniffer中建立的连接。
请求 - > WriteTo不起作用 - 嗅探器显示没有写入数据,设备也没有响应。
此外,XmlReader :: Create调用将所有东西锁定。
很明显,我在设置作者或流的方式上出了问题。
任何想法?
谢谢。
TcpClient^socket = gcnew TcpClient(address,port); // connect to device
NetworkStream^stream;
stream = socket->GetStream(); // get stream.
XmlWriter ^writer = XmlWriter::Create(stream,xmlWrite); // Create writer
request->WriteTo(writer); // Write XDocument to stream.
XmlReader ^reader = XmlReader::Create(stream,xmlRead);
TcpClient连接上面的调用。正如我所指出的,TCP嗅探器程序显示它已连接。 但我试过改变代码,因为我想也许你是在做某些事情,并创建了没有地址,端口参数的套接字,然后使用套接字 - >连接(地址,端口)命令。 同样的行为。 我连接的这个设备具有非常特定的行为,我非常肯定它会关闭流。我没有在设备上得到任何回应,事实上,TCP嗅探器没有显示WriteTo发送的数据。 – KokoCa