[eMule-Web]

[eMule-Web] (http://www.emule-web.de/board/)
-   eMule MOD - Development (http://www.emule-web.de/board/emule-mod-development/)
-   -   part files zur Laufzeit nachladen (http://www.emule-web.de/board/4202-part-files-zur-laufzeit-nachladen.html)

Schneuf 25. July 2003 18:20

part files zur Laufzeit nachladen
 
Es hat doch bestimmt jeden schonmal erwischt. Der Rechner stürzt ab, und die part.met einiger Dateien ist defekt. :evil: Man startet den eMule wieder, repariert die part.met files, verschiebt alles wieder in den Temp Ordner und muß den eMule neu starten (der gerade wieder schön am laden war :cry: ).
Deshalb mein Vorschlag zur Modifikation :idea: , eine neue Zeile in der SharedFilesWnd.cpp:

Code:

void CSharedFilesWnd::OnBnClickedReloadsharedfiles()
{
// BEGIN Add part files in runtime by Schneuf
theApp.downloadqueue->Init();
// END Add part files in runtime by Schneuf
theApp.sharedfiles->Reload(true);
}

Dadurch wird im Dateidialog rechts unten der Button "Neu Laden" seiner Bezeichnung gerecht. :D

PS: Vielleicht freuen sich auch diejenigen die öfters mal partmerge benutzen :wink:

Xman 25. July 2003 19:21

prima Idee. Vermiß ich schon lang dieses Feature.
Ist ja nicht nur das Problem mit den defekten met Files die man repariert. Ich habs noch viel öfters, daß ich mal nen Download, der absolut keine Quellen die die fehlenden Chunks haben findet, in ein anderes Verzeichnis auslager. Hat den Vorteil, daß ich nicht ständig von den 1000 anderen Usern abgefragt werde, die auch auf der Suche nach den letzten Chunks sind.
Diesen Download kann ich bisher halt nicht einfach wieder in den temp-Ordner zurückkopieren ohne den Mulie neu zu starten.

Aber nun ne Frage an Dich, Schneuf. Kannst Du Englisch ? Wenn ja, dann poste doch das mal im Develpement-Forum von emule-project.net.

Anonymous 25. July 2003 19:34

die funktion fände ich auch sehr sinnvoll.

Schneuf 25. July 2003 21:59

Den Vorschlag hatte ich bei sourceforge.net (auf Englisch) gemacht :wink: (allerdings ohne Quellcode). Kurz darauf wurden die Feature Requests vom Netz genommen :shock:
Ich versuchs auf jeden Fall wieder ...

Schneuf 26. July 2003 12:34

Falls es noch niemandem aufgefallen ist:
theApp.downloadqueue->Init();
ist die Initialisierungsfunktion für die part files.
Das ist also kein "sauberer Code" :? , auch wenn´s funktioniert ...
Stattdessen sollte eine neue Funktion "ReInit" eingeführt werden, die nicht mit dem Holzhammer stur probiert ALLE Dateien neu zu laden (und eine Fehlermeldung produziert, "sharing violation" Datei bereits geöffnet). Dabei bin ich mir nicht sicher, ob bereits ladende Dateien einen Schaden nemmen können (zB: die seit dem letzten speichern der part.met geladene Teil könnten verworfen werden :cry: ). Sonst hätte ich das ganze auch schon mit Link veröffentlicht.

Xman 26. July 2003 14:29

Schneuf,
na dann schreib doch einfach ne ReInit()
;-)
Ich kenn mich im Code nicht aus, aber ich denke im Init() wird wohl auch nur ne Schleife drin sein, vom ersten bis zum letzten part-file, die irgendwas macht.

Folglich müßte eine ReInit() nachschauen welche Files bereits im shared-files drin sind und halt nur die Neuen initialisieren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:39 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102