Fehler LNK1168 "C:\Users\...Test.exe" kann nicht zum Schreiben geöffnet werden.



  • Es gibt ja schon ne Menge zu LNK1168. Aber nix passt, ich hab wirklich schon stundenlang gesucht 😞

    Als mein Problem.
    (Ich hab Windows 10, Visual Studio Community 2022 (64-Bit) - Current Version 17.6.2, und alle Updates)
    Ich kann jedes Programm Compilieren und läuft. Erneutes Compilieren (meist, manchmal geht es auch zwei oder dreimal) geht dann nicht mehr, da bleibt ein Prozess übrig, den ich vorher zB mit "taskill /F /IM Test.exe" löschen muss. Hab ich x-Mal erfolglos versucht zu Compilieren, sind auch x-Prozesse zum löschen da.
    Woran kann das liegen? Also selbst "Hello World" macht den Fehler.
    Einen verdacht aber keine Beweise 🙂 hab ich ja. Kürzlich hab ich Qt installierert. Ich bin mir nicht ganz sicher, ob VS danach nochmal lief. Kann es daran liegen? Und wenn ja, was kann ich versuchen? Und wenn nein, was dann?

    Über einen (oder auch zwei) Tipp würde ich mich freuen.



  • Beendest du denn auch immer das laufende Programm (oder benutzt Shift+F5 beim Debuggen aus VS)?
    Und danach sollte der Prozess dann auch nicht mehr im TaskManager auftauchen (ansonsten ist ein Lock auf diese Datei und kann beim Kompilieren nicht überschrieben werden).



  • @Th69
    Nein, ich beende. Ich sehe es auch nicht mehr im Task-Manager.



  • Aber wenn du den Prozess nicht mehr im TaskManager siehst, dann sollte auch keine Fehlermeldung erscheinen.
    Und bei diesem Prozess "Test.exe" handelt es sich auch um das von dir im VS erstellte Programm?

    Ansonsten poste mal einen (Link zu) Screenshot vom TaskManager (mit den noch offenen Prozessen), z.B. per imgur.com?



  • @Th69
    Das ist das komische. Im Taskmanager sehe ich gar nix mehr vom offenen Prozess. "taskill " findet und löscht ihn aber. Nach mehreren (erfolglosen) Compileversuchen sind auch ebenso viele (im Taskmanager unsichtbare) laufende Prozesse (natürlich mit unterschiedlicher PID) da.
    Das passiert mit JEDEN von mir im VS erstellten Programm. Selbst mit einem minimalistischen "hello world", an meinem Code kann es kann es also nicht liegen.



  • Auf der Tabseite "Details" sollte aber jeder (laufende) Prozess aufgelistet sein, während auf der 1. Seite "Prozesse" diese eventuell Sub-Tasks eines anderen Prozesses sind (z.B. vom VS).



  • @Th69
    Problem Gelöst.
    Danke Th69 für Deine Bemühung!

    Also gelöst hab ich es auf die brachiale Art - neu installiert. Hab ich nicht gerne gemacht, weil ich schon gerne gewusst hätte, woran es lag. Aber ich hab mich jetzt tagelang erfolglos damit rumgeschlagen ... einfach nervig.



  • Ups, zu früh gefreut, er ist wieder da, der Fehler 😞
    Aber inzwischen weiß ich, es ist gar kein LNK1168. Also, ich versuche mal genau zu erklären, was ich mache.

    1. Ein neues Projekt erstellen (der Einfachheit halber ein "hello world", aber dasselbe passiert bei jeden Projekt).

    2. compileren (mit "Lokaler Windows-Debugger")
      Alles läuft.

    3. Ich verändere etwas am Code (z.B. ein Leerzeichen einfügen) und compiliere neu.
      Das Fenster (conhost.exe) erscheint, ist aber tot, der Cursor blinkt, sonst geht nix.
      Bisher hab ich das Fenster geschlossen, rechts oben auf das x gedrückt (und nicht wie früher von mir behauptet, das Programm beendet). Dann kommt beim erneuten compilieren der FNK1169.

    4. Ich gehe Kaffee machen (statt das Fenster zu schließen).
      Ich komm wieder und das Programm läuft.

    Also, das erste mal klappt alles, aber wenn ich zum zweiten mal compilere, dann gönnt sich der Compiler eine Ruhezeit (etwa 2 Minuten).
    Ich bin ratlos, was tut er da und wieso erst ab dem zweiten mal? Und vor allem, wie kann ich ihm das abgewöhnen?
    Kann jemand helfen?



  • @Feetless sagte in Fehler LNK1168 "C:\Users\...Test.exe" kann nicht zum Schreiben geöffnet werden.:

    Also, das erste mal klappt alles, aber wenn ich zum zweiten mal compilere, dann gönnt sich der Compiler eine Ruhezeit (etwa 2 Minuten).
    Ich bin ratlos, was tut er da und wieso erst ab dem zweiten mal? Und vor allem, wie kann ich ihm das abgewöhnen?
    Kann jemand helfen?

    Schwer zu sagen, woran das liegt, ich glaube aber nicht, dass es der Compiler ist. Eine Möglichkeit wäre noch ein Antivirenprogramm - die blockieren auch schonmal gerne den Zugriff auf Dateien, bis sie mit dem Scan fertig sind.

    Es empfielhlt sich ohnehin, die Entwicklungsordner auf die Ausnahmeliste des AV-Programms zu setzen. Gerade beim Kompilieren entstehen immer wieder jede Menge neue ausführbare Dateien und andere Artefakte, die besonders eifrig gescannt werden. So ein größeres Projekt wie z.B. LLVM braucht da schonmal locker die 4-fache Zeit zum bauen, wenn der Echtzeit-Scan aktiv ist 🙂



  • Lock Hunter kann feststellen, welcher Prozess eine Datei geöffnet hat und das Löschen verhindert.



  • @Finnegan
    Ja! Danke Finnegan! Ich glaube das war es.
    Nur merkwürdig, dass das Problem zwischenzeitlich weg war.


Anmelden zum Antworten