草庐IT

stream_socket_client

全部标签

c# - 有什么方法可以使用 Stream.CopyTo 只复制一定数量的字节?

有什么办法可以用Stream.CopyTo只复制一定数量的字节到目标流?最佳解决方法是什么?编辑:我的解决方法(省略了一些代码):internalsealedclassSubstream:Stream{privatereadonlyStreamstream;privatereadonlylongorigin;privatereadonlylonglength;privatelongposition;publicSubstream(Streamstream,longlength){this.stream=stream;this.origin=stream.Position;this.po

c# - 统一 : Live Video Streaming

我正在尝试将实时视频从一个应用程序流式传输到另一个应用程序,目前我有2个应用程序。app1是服务器/发送者,app2是客户端/接收者。在应用程序1中,我成功地将视频字节发送到客户端。在客户端,我也收到了所有的字节。我使用套接字和TCP。我面临的问题是,当我收到视频字节并将它们分配给原始图像纹理时,纹理上的图像看起来放大太多并且像素化。更新图片这是我的流这就是我在客户端上得到的。这是第一个问题,但是我目前正在从台式机到另一个进行测试,我的目标是将IPAD流式传输到台式机,当我这样做时,速度很慢,并且会同时杀死ipad和台式机上的应用程序。到目前为止我尝试过的一些故障排除。1:我认为这是因

c# - 程序退出后 TcpListener Socket 仍然有效

我正试图在我的程序退出时停止TCP监听器。我不关心套接字或任何事件客户端套接字上当前事件的任何数据。套接字清理代码本质上是:try{myServer.Server.Shutdown(SocketShutdown.Both)}catch(Exceptionex){LogException(ex)}myServer.Server.Close(0)myServer.Stop()myServer是一个TCPListener在某些情况下,Shutdown会抛出异常System.Net.Sockets.SocketException:发送或接收数据的请求被禁止,因为套接字未连接并且(当使用send

c# - 取消 Socket.xxxxAsync 调用

调用Socket.Shutdown、Socket.Close和Socket.Disconnect后,Socket.ReceiveAsync似乎没有中止。尝试重用ReceiveAsync调用中使用的SocketAsycEventArgs对象(在文档中作为最佳实践建议)会导致错误:AnasynchronoussocketoperationisalreadyinprogressusingthisSocketAsyncEventArgsinstance我必须做什么才能让ReceiveAsync释放它对这个SocketAsyncEventArgs实例的控制?编辑:我通过标记一个待处理的接收并且在

c# - Stream.ReadAsync 和 Stream.WriteAsync 是否应该在返回之前或操作完成之后同步更改光标位置?

我一直在尝试实现一个支持ReadAsync和WriteAsync的Stream,并考虑到documentation的冗余性,我正在努力了解如何正确执行此操作。具体来说,关于流的光标位置。问了一个类似的问题here和here关于旧的BeginRead函数。该函数的文档似乎表明,在任何挂起的异步操作完成之前,不应再次调用BeginRead。鉴于BeginRead现在已弃用nolongerrecommendedfornewdevelopment并且Stream可能已被显着改变以实现新的Async功能,事情再次不清楚。(编辑:通常这种警告意味着新函数被直接实现,旧函数调用新函数并且仍然存在只是

c# - 从代码发送电子邮件时出现“5.7.1 Client does not have permission”错误

所以我有一个非常基本的程序试图发送电子邮件,但我一直收到Mailboxunavailable.Theserverresponsewas:5.7.1Clientdoesnothavepermissionstosendasthissender这是我的程序staticvoidMain(string[]args){SmtpClientclient=newSmtpClient("Server",25);client.UseDefaultCredentials=false;client.DeliveryMethod=SmtpDeliveryMethod.Network;client.Credent

c# - .NET Core 是否支持 Microsoft.AspNet.WebApi.Client?

我目前正在尝试使用.NETCore中的HttpClient和MediaTypeFormatters进行一些JSON格式化。特别是.NETFramework中HttpContent-Class中可用的函数“ReadAsAsync(...,MediaTypeFormatter,...)”(https://msdn.microsoft.com/de-de/library/system.net.http.httpcontentextensions.readasasync(v=vs.118).aspx)会非常有帮助。据我所知,它可以在NuGet包Microsoft.AspNet.WebApi.C

c# - 将 Stream 转换为 IEnumerable。如果可能当 "keeping laziness"

我收到一个Stream并需要将IEnumerable传递给另一个方法。publicstaticvoidstreamPairSwitchCipher(StreamsomeStream){...someStreamAsIEnumerable=...IEnumerablereturned=anotherMethodWhichWantsAnIEnumerable(someStreamAsIEnumerable);...}一种方法是读取整个Stream,将其转换为字节数组并将其传入,因为Array实现了IEnumerable。但如果我能以这样一种方式传递它,在传递它之前我不必阅读整个Stream

Elasticsearch8.x版本中RestHighLevelClient被弃用,新版本中全新的Java客户端Elasticsearch Java API Client中常用API练习

Es的javaAPI客户端在Es7.15版本之后,es官方将它的高级客户端RestHighLevelClient标记为弃用状态。同时推出了全新的javaAPI客户端ElasticsearchJavaAPIClient,该客户端也将在Elasticsearch8.0及以后版本中成为官方推荐使用的客户端。ElasticsearchJavaAPIClient支持除VectortitlesearchAPI和FindstructureAPI之外的所有ElasticsearchAPI。且支持所有API数据类型,并且不再有原始JSONValue属性。它是针对Elasticsearch8.0及之后版本的客户端

c# - 如何从字符串对象中获取 System.IO.Stream

我有字符串对象。我需要将此数据传递给XYZ类型的另一个对象。但是这个XYZ类型的对象只采用System.IO.Stream。那么如何将字符串数据转换成流,让XYZ类型的对象可以使用这个字符串数据呢? 最佳答案 您必须选择一种文本编码来将字符串转换为字节数组,然后使用MemoryStream调用您的函数。例如:using(System.IO.MemoryStreamms=newSystem.IO.MemoryStream(System.Text.Encoding.UTF16.GetBytes(yourString))){XYZ(ms)