Abbrechen bei Netzwerkzugriff
Moderators: Hacker, Stefan2, white
Abbrechen bei Netzwerkzugriff
Wenn ich in meinem peer-to-peer Netzwerk mit TotalCommander auf einen anderen Rechner zugreifen will und der Zugriff nicht möglich ist lässt sich TotalCommander nicht abbrechen. Clicke ich das Abbruch "x", dann kommt die Meldung von Windows Programm reagiert nicht und Total Commander lässt sich dann mit dem "Sofort beenden"-Button nur nach längerer Zeit beenden.
Ich arbeite schon länger mit TC und arbeite gerne damit, aber dieses Problem stört mich. Ich habe neulich den SpeedCommander ausprobiert, der lässt sich in diesem Fall sofort Beenden.
Gibt es da eine Lösung?
Ich arbeite schon länger mit TC und arbeite gerne damit, aber dieses Problem stört mich. Ich habe neulich den SpeedCommander ausprobiert, der lässt sich in diesem Fall sofort Beenden.
Gibt es da eine Lösung?
Danke,
dass dies mit Windows zusammenhängt, habe ich mir auch gedacht, aber nachdem ich gesehen habe, dass beim Speed-Commander mit ESC ein Abbruch möglich ist und zur Not zumindest das Programm selbst beendet werden kann, dachte ich, dass da eine Möglichkeit besteht, dies auch mit dem TC zu erreichen.
dass dies mit Windows zusammenhängt, habe ich mir auch gedacht, aber nachdem ich gesehen habe, dass beim Speed-Commander mit ESC ein Abbruch möglich ist und zur Not zumindest das Programm selbst beendet werden kann, dachte ich, dass da eine Möglichkeit besteht, dies auch mit dem TC zu erreichen.
- ghisler(Author)
- Site Admin
- Posts: 50805
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Das erstaunt mich, dass es beim SC geht - ich habe mal versucht das einzubauen via einen separaten Thread, doch wenn ich den abgebrochen habe, dann blieben alle späteren Aufrufe des Dateisystems (auch auf Laufwerk C:) trotzdem so lange hängen, bis Windows selbst die Serververbindung abgebrochen hatte...
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Ich habe es noch einmal mit dem Speed-Commander probiert. Das Beenden einer hängenden Netzverbindung mit der ESC-Taste geht schnell und ohne Probleme.
Auch lässt sich das Programm in einem solchen Fall jederzeit beenden, was beim TC nicht so ohne weiteres möglich ist und der Abbruch sich sehr lange hinzieht.
Es wäre schön, wenn der TC sich in diesem Fall auch so problemlos verhalten würde, denn ich arbeite lieber mit dem TC
Auch lässt sich das Programm in einem solchen Fall jederzeit beenden, was beim TC nicht so ohne weiteres möglich ist und der Abbruch sich sehr lange hinzieht.
Es wäre schön, wenn der TC sich in diesem Fall auch so problemlos verhalten würde, denn ich arbeite lieber mit dem TC
- ghisler(Author)
- Site Admin
- Posts: 50805
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Tut mir leid, aber es gibt keine Funktion, um eine hängende Netzwerkverbindung abzubrechen. Ich vermute, dass Windows selbst da schneller reagiert hat, anders kann ich mir das nicht erklären.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Hi,
ich kann die Beobachtungen von Leonardy bestätigen (sofortiger Abbruch mit ESC), der Speedcommander reagiert außerdem bei Netzwerkzugriffen auf benachbarte Computer spürbar schneller, zumindest was den Zugriff auf freigegebene Ordner betrifft. Wenn man sich von einem tieferliegenden Verzeichnis per Backspace wieder nach oben bewegt, legt der Total Commander jedesmal eine kleine Denkpause ein, der Speedcommander reagiert sofort.
Gruß,
Max
P.S.: Mir ist der TC trotzdem lieber
ich kann die Beobachtungen von Leonardy bestätigen (sofortiger Abbruch mit ESC), der Speedcommander reagiert außerdem bei Netzwerkzugriffen auf benachbarte Computer spürbar schneller, zumindest was den Zugriff auf freigegebene Ordner betrifft. Wenn man sich von einem tieferliegenden Verzeichnis per Backspace wieder nach oben bewegt, legt der Total Commander jedesmal eine kleine Denkpause ein, der Speedcommander reagiert sofort.
Gruß,
Max
P.S.: Mir ist der TC trotzdem lieber

