2013-10-16 43 views
2

我試圖創建在我的桌面使用monotorrent我試圖像下面的代碼創建使用C#

我能夠得到字節碼文件洪流monotorrent洪流我不能夠救它如洪流它表明拒絕訪問

enter code here string path = "C:/Users/snovaspace12/Desktop/monotorrent-0.90/files"; 
     string savepath = "D:/results"; 

     TorrentCreator nnnn = new TorrentCreator(); 
     nnnn.CreateTorrent(path, savepath); 

    public void CreateTorrent(string path, string savePath) 
    { 
     // The class used for creating the torrent 
     TorrentCreator c = new TorrentCreator(); 

     // Add one tier which contains two trackers 
     //RawTrackerTier tier = new RawTrackerTier(); 
     //tier.Add("http://localhost/announce"); 

     //c.Announces.Add(tier); 
     c.Comment = "This is the comment"; 
     c.CreatedBy = "Doug using " + VersionInfo.ClientVersion; 
     c.Publisher = "www.aaronsen.com"; 

     // Set the torrent as private so it will not use DHT or peer exchange 
     // Generally you will not want to set this. 
     c.Private = true; 

     // Every time a piece has been hashed, this event will fire. It is an 
     // asynchronous event, so you have to handle threading yourself. 
     c.Hashed += delegate(object o, TorrentCreatorEventArgs e) 
     { 
      Console.WriteLine("Current File is {0}% hashed", e.FileCompletion); 
      Console.WriteLine("Overall {0}% hashed", e.OverallCompletion); 
      Console.WriteLine("Total data to hash: {0}", e.OverallSize); 
     }; 

     // ITorrentFileSource can be implemented to provide the TorrentCreator 
     // with a list of files which will be added to the torrent metadata. 
     // The default implementation takes a path to a single file or a path 
     // to a directory. If the path is a directory, all files will be 
     // recursively added 


     ITorrentFileSource fileSource = new TorrentFileSource(path); 

     // Create the torrent file and save it directly to the specified path 
     // Different overloads of 'Create' can be used to save the data to a Stream 
     // or just return it as a BEncodedDictionary (its native format) so it can be 
     // processed in memory 
     c.Create(fileSource, savePath); 
    } 
    public void Create(ITorrentFileSource fileSource, string savePath) 
    { 

     Check.SavePath(savePath); 


     var file = Create(fileSource);//getting the fbyte code 
     File.WriteAllBytes(savePath, Create(fileSource).Encode()); //getting exception here 

    } 

當我檢查字節碼是否正確返回文件

它表明訪問被拒絕

回答

1

您已經probab我已經解決了這個問題,但我剛剛遇到了同樣的問題。至少在我看來,解決方案非常簡單。

問題起源於savePath參數在c.Create(fileSource,savePath);

我假定savePath是保存洪流的目錄。它應該是一個文件路徑。例如savePath =「C:\ pathtomytorrents \ content.torrent」

希望這對您有用!