Komunikat o błędzie podczas korzystania z kompilatora Visual C++ 2008: "fatal error C1859"

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 976656 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Symptomy

Po uruchomieniu kompilatora Microsoft Visual C++ 2008 do kompilowania plików lub do tworzenia projektu, może zostać wyświetlony następujący komunikat o błędzie:
krytyczny błąd C1859: Nazwa pliku nagłówka Nieoczekiwany wstępnie skompilowana nagłówek, po prostu konieczności ponownego uruchamiania kompilator może rozwiązać ten problem.
Ponadto ten problem wciąż występuje nawet po uruchomieniu kompilator ponownie. Ten problem występuje, gdy zostanie włączone Tworzenie i stosowanie wstępnie skompilowana nagłówka Opcja kompilatora na komputerze z systemem Windows 7 lub Windows Server 2008.

Uwaga Mogą występować problem częściej, jeśli zostanie włączone / analyze Opcja kompilatora.

Przyczyna

Po włączeniu Tworzenie i stosowanie wstępnie skompilowana nagłówka Opcja kompilatora, kompilator wymaga pliki wstępnie skompilowana nagłówka i moduły względne nie przenosić między kompilacje. Funkcja adres miejsca układ randomizacji (znany również jako zastosowaniu ASLR) przemieszcza losowo modułów w procesie. W związku z tym ten błąd występuje, moduły przechodzenie między kompilacji.

Rozwiązanie

Informacje o poprawce

Obsługiwana poprawka jest dostępna w firmie Microsoft. Jednak ta poprawka jest przeznaczona do usunięcia tylko problemu opisanego w tym artykule. Tylko w systemach, w których występuje ten problem, należy zastosować tę poprawkę. Ta poprawka może być wciąż w fazie testowania. Jeśli dany system nie jest poważnie narażony na ten problem, firma Microsoft zaleca poczekanie na następną aktualizację oprogramowania zawierającą tę poprawkę.

Aby pobrać tę poprawkę z galerii kodu Microsoft Developer Network (MSDN), odwiedź następującą witrynę firmy Microsoft w sieci Web:
http://Code.msdn.microsoft.com/KB976656

Uwaga Galeria MSDN kod wyświetla języków, dla których poprawka jest dostępna. Jeśli język na liście nie jest widoczny, jest to, ponieważ strony galerii kod zasobu nie jest dostępna dla danego języka.

Uwaga Wystąpienia dodatkowych błędów lub konieczności rozwiązania problemu, należy utworzyć osobne zlecenie usługi. Koszty obsługi zwykłych zastosuje się do dodatkowych pytań i problemów, które nie kwalifikują się do tej poprawki. Aby uzyskać pełną listę numerów telefonów z działem pomocy technicznej firmy Microsoft lub utworzyć osobne zlecenie usługi odwiedź następującą witrynę firmy Microsoft w sieci Web:
http://support.microsoft.com/contactus/?ws=support
Uwaga Tę poprawkę można również pobrać z następującej witryny firmy Microsoft w sieci Web:
https://Connect.microsoft.com/VisualStudio/downloads/DownloadDetails.aspx?DownloadID = 25785
Uwaga Ten pakiet poprawek zawiera również poprawkę dotyczącą "C1001: Wystąpił błąd wewnętrzny w kompilatora (f:\dd\vctools\compiler\utc\src\p2\main.c pliku kompilatora, linia 182) kiedy używasz.NET framework 3.5.

Wymagania wstępne

Musi mieć Microsoft Visual Studio 2008 Service Pack 1 zainstalowany, aby zastosować tę poprawkę.

Wymaganie dotyczące ponownego uruchomienia

Nie trzeba ponownie uruchomić komputer po zastosowaniu poprawki, jeśli jest używane żadne wystąpienie programu Visual Studio.

Informacje dotyczące zastępowania poprawek

Ta poprawka nie zastępuje żadnych innych poprawek.

Informacje o pliku

