Rapidshare API auf sourceforge
Nachdem ich noch ein wenig Arbeit investiert habe um den Upload-Vorgang endlich auf ein akzeptables Niveau zu bringen habe ich mir gedacht, dass wohl mehr Leute davon profitieren könnten wenn ich das Werk mal auf sourceforge stelle.
In Zukunft findet man neue Versionen der Bibliothek also nicht mehr (nur) hier.
Neu bei dieser Version …
- Downloads und Uploads haben vom Konzept her gleiche Callback-Handler.
- Upload ist nicht mehr Sync und braucht auch keine DoEvents mehr.
- Upload hat nun auch eine ProgressChanged-Rückmeldung.
- HTML-Dokumentation
- Sourcecode in der .zip
Download:Â http://sourceforge.net/projects/rapidshareapi/
Dokumentation: http://www.floschnell.de/rapidshareapi/
Hier noch zum besseren Verständnis, das alte Beispiel mit den neuen Methoden …
static RapidshareApi RSApi;
[STAThread]
static void Main()
{
// create the api wrapper ...
RSApi = new RapidshareApi("login", "password",
RSClient.RSAccountType.Premium,[usessl], [enablemaxcpulock]);
UploadFile();
}
void UploadFile()
{
// do the file upload ...
string filelocation = "C:\\bananenkompott.zip";
RapidshareApi.UploadCallbacks uc =
new RapidshareApi.UploadCallbacks();
uc.onCompleted = DownloadFile;
uc.onProgressChanged = ProgressChanged;
RSApi.UploadFile(filelocation, uc);
}
void DownloadFile(UploadFileResponse ufr)
{
string downloadlink = ufr.link;
// download the file again ...
string location = "C:\\Users\\YourLoginName\\Desktop";
RapidshareApi.DownloadCallbacks dc =
new RapidshareApi.DownloadCallbacks();
dc.onCompleted = Done;
dc.onProgressChanged = ProgressChanged;
RSApi.DownloadFile(downloadlink, location, DownloadFileDone);
}
void ProgressChanged(int percent)
{
// this might update some progress bar ...
}
void Done()
{
// okay were finished!
}
Posted in Allgemein
04. März 2010 at 13:47
Hallo, tolles Projekt hast du da!
Ich würds gerne in einem Projekt benutzen, stolper da aber immer wieder über verschiedene Sachen, aber vielleicht kannst du mir ja helfen
Also ich bekomme bei Folgendem Code immer eine KeyNotFoundException mit der Mitteilung “Der angegebene Schlüssel war nicht im Wörterbuch angegeben.”
RapidshareApi RSApi = new RapidshareApi(“Username”, “Pass”, RSClient.RSAccountType.Premium);
RapidshareApi.Account acc = RSApi.GetAccountDetails();
Danke schonmal!
08. März 2010 at 11:59
Hey Sinan,
danke
Ich hab mir den Fehler mal angeschaut, da ich leider im Moment unterwegs bin und keine Entwicklungsumgebung zur Hand habe kann ich also nur vermuten woran es liegt. Bin mir aber ziemlich sicher den Fehler gefunden zu haben.
Ich werde erst in einer Woche dazu kommen eine neue Version zu veröffentlichen, bis dahin hier mal meine Vermutung:
RapidshareApi.cs: 586-589:
account.mirror = response.KeyValues["mirror"];
account.mirror2 = response.KeyValues["mirror2"];
account.mirror3 = response.KeyValues["mirror3"];
account.mirror4 = response.KeyValues["mirror4"];
abändern nach:
account.mirror = response.KeyValues["mirrors"];
Das sollte es gewesen sein, da diese Methode schon einmal funktionierte vermute ich, dass RapidShare da im Nachhinein noch etwas verändert hat.
Viel Glück und würde mich interessieren ob’s geklappt hat.
Gruß Flo
08. März 2010 at 16:13
Der Fehler ist nicht weg, habe aber eben herausgefunden wo der Fehler geworfen wird:
RapidshareApi.cs: 592:
account.lots = Int32.Parse(response.KeyValues["lots"]);
Lass dir Zeit mit der neuen Version

Mein Projekt ist übrigens ein RS-Account Verwaltungstool, da wäre es ganz schön zu sehen wie viel Traffic übrig ist etc. und dafür ist deine API perfekt
gruß Sinan
14. Oktober 2010 at 13:22
Hi, there are some changes in API. It would be nice to update your super API WRAPPER.
Thank you.