Service: C/C++ Tipps: Visual C++, vorkompilierte Header und Fehler C1010


Wer je als Visual C++ Anfänger ein Projekt aufgesetzt und dabei vorkompilierte Header (Precompiled Headers) aktiviert hat, wird beim Kompilieren des Projektes früher oder später mit einer oder mehreren Compiler-Fehlern der folgenden Art konfrontiert worden sein:

    TDUserControl.cpp(5) :
    fatal error C1010:
    Unerwartetes Dateiende während der Suche nach der Direktive für die vorkompilierte Headerdatei

Also sieht man zunächst einmal in der Online-Hilfe nach. Dort findet man ausführliche Erläuterungen über Sinn und Zweck der Precompiled Headers sowie reichlich Informationen wie man sie für ein Projekt aktiviert und optimal einstellt. Nur: Was es mit dieser Fehlermeldung auf sich hat, erschließt sich daraus nicht (zumindest mir hat es sich nicht erschlossen).

Nächster Schritt: Internet-Browser anwerfen, hin zur Suchmaschine und suchen nach 'C1010', 'Precompiled Headers' etc. Fast alle Hinweise, die ich gefunden habe, lauteten: vorkompilierte Header deaktivieren.

Mangels Erfahrung und Alternativen ist man nach einiger Zeit vergeblicher Suche geneigt, diese Hinweise anzunehmen.Wenn die Projekte im Laufe der Zeit größer und die Kompilerläufe immer länger werden, kommt man irgendwann auf die Precompiled Headers zurück ...

Der Rat, die Precompiled Headers zu deaktivieren, ist wahrscheinlich einer der schlechtesten der in diversen Internet-Foren geistert. Vor allem, wenn man bedenkt, um wieviel schneller die Kompilierung läuft, wenn die vorkompilierten Header aktiv sind (*) und endlich herausgefunden hat, wie die Lösung aussieht.

Die unglaublich einfache Lösung

Wenn Precompiled Headers im Projekt aktiv sind, muss einfach nur in jeder CPP-Datei ein #include "stdafx.h" ganz oben (vor allen anderen Includes) stehen um C1010 zu unterbinden.


Die reine Kompilierzeit wird - je nach Projekt - um 50 - 75 % reduziert.

Seitenanfang

Kontaktaufnahme- und Terminvereinbarung:

Bei Fragen und für Terminvereinbarungen erreichen Sie uns unter:

0 63 49 99 07 38

0 151 51 95 34 00

Oder nutzen Sie das Kontaktformular




Ihr Ansprechpartner:


Hier sollte das Fahnungsfoto zu sehen sein.

Ralf Kunsmann

Spezialist für VBA-Programmierung
(alle Office-Anwendungen)
Entwickler der
VBA-Extension-Tools