NTFS-Streams verursachen Fehlermeldung

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
kuddelkuddel
Junior Member
Junior Member
Posts: 2
Joined: 2010-09-28, 15:58 UTC

NTFS-Streams verursachen Fehlermeldung

Post by *kuddelkuddel »

Hallo liebes Forum,
ich habe hier schon recht lange Querbeet gelesen. Leider habe ich die Antwort nicht gefunden:

Mein System: Windows XP SP 3, alle aktuellen SIK-Updates, TC 7.55a (aber auch frühere Versionen)

Seit ein paar Tagen weigerte sich der Totalcommander, bestimmte EXE-Dateien zu öffnen (z.B. auch die TC-Installationsdateien). "Normale" Programme ließen sich öffnen. Auch ein Umbenennen auf die Extension "COM" brachte nichts.
Der Win-Explorer öffnete die Dateien, nach Sicherheits-Vorabfrage, aber anstandslos.
Die Fehlermeldung lautete: "Fehler beim Programmaufruf!"

Nach einigem Herumexperimentieren bin ich auf die NTFS-Streams als Verursacher gestoßen: Wird der Stream für das Herunterladen entfernt (z.B. mit dem "Streams" Commandline-Proggy), dann öffnet TC die Dateien anstandslos. Ebenso, wenn ich nach Rechtsklick auf die Datei - Eigenschaften die Bemerkung auf die Gefahren einer gedownloadeten Datei zulasse ("Die Datei stammt von einem anderen Computer. ...")

Meine Frage: Wieso blockt TC die Dateien völlig - während der Explorer lediglich bei vorhandenem Stream die obligatorische Sicherheitsfrage stellt ("Möchten Sie diese Datei ausführen?")

kuddel
User avatar
HolgerK
Power Member
Power Member
Posts: 5411
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Post by *HolgerK »

- Klappte es wenn du den TC mit einer frischen Ini-Datei startest?

Code: Select all

TOTALCMD.EXE /i="%TEMP%\fresh.ini"
- Befindet sich im TC-Verzeichnis evtl. irgendwelche DLLs die dort nicht hingehören?
- Befinden sich im Downloadverzeichnis irgendwelche DLLs?

Vermutete Ursache: die System-DLL die für den "Open File- Security Warning" Dialog zuständig ist, kann nicht geladen werden, weil eine zusätzliche nachzuladende DLL als inkompatible Version im Suchpfad vorgefunden wird, oder bereits eine inkompatible DLL über eine Plugininstallation geladen wurde.

Gruß
Holger
kuddelkuddel
Junior Member
Junior Member
Posts: 2
Joined: 2010-09-28, 15:58 UTC

Post by *kuddelkuddel »

Danke Holger erstmal für Deine Antwort!
HolgerK wrote:- Klappte es wenn du den TC mit einer frischen Ini-Datei startest?

Code: Select all

TOTALCMD.EXE /i="%TEMP%\fresh.ini"

- Befindet sich im TC-Verzeichnis evtl. irgendwelche DLLs die dort nicht hingehören?
- Befinden sich im Downloadverzeichnis irgendwelche DLLs?
3 x nein, da Phänomen auch nach einer vollständigen De- und Neuinstallation auftrat. Ich habe die *.ini-Dateien bei der Installation übrigens schon immer im Totalcommander-Ordner anlegen lassen - es gibt keine zweiten derartige Dateien auf dem System (auch nicht von einer vorherigen Installation). Und auch keine DLLs.

Die DLLs, welche im TC-Ordner liegen, sind übrigens die folgenden:

CABRK.DLL 43.008 07.07.2010 07:55 -a--
FRERES32.DLL 7.680 07.07.2010 07:55 -a--
POP3Plugin.dll 268.800 21.02.2003 14:30 -a--
TCMDLZMA.DLL 70.144 07.07.2010 07:55 -a--
TCUNZLIB.DLL 110.592 07.07.2010 07:55 -a--
UNACEV2.DLL 77.312 07.07.2010 07:55 -a--
UNRAR.DLL 165.376 07.07.2010 07:55 -a--
WCMICONS.DLL 639.360 07.07.2010 07:55 -a--
WCMZIP32.DLL 123.536 07.07.2010 07:55 -a--
1.470 k in 9 Dateien
HolgerK wrote: Vermutete Ursache: die System-DLL die für den "Open File- Security Warning" Dialog zuständig ist, kann nicht geladen werden, weil eine zusätzliche nachzuladende DLL als inkompatible Version im Suchpfad vorgefunden wird, oder bereits eine inkompatible DLL über eine Plugininstallation geladen wurde.
Um welche System-DLL handelt es sich denn dabei? Dann könnte ich sie mal suchen gehen.

Übrigens zeigt(e) sich das Verhalten auch nach einem Neustart im abgesicherten Modus. Merkwürdig, merkwürdig.

kuddel
User avatar
HolgerK
Power Member
Power Member
Posts: 5411
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Post by *HolgerK »

3 x nein, da Phänomen auch nach einer vollständigen De- und Neuinstallation auftrat.
Die Begründung lässt die Antwort offen, ob du einmal mit einer frischen Ini-Datei den TC gestartet und getestet hast.
POP3Plugin.dll 268.800 21.02.2003 14:30 -a--
Diese Datei zumindest gehört nicht zur TC-Installation sondern zu einem Plugin.

De- und Reinstallation löscht nicht das TC-Verzeichnis und insbesondere nicht die dort abgelegte Ini-Datei.
Dort können also noch durchaus zusätzliche Plugins angegeben sein, in deren Installationsverzeichnis sich DLLs befinden können.

Wenn du das definitiv mit einer frischen INI-Datei getestet hast, dann überprüfe mal als nächstes den Suchpfad:
Kommandoprozessor (cmd.exe) vom TC aus starten, und dort

Code: Select all

set path
eingeben.

Jeder Pfad der vor "C:\windows\system32" angegeben ist, kann die normale Ladereihenfolge von System-DLLs negativ beeinflussen.

Am besten den Pfad dann unter "System Eigenschaften -> Erweitert -> Umgebungsvariablen" dann entsprechend anpassen, um damit sicherzustellen, dass das Systemverzeichnis sich am Anfang der Suchreihenfolge befindet.

Ansonsten kannst du noch den ProcessExplorer bemühen, um festzustellen welche DLLs im Process "totalcmd.exe" geladen sind.

Dazu im Prozessbaum den Prozess "totalcmd.exe" aufsuchen;
"View->Lower pane view-> DLLs Ctlr+D" einschalten;
Im Spaltenheader über Kontextmenu "Select columns" [x] Path einschalten;
Nach "Path" sortieren.

DLL's von "Microsoft Corporation", die sich nicht im Pfad "C:\Windows\System32" bzw. "c:\Windows\WinSxS" befinden sind verdächtig...

Gruß
Holger
Post Reply