Ich habe in Visual Studio 2008 ein neues C ++ - Projekt erstellt. Es wurde noch kein Code geschrieben. Es wurden nur die Projekteinstellungen geändert.
Wenn ich das Projekt kompiliere, erhalte ich den folgenden schwerwiegenden Fehler:
Schwerwiegender Fehler LNK1104: Datei 'C: \ Program.obj' kann nicht geöffnet werden
quelle
"C:\Program Files\sofware sdk\lib\library.lib"
. Das Fehlen eines;
führt auch dazu, dass das Projekt falsch kompiliert wird.Dies kann passieren, wenn die Datei ebenfalls noch ausgeführt wird.
quelle
Das Problem verschwand für mich nach dem Schließen und erneuten Öffnen von Visual Studio. Ich bin mir nicht sicher, warum das Problem aufgetreten ist, aber das könnte einen Versuch wert sein.
Dies war unter VS 2013 Ultimate, Windows 8.1.
quelle
Stellen Sie außerdem sicher, dass dies nicht aktiviert ist : Konfigurationseigenschaften -> C / C ++ -> Präprozessor -> Vorverarbeitung zu einer Datei .
quelle
Ich hatte das gleiche Problem. Es wurde durch ein "," im Namen eines Ordners mit zusätzlichem Bibliothekspfad verursacht. Es wurde durch Ändern des zusätzlichen Bibliothekspfads behoben.
quelle
Mein Problem war eine fehlende
.lib
Erweiterung, gegen die ich gerade verlinkt habe,mylib
und VS hat sich entschlossen, danach zu suchenmylib.obj
.quelle
In meinem Fall handelte es sich um eine fehlgeleitete Referenz. Das Projekt verwies auf die Ausgabe eines anderen Projekts, das letztere gab jedoch nicht die Datei aus, nach der das erstere gesucht hatte.
quelle
Lösung 1 (für meinen Fall): Starten Sie den Windows Explorer-Prozess neu (ja, den Windows-Dateimanager).
Lösung 2:
Ich gehe davon aus, dass manchmal das Dateisystem oder derjenige, der es kontrolliert, mit seinen Berechtigungen verloren geht. Vor dem Neustart der Windows-Sitzung wurde versucht, Zombie-
msbuild32.exe
Prozesse zu beenden, Visual Studio neu zu starten und zu überprüfen, ob die Problemdatei nicht einmal angezeigt wird. Keine Probleme mit der Build-Konfiguration. Es passiert ab und zu. Einige interne Probleme in Windows werden nicht behoben und müssen neu gestartet werden.quelle
Ich hatte den gleichen Fehler, nur mit einem Nuget-Paket, das ich installiert hatte (eines, das nicht nur Header ist) und dann versuchte, es zu deinstallieren.
Was für mich falsch war, war, dass ich immer noch einen Header für das Paket enthielt, das ich gerade in einer meiner CPP-Dateien deinstalliert hatte (ziemlich albern, ja).
Ich habe sogar den zusätzlichen Link zu den Bibliotheksverzeichnissen entfernt
Project -> Properties -> Linker -> General
, aber natürlich ohne Erfolg, da ich immer noch versucht habe, auf den nicht vorhandenen Header zu verweisen.Auf jeden Fall eine verwirrende Fehlermeldung in diesem Fall, da der Headername
<boost/filesystem.hpp>
aber der Fehler mir gab"cannot open file 'llibboost_filesystem-vc140-mt-gd-1_59.lib'"
und keine Zeilennummern oder so.quelle
Ich hatte das gleiche Problem, aber die Lösung für meinen Fall ist nicht in den Antworten aufgeführt. Mein Antivirenprogramm (AVG) hat die Datei
MyProg.exe
als Virus ermittelt und in das "Virenspeicher" gestellt. Sie müssen dieses Lager überprüfen und wenn die Datei vorhanden ist, stellen Sie sie einfach wieder her. Es hat mir geholfen.quelle
Bei einem Assembly-Projekt (ProjectName -> Build Dependencies -> Build Customizations -> masm (ausgewählt)) verursachte das Setzen von Prececessed Source Listing auf True das Problem, und das Löschen der Einstellung behebt es. VS2013 hier.
quelle
Ich habe das gleiche Problem mit dem Linker, der sich über das Fehlen der ausführbaren Hauptdatei beschwert. Dies geschah während unseres Lösungsports auf das neue Visual Studio 2013 . Die Lösung ist eine abwechslungsreiche Mischung aus verwalteten und nicht verwalteten Projekten / Code. Das Problem (und die Lösung) war eine fehlende Datei app.config im Lösungsordner. Es dauerte einen Tag, um dies herauszufinden :(, da das Ausgabeprotokoll nicht sehr hilfreich war.
quelle
Ich habe alle meine Einstellungen gemäß dieser Liste überprüft: http://msdn.microsoft.com/en-us/library/ts7eyw4s.aspx#feedback . Es ist hilfreich für mich und für meine Situation stelle ich fest, dass die Linkabhängigkeit der Projekteigenschaften ein doppeltes Anführungszeichen hat, das nicht vorhanden sein sollte.
quelle
Ich antworte, weil ich diese spezielle Lösung von niemand anderem aufgelistet sehe.
Anscheinend hat mein Antivirenprogramm (Ad-Aware) eine DLL markiert, von der eines meiner Projekte abhängt, und sie gelöscht. Auch nach dem Ausschließen des Verzeichnisses, in dem sich die DLL befindet, wurde das gleiche Verhalten fortgesetzt, bis ich meinen Computer neu startete.
quelle
In meinem Fall hatte ich Mathe-Bibliotheksdateien aus einem früheren Game Engine Graphics-Kurs durch GLM ersetzt. Das Problem war, dass ich sie dem Projekt im Projektmappen-Explorer von Visual Studio nicht hinzugefügt habe (obwohl sie sich im Projekt-Repository befanden).
quelle
Ich hatte dieses Problem in Verbindung mit dem LNK2038-Fehler und folgte diesem Beitrag, um die RELEASE- und die DEBUG-DLLs zu trennen. In diesem Prozess hatte ich den gesamten Ordner bereinigt, in dem sich diese Abhängigkeiten befanden.
Zum Glück hatte ich eine Sicherungskopie all dieser Dateien und bekam die Datei, für die dieser Fehler zurückgeworfen wurde, in den DEBUG-Ordner, um das Problem zu beheben. Der Fehlercode war in gewisser Weise irreführend, da ich viel Zeit aufwenden musste, um von einer der Antworten aus diesem Beitrag erneut zu diesem Tipp zu gelangen.
Hoffe diese Antwort hilft jemandem in Not.
quelle
Ich habe es gelöst, indem ich ein vorhandenes Projekt hinzugefügt habe zu meiner Lösung , die ich hinzufügen vergessen haben , in der ersten Zeit.
quelle
Ich hatte den gleichen Fehler:
Dies wurde durch die
;
am Ende verursacht. Wenn Sie mehrere Bibliotheken haben, sollten diese durch ein Leerzeichen (Leertaste), kein Komma oder Semikolon getrennt werden!Verwenden Sie also
;
nichts anderes, wenn Sie Bibliotheken in auflistenProject properties >> Configuration Properties >> Linker >> Inputquelle
Ich habe die obige Lösung ausprobiert, aber bei mir nicht funktioniert. Also benenne ich die Exe um und erstelle die Lösung neu. Für mich geht das.
quelle
Ich hatte genau diesen Fehler beim Erstellen einer VC ++ - DLL in Visual Studio 2019:
Es stellte sich heraus, dass ich unter Projekteigenschaften> Linker> Eingabe> Moduldefinitionsdatei eine Def-Datei angegeben hatte, die am Ende des Dateinamens ein nicht übereinstimmendes Anführungszeichen hatte . Durch Löschen des nicht übereinstimmenden doppelten Anführungszeichens wurde das Problem behoben.
quelle
Getötet
msbuild32.exe
und wieder aufgebaut. Es hat bei mir funktioniert.quelle
Ich habe das gleiche Problem mit "Visual Studio 2013".
Es wurde nach dem Schließen und Neustarten von Visual Studio behoben.
quelle
Ich hatte das gleiche Problem, ich habe gerade den Code in ein neues Projekt kopiert und den Build gestartet. Ein anderer Fehler trat auf. Fehler C4996: 'fopen': Diese Funktion oder Variable ist möglicherweise unsicher. Verwenden Sie stattdessen fopen_s
Um dieses Problem erneut zu lösen, habe ich meine eine Eigenschaft wie folgt in das Projektprojekt eingefügt. Projekt -> Eigenschaften -> Konfigurationseigenschaft -> c / c ++. In dieser Kategorie gibt es Feldnamen Präprozessor-Definitionen Ich habe _CRT_SECURE_NO_WARNINGS hinzugefügt, um das Problem zu lösen. Hoffe, es wird helfen ...
Danke
quelle