VC++ fatale fout LNK1168: kan bestandsnaam.exe niet openen om te schrijven

Plots stopte mijn Visual Studio Express 2010 C++ met het opnieuw opbouwen van mijn project.
Wanneer ik voor het eerst op F7druk, wordt het project gebouwd en loopt het goed (het is een voorbeeld van een hallo wereld).

Vervolgens breng ik wat wijzigingen aan en druk ik nogmaals op F7, dan krijg ik:

1>LINK : fatal error LNK1168: cannot open C:\Users\username\Documents\Visual Studio 2010\Projects\console\Debug\console.exe for writing**<br><br>

Nu komt het grappige:

  1. De app is niet actief en wordt niet weergegeven in Taakbeheer.
  2. Ingaan op de projectdirectory en deze met de hand proberen te verwijderen, heeft succes, maar het bestand VERSCHIJNT OPNIEUW VANUIT NERGENS.
  3. Het systeemherstel is uitgeschakeld.
  4. Ik heb ook geprobeerd om het eigendom van de hele verdomde schijf over te nemen.
  5. Elke keer als ik het bestand verwijder, wordt het opnieuw aangemaakt, maar soms stopt het daarmee.
  6. Als ik het bestand verwijder (en het daarna opnieuw wordt aangemaakt), en ik start sysinternals procmon, dan verdwijnt het bestand.
  7. Als ik procmon eerder start, blijft het bestand verschijnen na het verwijderen, zoals altijd.

OS: W7 SP1 64-bit, met laatste updates

Heeft u ideeën, alstublieft?


Antwoord 1, autoriteit 100%

Schakel de “Applicatie-ervaring”-service in. Start een consolevenster en typ net start AeLookupSvc


Antwoord 2, autoriteit 99%

Het probleem is waarschijnlijk dat u bent vergeten het programma af te sluiten en dat u het programma in plaats daarvan op de achtergrond laat draaien.

Zoek het consolevenster waar het exe-bestandsprogramma wordt uitgevoerd en sluit het door op de X in de rechterbovenhoek te klikken. Probeer vervolgens het programma opnieuw te compileren. In mijn geval loste dit het probleem op.

Ik weet dat dit bericht oud is, maar ik antwoord voor de andere mensen zoals ik die dit via de zoekmachines vinden.


Antwoord 3, autoriteit 68%

Ik heb dit probleem ondervonden toen de build abrupt werd gesloten voordat deze werd geladen. Er verschijnt geen proces in Taakbeheer, maar als u naar het uitvoerbare bestand navigeert dat in de projectmap is gegenereerd en het probeert te verwijderen, beweert Windows dat de toepassing in gebruik is. (Als dat niet het geval is, verwijdert u het bestand en bouwt u het opnieuw op, waardoor een nieuw uitvoerbaar bestand wordt gegenereerd)
In Windows (Visual Studio 2019) bevindt het bestand zich standaard in deze map:

%USERPROFILE%\source\repos\ProjectFolderName\Debug

Om het zogenaamd lopende proces te beëindigen, opent u de opdrachtprompt en typt u de volgende opdracht:

taskkill /F /IM ApplicationName.exe

Dit dwingt elke actieve instantie om te worden beëindigd.
Herbouwen en uitvoeren!


Antwoord 4, autoriteit 55%

Het herstarten van Visual Studio loste het probleem voor mij op.


Antwoord 5, autoriteit 18%

In mijn geval loste het opschonen en opnieuw opbouwen van het project het probleem op.


Antwoord 6, autoriteit 5%

Nou, ik heb het project net opgeslagen en afgesloten en VS Express 2013 opnieuw opgestart in Windows 8 en dat loste mijn probleem op.


Antwoord 7, autoriteit 5%

De reden is dat je vorige build nog steeds op de achtergrond draait.
Ik los dit probleem op door deze stappen te volgen:

  • Open Taakbeheer
  • Ga naar het tabblad Details
  • Vind uw toepassing
  • Beëindig de taak door er met de rechtermuisknop op te klikken
  • Klaar!

Antwoord 8

Dit kan ook een probleem zijn door oneigenlijk gebruik van functies zoals FindNextFile wanneer een FindClose nooit wordt uitgevoerd. Het proces van het gebouwde bestand wordt beëindigd en de build zelf kan worden verwijderd, maar LNK1168 verhindert een herbouw vanwege de open handgreep. Dit kan een handvatlek in Explorer veroorzaken dat kan worden verholpen door Explorer te beëindigen en opnieuw te starten, maar in veel gevallen is een onmiddellijke herstart noodzakelijk.


Antwoord 9

Ik weet dat dit een oude vraag is, maar ik dacht ik deel hoe ik het probleem heb opgelost.

Als u Visual Studio gebruikt en deze fout optreedt, kunt u proberen een koppeling aan het proces te maken (CTRL+ALT+P) en het proces “(program.exe”) te vinden. Wanneer u probeert om eraan te koppelen, wordt een foutmelding weergegeven waarin staat dat het niet kan worden gekoppeld, waardoor het proces niet meer wordt uitgevoerd (ook al is het niet…). U kunt ook de (program.exe) verwijderen van uw Debug-map.

Ik hoop dat dit iemand helpt! 🙂


Antwoord 10

EINDELIJK DE BESTE MANIER DIE PERFECT VOOR MIJ WERKT

Geen van de oplossingen op deze pagina werkte voor mij BEHALVE DE VOLGENDE

Probeer het volgende onder de commentaarsecties van het tweede antwoord:

Toevoegen aan mijn bovenstaande opmerking, Taakbeheergeeft niet de . weer
bestandsnaam.exe-proces, maar Resource Monitor doet dat, dus ik kan
dood het vanaf daar, wat het probleem oplost zonder opnieuw op te starten.
A__ 19 jun ’19 om 21:23


Antwoord 11

Als de bovenstaande oplossingen niet werken, kun je dit proberen, wat voor mij werkte.

Open een verhoogde opdrachtprompt (cmd -> Run as administrator), schrijf dan het volgende commando en druk op enter:

wmic process where name='YOUR_PROCESS_NAME.exe' delete

Als u een bericht ziet: Instance deletion successful., dan kunt u opnieuw projecteren en uitvoeren en uitvoeren van vs.

b.g. In het geval van OP is het commando:

wmic process where name='console.exe' delete

Antwoord 12

Ik had ook hetzelfde probleem. Mijn console-venster was niet langer open, maar ik was in staat om mijn aanvraag te zien lopen door naar verwerkingen te gaan binnen Taakbeheer. De procesnaam was de naam van mijn aanvraag. Zodra ik het proces heb beëindigd, was ik in staat om mijn code zonder problemen te bouwen en te compileren.


Antwoord 13

Start uw programma als beheerder. Het programma kan uw bestanden niet herschrijven Oorzaak Uw bestanden bevinden zich op een beschermde locatie op uw harde schijf.

Other episodes