我现在快疯了。由于所有其他问题已经存在好几年了,而且 MonoTorrent 开发人员已经离开 MIA,我真的需要你的帮助。
我真正坚持的是解析磁铁链接并下载它。
这是我的代码:
public static void DownloadTorrent(string magnetLink)
{
MagnetLink link = new MagnetLink(magnetLink);
//URL stores the magnetlink
EngineSettings settings = new EngineSettings();
settings.AllowedEncryption = EncryptionTypes.All;
settings.SavePath = destination;
string torrentFilePath = torrentDestination;
if (!Directory.Exists(settings.SavePath))
Directory.CreateDirectory(settings.SavePath);
if (!Directory.Exists(torrentFilePath))
Directory.CreateDirectory(torrentFilePath);
//Create a new engine, give it some settings and use it.
ClientEngine engine = new ClientEngine(settings);
engine.ChangeListenEndpoint(new IPEndPoint(IPAddress.Any, 6969));
TorrentManager manager = new TorrentManager(link, engine.Settings.SavePath, new TorrentSettings(), torrentFilePath);
engine.Register(manager);
manager.Start();
Console.ReadLine();
}
我的磁铁链接是:"magnet:?xt=urn:btih:c6df2f47d033d54b054cafe7ef683ba167222d92&dn=Windows+XP+Professional+SP3+-+Activated&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Fzer0day.ch%3A1337&tr=udp%3A%2F%2Fopen.demonii.com%3A1337&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Fexodus.desync.com%3A6969"
现在,磁铁链接上会出现一个错误,说“没有这样的主机是已知的,并且指的是 udp://exodus.desync.com:6969/”(Visual Studio 是瑞典语,所以这可能不是字面翻译)。
Visual Studio 被标记tracker = new UdpClient(announceUrl.Host, announceUrl.Port);
为错误源,它位于 MonoTorrent 的代码文件之一中;udpTracker.cs
我正在尝试制作一个简单的应用程序,但我只是停留在这一部分。
任何帮助是极大的赞赏。这是我第一次在这里发帖,所以如果我错过了提及任何事情,请告诉我,我会添加它。
感谢正手!也请原谅我的英语,我不是母语人士。
更新:如果您知道即使没有 MonoTorrnet 也可以解决此问题的另一种方法 - 我会尽我所能提供帮助。