Wersja anglojęzyczna tej poprawki ma atrybuty pliku (lub nowsze) wymienione w poniższej tabeli. Daty i godziny odpowiadające tym plikom są wyświetlane w formacie uniwersalnego czasu koordynowanego (UTC). Podczas przeglądania informacji o pliku jest konwertowane na czas lokalny. Aby zobaczyć różnicę między czasem UTC i czasem lokalnym, należy użyć Strefa czasowa Karta w Data i godzina element w Panelu sterowania.
Zwiń tę tabelęRozwiń tę tabelę
Nazwa plikuWersja plikuRozmiar plikuDataCzas
C1.dll15.0.30729.4455677,18410-Gru-200902: 31
C1.dll15.0.30729.4455828,74410-Gru-200902: 31
C1xx.dll15.0.30729.44552,202,95210-Gru-200902: 31
C1xx.dll15.0.30729.44552,213,70410-Gru-200902: 31
C1xx.dll15.0.30729.44552,348,36010-Gru-200902: 31
C1xx.dll15.0.30729.44552,504,01610-Gru-200902: 31
C1xx.dll15.0.30729.44552,890,56810-Gru-200902: 31

Obejście problemu

Aby obejść ten problem, należy użyć jednej z następujących metod.

Metoda 1

Wyłącz / analyze Opcja kompilatora, jeśli jest włączone.

Metoda 2

Rozpocznij czystą kompilację.

Metoda 3

Uruchom ponownie komputer.

Metoda 4

Wyłącz Tworzenie i stosowanie wstępnie skompilowana nagłówka Opcja kompilatora.

Uwaga Metody te nie są gwarantowane do pracy. Nawet jeśli używasz jednego z tych metod, może nadal napotykasz problem.

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft, które są wymienione w sekcji "Stosuje się do".

Więcej informacji

Aby uzyskać więcej informacji na temat randomizacji układ przestrzeni adresowej odwiedź następujące ogłoszenie blogu Microsoft:
Adres randomizacji układu miejsca w systemie Windows Vista
Aby uzyskać więcej informacji na temat błędów nagłówka wstępnie skompilowana odwiedź następujące ogłoszenia blogu programu Microsoft:
Wstępnie skompilowana z błędami nagłówka w systemie Windows 7

Właściwości

Numer ID artykułu: 976656 - Ostatnia weryfikacja: 20 stycznia 2012 - Weryfikacja: 1.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft Visual C++ 2008 Express Edition
  • Microsoft Visual Studio 2008 Academic Edition
  • Microsoft Visual Studio 2008 Professional Edition
  • Microsoft Visual Studio 2008 Standard Edition
  • Microsoft Visual Studio 2008 Team Edition for Database Professionals
  • Microsoft Visual Studio 2008 Team Edition for Software Architects
  • Microsoft Visual Studio 2008 Team Edition for Software Developers
  • Microsoft Visual Studio 2008 Team Edition for Software Testers
  • Microsoft Visual Studio 2008 Team Suite
Słowa kluczowe: 
kbexpertiseinter kbsurveynew kbqfe kbmt KB976656 KbMtpl
Przetłumaczone maszynowo
WAŻNE: Ten artykuł nie został przetłumaczony przez człowieka, tylko przez oprogramowanie do tłumaczenia maszynowego firmy Microsoft. Firma Microsoft oferuje zarówno artykuły tłumaczone przez ludzi, jak i artykuły tłumaczone maszynowo, dzięki czemu każdy użytkownik może uzyskać dostęp do całej zawartości bazy wiedzy Knowledge Base we własnym języku. Prosimy jednak pamiętać, że artykuły przetłumaczone maszynowo nie zawsze są doskonałe. Mogą zawierać błędy słownictwa, składni i gramatyki, przypominające błędy robione przez osoby, dla których język użytkownika nie jest językiem ojczystym. Firma Microsoft nie odpowiada za wszelkie nieścisłości, błędy lub szkody spowodowane nieprawidłowym tłumaczeniem zawartości oraz za wykorzystanie tej zawartości przez klientów. Oprogramowanie do tłumaczenia maszynowego jest często aktualizowane przez firmę Microsoft.
Anglojęzyczna wersja tego artykułu to:976656

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com