簡體   English   中英

在Delphi中傳輸UDP文件

[英]UDP file transferring in Delphi

我正在編寫一個程序來通過局域網計算機傳輸文件,我已經有一段時間在Delphi中搜索文件傳輸方法了。 我發現UDP是一個很好的解決方案,但是有一個問題:在每個示例或文章中我發現服務器程序旁邊都有一個客戶端程序,但我的程序必須向/從網絡中的每台計算機發送和接收,沒有特定的服務器或客戶端,像p2p,我不想制作計算機服務器和另一個客戶端,我該怎么辦? 我也搜索了Indy文章,它也在服務器/客戶端模式下工作(據我所知)。

在此輸入圖像描述

UDP可以在廣播模式下工作,這是您所需要的。 但是這樣的UDP廣播不能在當前網絡之外路由 (即它們被路由器阻止),因此如果您的項目需要在主物理網絡之外可訪問,則必須實現更復雜的東西。

不要重新發明輪子! 如果您想看到實現此概念的一些工作源,請參閱Ares Galaxy

“具有高規模能力和快速廣播式搜索系統的Delphi自組織p2p網絡項目。客戶端支持多源文件傳輸,部分文件共享,內置音頻/視頻播放器和分散式聊天室”。

源代碼文件可從SourceForge獲得 您可以根據需要重新使用/調整P2P網絡層 - 但是如果您在項目中使用它,請注意Ares源代碼的許可條款。

看看Indy的TIdTrivialFTPTIdTrivialFTPServer組件。 TFTP是基於UDP的文件傳輸協議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM