Kann die Include-Datei nicht öffnen: 'stdio.h' - Visual Studio Community 2017 - C ++ - Fehler

11

Ich versuche, eine Lösung für Visual Studio Community 2017 zu erstellen, aber ich erhalte weiterhin den Fehler " Include-Datei nicht öffnen: 'stdio.h' ". Ich habe mehrere ähnliche Fragen gelesen, kann das Problem aber immer noch nicht beheben. Es sieht so aus, als ob die Datei stdio.h in der Datei stdafx.h aufgerufen wird. Unten sind mehr Details. Irgendwelche Vorschläge? (Ich kann noch keine Bilder einbetten, bitte klicken Sie auf die Links für Screenshots.)

Systemdetails: Windows 10
Visual Studio Community 2017 v.15.2 (26430.6)
- Installierte Desktop-Entwicklung mit C ++ ( Screenshot: Installationsliste )

Schritt 1: Ich habe das berühmte Hello World-Programm in C ++ geschrieben.

%Vor%

Schritt 2: Ich habe Build & gt; Lösung erstellen.

Problem: 'stdio.h' : Keine solche Datei oder kein Verzeichnis. Vollständiger Fehler:

%Vor%

Details zur Fehlerbehebung / Dinge, die ich versucht habe:

  1. Konfigurationseigenschaften & gt; VC ++ - Verzeichnisse
    Include Directories $(VC_IncludePath);$(WindowsSDK_IncludePath);
  2. Screenshot: Projektmappen-Explorer (Dateien im Projekt)
  3. Code in stdafx.cpp Datei:

    %Vor%
  4. Code in der Datei stdafx.h :

    %Vor%

    HINWEIS: Die #include für <stdio.h> und <tchar.h> haben beide die rote Squigglel-Zeile darunter und sagen "kann die Quelldatei nicht öffnen".
    VERSUCHT: Ich habe versucht, die letzten zwei Zeilen zu entfernen, aber dann habe ich mehr Fehler.

  5. TRIED: Da viele vorgeschlagen haben, dass stdafx.h nicht benötigt wird, habe ich versucht, nur die erste Zeile, #include "stdafx.h" , zu entfernen. Aber damit das funktioniert, musste ich ein bisschen mehr tun. ANTWORT ANSCHAUEN.

dahiana 27.05.2017, 17:41
quelle

4 Antworten

4

Es gibt drei Möglichkeiten, dieses Problem zu lösen.

  1. Vorkompilierte Header ignorieren # 1
    Schritte: Projekt & gt; Eigenschaften & gt; Konfigurationseigenschaften & gt; C / C ++ & gt; Befehlszeile & gt; Im Feld Zusätzliche Optionen fügen Sie / Y- hinzu. ( Screenshot der Eigenschaftenseiten ) & gt; Ok & gt; Entfernen Sie #include "stdafx.h"
  2. Vorkompilierte Header ignorieren # 2
    Schritte: Datei & gt; Neu & gt; Projekt & gt; ... & gt; Klicken Sie im Anwendungsassistenten auf Weiter & gt; Deaktivieren Sie das Feld Vorkompilierter Header & gt; Fertig stellen & gt; Entfernen #include "stdafx.h"
  3. Visual Studio neu installieren
    Das hat auch für mich funktioniert, weil ich festgestellt habe, dass mit meinem Windows SDK vielleicht etwas nicht stimmt. Ich benutzte Windows 10, aber mit Windows SDK 8.1. Möglicherweise haben Sie auch dieses Problem.
    Schritte: Öffnen Sie Visual Studio Installer & gt; Klicken Sie auf die dreizeilige Menüleiste & gt; Deinstallieren & gt; Starten Sie Ihren Computer neu & gt; Öffnen Sie das Visual Studio-Installationsprogramm & gt; Installieren Sie, was Sie wollen, aber stellen Sie sicher, dass Sie nur das neueste Windows SDK 10, nicht mehrere oder das 8.1 installieren.

    Bei der ersten Installation von Visual Studio wurde ein Fehler angezeigt, der besagt, dass ich Windows SDK 8.1 installieren musste. Das habe ich mit der Modify-Option von Visual Studio Installer getan. Vielleicht war das ein Problem, weil ich es installiert habe, nachdem Visual Studio bereits installiert wurde, oder weil ich stattdessen SDK 10 brauchte. Um sicher zu sein, habe ich eine komplette Neuinstallation vorgenommen.

dahiana 27.05.2017, 20:44
quelle
28

Das gleiche Problem mit der Projekt-Portierung von VS2013 auf VS2017,
Fix: ändere "Eigenschaften- & gt; Allgemein- & gt; Windows SDK Version" auf 10

    
Maxim Akristiniy 26.06.2017 06:48
quelle
5

Konfrontiert mit dem Problem, dass stdlib.h und stdio.h (und möglicherweise mehr) nach der Installation der VS2017-Community auf einem neuen Computer und der Migration einer Lösung von VS2013 auf VS2017 fehlten.

Verwendet @Maxim Akristiniy Vorschlag, aber immer noch Fehlermeldung bezüglich Toolset-Kompatibilität. VS selbst schlug jedoch vor, das Lösungsretarget zu übernehmen, indem Sie mit der rechten Maustaste auf die Lösung in Projektmappen-Explorer klicken und dann Retarget solution aus dem Menü und die aktualisierte Windows SDK Version aus der Dropdown-Liste auswählen >

Jetzt bauen meine Projekte ohne ein Problem.

Beachten Sie, dass Sie möglicherweise das Projekt als Startprojekt für das Retargeting festlegen müssen.

    
ysap 20.07.2017 21:37
quelle
0

Ich hatte nach der Aktualisierung meines VS2017 ein ähnliches Problem. Projekt gut gebaut; aber viele "Fehler", wenn Code im Editor aufgerufen wurde. Versuchte sogar, VS neu zu installieren. Ich konnte es lösen, indem ich die Option "Ignoriere Standard-Include-Pfade" auf "Ja" setze. Versucht, die Lösung mit vielen Fehlern zu erstellen. Ging zurück und stellte die Option auf Nein. Nach dem Wiederaufbau ging mein Problem weg.

    
David Goeken 07.04.2018 03:08
quelle