Juergen: Dateilöschung unmöglich

Hallo,
ich möchte die Dateien
Gesperrte Dateien
löschen.
Ergebnis: "... kann nicht gelöscht werden, da sie im windows Explorer geöffnet ist."
Auch die Ausführung eines Unlockers und der Neustart bringen keinen Erfolg.
Was kann ich noch unternehmen?
Gruß
Juergen

  1. Hallo Jürgen,

    Was kann ich noch unternehmen?

    eine Konsole aufmachen, dann den Explorer abschießen und die Datei(en) von der Konsole aus löschen.

    Oder ein Live-Linux booten und von da aus eingreifen.

    Die Frage ist aber: Wo genau liegen diese DLLs? Warum liegen sie da? Zu welchem Softwarepaket gehören sie? Wer würde sie hinterher schmerzlich vermissen?

    Einen schönen Tag noch
     Martin

    --
    Im Englischen hat eine Katze neun Leben. Im Deutschen vielleicht auch, aber nach Abzug der Steuern bleiben nur noch sieben übrig.
  2. Hallo Juergen,

    das off-topic Teufelchen im mir räuspert sich mal wieder...

    Wenn ich das richtig lese, wird diese Datei als Teil einer Shell Extension geladen.

    Und deswegen hält der Explorer sie fest, auch nach einem Neustart. Der Unlocker - keine Ahnung was der tut. Er kann File Handles, die ein Prozess offen hat, eigentlich nicht blindlings abklemmen.

    Martins Idee, eine Befehlszeile zu starten (und den Taskmanager) und die Dateien dann von dort aus zu löschen, dürfte deshalb insoweit funktionieren, dass die Dateien dann weg sind.

    Aber dann hast Du ein neues Problem. Du hast dann nämlich immer noch eine Shell Extension Sage Thumbs im System, für die aber nun auf einmal die zugehörigen Dateien fehlen. Der Explorer wird die Extension dann ignorieren, aber schön ist das nicht.

    Normalerweise sollte Sage Thumbs einen Uninstaller haben, der die Registry-Einträge für die Shell-Extension entfernt. Sowas solltest Du nicht von Hand versuchen, weil Du nicht weißt, welche Einträge der Kerl alle gemacht hat.

    Ist Sage Thumbs unter "Programme hinzufügen oder entfernen" zu finden? Vielleicht auch unter anderem Namen, falls es Teil irgendeines Softwarepakets war? Hast Du dort schon eine Deinstallation versucht?

    Rolf

    --
    sumpsi - posui - obstruxi
  3. Hello,

    die Datei ist als Bestandteil eines Dienstes (im Hintergrund) beim Systemstart geöffnet und gesperrt worden.

    Du müsstest also den Dienst herausfinden und abschalten. Danach sollten die zugehörigen Dateien löschbar sein, spätestens nach dem Neustart ohne diesen Dienst.

    Bei Linux könnte man "einfach" den übergeordneten Prozess per Systemüberwachung (oder über die Konsole mit kill) geordnet beenden. Das sollte bei Windows so ähnlich möglich sein. Danach sollten die betroffenen Dateien (→lsof) wieder frei sein.

    Glück Auf
    Tom vom Berg

    --
    Es gibt soviel Sonne, nutzen wir sie.
    www.Solar-Harz.de
    S☼nnige Grüße aus dem Oberharz
  4. Hi,

    darf ich fragen warum? Was stört dich an dieser Datei?
    Ich habe gerade in meinem PC auf dem Laufwerk C: fünf dieser Dateien gefunden.
    who cares?

    dll = die lass liegen

    Fred

    --
    I � Unicode
    1. Hello,

      [...]
      es sei denn, man mag den gesamten Dienst nicht mehr und will ihn loswerden.

      Oft speichern eklige Dienste auch Konfigurationsdaten in ihren DLL-Dateien.

      Das ist selbstverständlich böse, deshalb tun die das auch. ;-O

      Glück Auf
      Tom vom Berg

      --
      Es gibt soviel Sonne, nutzen wir sie.
      www.Solar-Harz.de
      S☼nnige Grüße aus dem Oberharz
      1. Hallo TS,

        es sei denn, man mag den gesamten Dienst nicht mehr und will ihn loswerden.

        Ja. Und deswegen habe ich auf die Deinstallation hingewiesen. Unter Linux löschst Du ja auch nicht blindlings Dateien, die in irgendwelchen Config-Files verknüpft sind. Unter Windows ist das die Registry, und die Installationsprogramme hinterlassen normalerweise Einträge in der Installer-DB, um das alles wieder abzuräumen.

        Oft speichern eklige Dienste auch Konfigurationsdaten in ihren DLL-Dateien.

        Das geht unter Windows nicht. Na gut. Normalerweise nicht.

        • Es sind Binärdateien. Da polkt man nicht einfach drin rum.
        • Wenn sie ordentlich installiert wurden, sind sie im Program Files Ordner und damit schreibgeschützt, außer für Admins im elevated context

        "All Users" Konfiguration schreibt man ins ProgramData Verzeichnis. "Pro User" Konfiguration schreibt man ins AppData-Verzeichnis des Users. Windows gibt da eine Menge vor. Man muss es nur wissen und sich dran halten. Als Softwareentwickler, der Programme schreibt, die auf Windows Terminal Servern laufen, habe ich mir da schon hinreichend oft die Finger verbrannt.

        Rolf

        --
        sumpsi - posui - obstruxi
        1. Hello,

          Ok, ab >Win7 habe ich da keine Erfahrungen mehr. Aber mindsstens bis Win7 konnte man, wenn man wusste, wie es geht, in DLL-Dateien durchaus Variablenblöcke reservieren und zur Laufzeit auch beschreiben.

          In (POSIX-)Linux gibt es den Unterschied zwischen apt remove und apt purge.

          Der erste Befehl löscht nur das Dienstprogramm, der zweite löscht auch alle damit verbundenen Daten, sofern diese offiziell angelegt wurden. Selstverständlich können auch hier Programme irgendwelche Daten in ihnen zur Laufzeit zugänglichen Bereichen unterbringen. Dagegen hilft meistens das Modul AppArmor.

          Bei Windows bleiben die DLLs und die Config-Einstellungen meistens erhalten (wie Du schon schriebst: Registry)

          Meinung:

          Betriebssysteme und Programme, die ihre Benutzer und Administratoren auf solche W(e)ise hintergehen, sollten strafrechtlich behandelt werden.

          ( "WISE" ist eine Scientology-Gesellschaft. )

          Glück Auf
          Tom vom Berg

          --
          Es gibt soviel Sonne, nutzen wir sie.
          www.Solar-Harz.de
          S☼nnige Grüße aus dem Oberharz
          1. Hallo TS,

            Bei Windows bleiben die DLLs und die Config-Einstellungen meistens erhalten (wie Du schon schriebst: Registry)

            Config-Einstellungen: kann passieren. Die hat der Installer nicht erstellt und kennt sie deshalb nicht. Der Programmierer der Installationsroutine muss daher eine Sonderlocke drehen und die Usereinstellungen zusätzlich entfernen. Problematisch ist das in einer "All Users" Installation, wenn das Programm von User A installiert wird und User B deinstalliert, tut sich der Uninstaller schwer mit dem Auffinden von Usersettings im fremden Registry Hive. Denn der ist, mangels Login, gar nicht geladen.

            Wenn DLLs stehen bleiben, ist der Uninstaller schlecht. Ich verwende Installshield und bei mir bleibt nichts stehen. Man muss allerdings, zum Beispiel für Shell-Extensions, bereit sein, einen Cleanup-Handler zu erstellen, der beim nächsten Neustart läuft.

            Betriebssysteme und Programme, die ihre Benutzer und Administratoren auf solche W(e)ise hintergehen, sollten strafrechtlich behandelt werden.

            Lass sie aber vorher von Hanlon rasieren.

            Aber wie gesagt, es ist seit WinXP sehr viel besser geworden.

            Rolf

            --
            sumpsi - posui - obstruxi
            1. Hallo,

              Wenn DLLs stehen bleiben, ist der Uninstaller schlecht.

              oder der Software-Ingenieur. Dann nämlich, wenn er die DLLs bei der Installation ins Windows-Verzeichnis gekippt hat (was ich an sich schon für unordentlich halte), und sie bei der Deinstallation lieber nicht anfasst, denn sie könnten ja schon von drei anderen Applikationen durch neuere Versionen ersetzt worden sein und dann vermisst werden.

              Ich habe, solange ich aktiv auf Windows unterwegs war, jede Installation mit einem Spezialtool protokollieren lassen (Name will mir gerade nicht mehr einfallen). Dann habe ich mir hinterher das Protokoll angesehen und DLLs oder ähnlichen Kram, was im Windows-Verzeichnis gelandet war, ins Programm-Installationsverzeichnis verschoben (ggf. Pfade in der Registry angepasst).

              Vorteil: Alles, was zu einer Anwendung gehört, ist sauber beieinander, und jede Anwendung findet ihre DLLs in genau der Version vor, die sie auch erwartet.

              Aber wie gesagt, es ist seit WinXP sehr viel besser geworden.

              Aber auch vieles schlechter.

              Einen schönen Tag noch
               Martin

              --
              Im Englischen hat eine Katze neun Leben. Im Deutschen vielleicht auch, aber nach Abzug der Steuern bleiben nur noch sieben übrig.