1


0

コンピューターから他のコンピューターにUDPプロトコルを使用してC Sharpでファイルを送信する

UDPプロトコルを使用して、コンピューターから他のコンピューターにファイルを送信したいのですが、どうすればよいですか?

ファイルを送信するサンプルが欲しい…​

4 Answer


4


UdpClientを使用できます。

UDPでの配信は保証されていません-ファイルを分割する必要がある場合、これは特に問題です。 議論についてはこちらをご覧ください-https://stackoverflow.com/questions/2319521/how-to-send-large-data-using-c-udpclient[C# UdpClientを使用して大きなデータを送信する方法]

これがポイントツーポイントの場合(質問が示唆するように)、http://msdn.microsoft.com/en-us/library/ms740565(VS.85)を使用してこれを行うためのネイティブコードを記述するのは簡単です。 .aspx [TransmitFile]。

_ TransmitFile関数は、接続されたソケットハンドルを介してファイルデータを送信します。 この関数は、オペレーティングシステムのキャッシュマネージャーを使用してファイルデータを取得し、ソケットを介した高性能のファイルデータ転送を提供します。 _


2


UdpClientクラスを使用します。


2


UDPにはファイルに関する固有の知識がないため(プロトコルスタックではるかに低い)、確立されたhttp://en.wikipedia.org/wiki/List_of_file_transfer_protocols#Primarily_used_with_UDP[UDPベースのファイル転送プロトコルのいずれかを調査する価値があります。 ]。 それらのいくつかには、.NET実装が含まれる場合があります。

それ以外の場合は、自分で多くの作業を行うことになります(例: ファイルが断片に分割されていること、すべてのパケットが受信されていること、正しい順序で受信されていることなどを確認してください)


1


以下のリンクは、C#でUDPパケットを送受信する方法のさまざまな例を示しています