2max
HTH
hast du probiert, zuerst mit dem TC auf eine Netzwerkfreigabe zuzugreifen und dann mit dem SC? Wenn ja, hast du das auch mal umgekehrt probiert? Weil meines Wissens speichert Windows die Netzwerkfreigaben im Cache damit die nächsten Zugriffe schneller gehen. Soweit ich weiß, gibt es unter Windows nicht mehrere Möglichkeit, die Windows-Freigaben anzuzeigen, sprich es ist eigentlich immer die selbe API, die von den Programmen aufgerufen wird... Kann mich aber auch irren...der Speedcommander reagiert außerdem bei Netzwerkzugriffen auf benachbarte Computer spürbar schneller, zumindest was den Zugriff auf freigegebene Ordner betrifft

HTH
Hi,
@CoolWater
Auch wenn ich zuerst mit dem SC auf das Netzwerk zugreife, reagiert er flüssiger als der TC. Der TC verzögert (zumindest bei mir) reproduzierbar immer etwas, wenn er von \\Computername\Ordner -> \\Computername wechselt. Die oben genannten Verzögerungen beim Browsen innerhalb einer Ordnerstruktur konnte ich nicht reproduzieren. Evtl. puffert der SC mehr und der TC holt sich die Daten immer frisch vom Netz (reine Spekulation
). Wirklich vermissen tu ich eigentlich nur die schnelle Abbruchmöglichkeit mit ESC.
Gruß,
Max
@CoolWater
Auch wenn ich zuerst mit dem SC auf das Netzwerk zugreife, reagiert er flüssiger als der TC. Der TC verzögert (zumindest bei mir) reproduzierbar immer etwas, wenn er von \\Computername\Ordner -> \\Computername wechselt. Die oben genannten Verzögerungen beim Browsen innerhalb einer Ordnerstruktur konnte ich nicht reproduzieren. Evtl. puffert der SC mehr und der TC holt sich die Daten immer frisch vom Netz (reine Spekulation

Gruß,
Max
Ach was, bei mir hängt SpeedCommander genauso wie alle anderen, reagiert nicht auf ESC.
Ich brauche TotalCommander oft für gemappte Laufwerke über eine VPN-Verbindung, für externe USB-Laufwerke und für andere "Problemfälle". Da kann ich nur sagen:
Diese Windows-weite Warterei bei "verlorenen" Laufwerken ist A PAIN IN THE ASS!
Eine funktionierende ESC-Taste wäre GOLD wert. Wenn es wirklich gar nicht geht, dann wäre es schon ein Fortschritt, wenn das TotalCommander-Hauptfenster inkl. Menüleiste nicht auch noch hängen würde (das ganze Fenster wird schneeweiss) - separater Thread pro Folder Tab oder so was
Ich brauche TotalCommander oft für gemappte Laufwerke über eine VPN-Verbindung, für externe USB-Laufwerke und für andere "Problemfälle". Da kann ich nur sagen:
Diese Windows-weite Warterei bei "verlorenen" Laufwerken ist A PAIN IN THE ASS!
Eine funktionierende ESC-Taste wäre GOLD wert. Wenn es wirklich gar nicht geht, dann wäre es schon ein Fortschritt, wenn das TotalCommander-Hauptfenster inkl. Menüleiste nicht auch noch hängen würde (das ganze Fenster wird schneeweiss) - separater Thread pro Folder Tab oder so was
- SanskritFritz
- Power Member
- Posts: 3693
- Joined: 2003-07-24, 09:25 UTC
- Location: Budapest, Hungary
Da wird schon Hoffnung geweckt:
http://www.ghisler.ch/board/viewtopic.php?t=3049
http://www.ghisler.ch/board/viewtopic.php?t=3049
I switched to Linux, bye and thanks for all the fish!
Eine Idee zum Thema:
Wie wäre es, den Netzwerk-Verbindungsversuch in einem neuen Prozess zu starten statt nur in einem neuem Thread?
Über z.B. eine Systemnachricht (DDE?) an den TC-Prozess könnte der neue Prozess die Info mitteilen, ob der Versuch erfolgreich war.
Damit der Hilfs-Prozess den TC-Prozess leicht/korrekt findet, lässt sich beim Start vielleicht die eigene Prozesskennung des TC mitsenden, an die kann dann eine entsprechene Nachricht geschickt werden - ob entweder der Verbindungsversuch erfolgreich war oder das Timeout zugeschlagen hat.
Das "Abbrechen" würde dann nur noch aus "nicht weiter auf Nachricht warten" bestehen.
Vermutliche Nachteile wären:
- Irgendwann muss vermutlich die DDE-Nachricht abgeholt werden, um andere Nachrichten nicht zu blockieren.
- Es wird sich wahrscheinlich ein neues Programmfenster öffnen - das dürfte der größte Schönheitsfehler dabei sein.
Ein neues Fenster lässt sich zwar verstecken/unterdrücken, Virenscanner unterstellen dann aber womöglich "gefährliche Funktionen". Firewalls könnten sich auch über das Erzeugen des neuen Prozesses beschweren.
Vielleicht hat ja jemand noch eine Idee dazu?
Wie wäre es, den Netzwerk-Verbindungsversuch in einem neuen Prozess zu starten statt nur in einem neuem Thread?
Über z.B. eine Systemnachricht (DDE?) an den TC-Prozess könnte der neue Prozess die Info mitteilen, ob der Versuch erfolgreich war.
Damit der Hilfs-Prozess den TC-Prozess leicht/korrekt findet, lässt sich beim Start vielleicht die eigene Prozesskennung des TC mitsenden, an die kann dann eine entsprechene Nachricht geschickt werden - ob entweder der Verbindungsversuch erfolgreich war oder das Timeout zugeschlagen hat.
Das "Abbrechen" würde dann nur noch aus "nicht weiter auf Nachricht warten" bestehen.
Vermutliche Nachteile wären:
- Irgendwann muss vermutlich die DDE-Nachricht abgeholt werden, um andere Nachrichten nicht zu blockieren.
- Es wird sich wahrscheinlich ein neues Programmfenster öffnen - das dürfte der größte Schönheitsfehler dabei sein.
Ein neues Fenster lässt sich zwar verstecken/unterdrücken, Virenscanner unterstellen dann aber womöglich "gefährliche Funktionen". Firewalls könnten sich auch über das Erzeugen des neuen Prozesses beschweren.
Vielleicht hat ja jemand noch eine Idee dazu?
Who the hell is General Failure, and why is he reading my disk?
-- TC starter menu: Fast yet descriptive command access!
-- TC starter menu: Fast yet descriptive command access!
- SanskritFritz
- Power Member
- Posts: 3693
- Joined: 2003-07-24, 09:25 UTC
- Location: Budapest, Hungary
2StatusQuo
PS: opps, sorry, also: soweit ich weiss, gab dadurch noch keine probleme.
I have not heard of any problems caused by this new feature.HISTORY.TXT wrote:18.10.06 Added: Experimental: wincmd.ini [Configuration] ThreadFindFirst=1 moves FindFirstFile to separate thread, so the user can abort reading from a hanging network connection
PS: opps, sorry, also: soweit ich weiss, gab dadurch noch keine probleme.
I switched to Linux, bye and thanks for all the fish!