2011-01-04 6 views
11

Po Zrobiłem jak sugeruje Hans Passant w C++: Getting the "error C2065: 'pst' : undeclared identifier" while using pstsdk? (które działa), mój kod wygląda teraz tak:C++: Pierwsze kod błędu c3859 podczas kompilacji w mieszance C++/CLI i C++

private: 
    System::Void readPstFileButton_Click(System::Object^ sender, System::EventArgs^ e) { 
     pstsdk::pst myfile(marshal_as<std::wstring>(fileNameTextBox->Text)); 
    } 

Otrzymuję teraz następujące błędy:

błąd C3859: przekroczono zakres pamięci wirtualnej dla PCH; proszę zrekompilować z opcją wiersza poleceń "-Zm111" lub wyższym

błąd C1076: limit kompilatora: osiągnięto wewnętrzny limit sterty; użyj/Zm do określenia wyższego limitu

Zdecydowanie nie spodziewałem się, że wystąpią, i nie wiem, jak je rozwiązać.

+0

Błędy informują, jak je rozwiązać. –

+1

To bardzo pomaga! Dzięki! Poza tym, chociaż błąd mówi wszystko, wydaje się, że brakuje czegoś, aby rozwiązać je, ponieważ nie kompiluję się na linii poleceń, ale używając VS2010. –

+1

Usunięto "Zarządzany C++" tag - zarządzany C++ nie działa - jeśli używasz C++/CLI, używasz tego, co zastąpiło "Zarządzane C++". –

Odpowiedz

39
  1. Kliknij prawym przyciskiem myszy projekt C++ w oknie Solution Explorer; wybierz Właściwości.
  2. W oknie dialogowym Właściwości rozwiń Configuration Properties> C/C++> Command Line
  3. W Opcje dodatkowe dodać /Zm120

Powtórz tę czynność dla debugowania i uwalniania i innych konfiguracjach masz.

Aby uzyskać więcej informacji o tym, co robi ta opcja wiersza polecenia (i co to zmiana oznacza), zobacz the /Zm documentation.

+0

Ta kompilacja jest poprawna, a teraz rozumiem, co robi przełącznik opcji// Zm, co pomaga mi lepiej się uczyć. Dzięki! =) (+1 i zaakceptowana odpowiedź) –

+1

Wskazówka: możesz wybrać wszystkie projekty i dodać do nich ten sam arkusz właściwości w jednym kroku. Arkusz zostanie również dodany do debugowania i wydania wersji. – Mene

+1

to po prostu nie działa dla setek osób. Już ustawiliśmy maksimum. I jest całkowicie losowe, czy ten błąd pojawia się po przebudowaniu wszystkiego. – Dan