2013-07-11 10 views
14

Używam Visual Studio do programowania w C++, a po pracy i pisaniu programów w środowisku x86 (tryb 32-bitowy) Próbowałem zbudować mój projekt x86 w środowisku x64, więc pomyślałem, że powinienem stworzyć projekt konsoli Win64 zamiast projektu Win32, ale nie było takiej opcji w VC2010. więc chcę poprosić, że przy budowaniu x64 projektów powinienem także wybrać projekt win32 i zmienić ustawienia kompilacji w x64 wewnątrz projektu za pomocą instrukcji w here?jaki jest związek nazwy "projektu win32" w visual studio z platformą x86 lub x64

Używam Windows 7 64bit.

jeśli twoja odpowiedź brzmi "tak", to dlaczego nazywa się to win32?

+4

System Win32 może odnosić się do 32-bitowego lub 64-bitowego interfejsu API. Większość jest taka sama. – chris

+8

To się nazywa 'win32' z tego samego powodu, dla którego ludzie wciąż" wybierają "numery telefonów. Oznacza to, że jest to przeniesienie od momentu, kiedy było to uzasadnione. Kiedy pojawił się win32, został nazwany, aby odróżnić go od zwykłego 16-bitowego systemu Windows. W tym czasie 32-bitowe architektury na PC były postępem ducha. – wallyk

+0

możliwy duplikat [powinienem zdefiniować zarówno \ _WIN32, jak i \ _WIN64 w 64-bitowej wersji?] (Http://stackoverflow.com/questions/6679396/should-i-define-both-win32-and-win64-in-64bit- build) –

Odpowiedz

10
  • "Win32" to nazwa interfejsu API systemu operacyjnego.
  • "Aplikacja Win32 Console" otrzymała swoją nazwę od API (nie od bit-ności).

Funkcja Win32 API może być używana zarówno w aplikacjach 32-bitowych, jak i 64-bitowych. Tak więc aplikację Win32 Console można zbudować zarówno dla wersji 32-bitowej, jak i 64-bitowej. W drugim przypadku utwórz konfigurację "x64" w programie Configuration Manager.

+4

Dokładnie. _Win32 API_ [to synonim] (http://msdn.microsoft.com/en-us/library/vstudio/bb384843.aspx) dla _Windows API_. Teraz, gdy jesteśmy w 64-bitowym świecie, skrócenie _Win32 API_ do _Win32_ jest szczególnie mylącym terminem. –

0

Myślę, że tutaj jest zamieszanie, powiedz mi, czy się mylę, ale zasadniczo masz problemy z konfiguracją programu konsoli na platformę x64.

Jeśli używasz wersji ekspresowej, musisz zainstalować odpowiednią wersję Microsoft Windows SDK for Windows 7 and .NET Framework 4 i SP1, zgodnie z linkiem podanym w opisie, w przeciwnym razie opcja platformy x64 nie będzie dostępna. Czy już to zrobiłeś?

Po wykonaniu tej czynności przełączenie na x64 będzie dość łatwe, otrzymasz opcję z rozwijanej listy platform, powinieneś skompilować dobrze (i nie, nie musisz używać konfiguracji win32).

+0

Nie Nie mam problemu z ustawieniem środowiska na platformę x64. ale dzięki za komentarz – PsP

4

innych odpowiedzi prawie nie obejmował, ale pomyślałem, że dodam następujące wyjaśnienia:

X86 jest dla 32 bitowego mikroukładu Intel/AMD. Win32 może obsługiwać inne chipsety, takie jak ARM w projekcie Windows Mobile.

Co więcej, podczas tworzenia natywnych aplikacji C++ dla x86 platforma będzie nazywać się win32.

+0

Jeśli Win32 może odnosić się do platformy 32-bitowej lub 64-bitowej, czy nie jest to mylące, ponieważ Visual Studio używa Win32 do odwoływania się do platformy 32-bitowej? –

+0

@ KyleDelaney. Myślę, że Twój komentarz może być przeznaczony do innej odpowiedzi. Ale dodam moje myśli w każdym przypadku ... Domyślnie Win32 odnosi się tylko do platform 32-bitowych, a nie 64. Można jednak ustawiać i (źle) konfigurować ustawienia, więc w jakiś sposób dotyczy 64-bitowych platformy. Wtedy jest kwestia, że ​​ludzie wciąż używają terminu "Win32", kiedy mówią o zestawie API (niezależnie od rzeczywistej platformy). – Jahmic

Powiązane problemy