2013-07-11 5 views
14

Ich benutze Visual Studio für C++ - Programmierung, und nach dem Arbeiten und Schreiben von Programmen in x86-Umgebung (32bit-Modus) habe ich versucht, mein x86-Projekt zu bauen in x64-Umgebung dachte ich, dass ich ein Win64-Konsolen-Projekt anstelle von Win32-Konsole-Projekt erstellen sollte, aber es gab keine solche Option in VC2010. also möchte ich fragen, dass für das Erstellen von x64-Projekten sollte ich auch win32-Projekt wählen und ändern Sie die Einstellungen für das Kompilieren in x64 im Projekt mit Anweisungen in here?Was ist die Beziehung von "win32 Projekt" Name in Visual Studio zu x86 oder x64 Plattform

Ich benutze Windows 7 64bit.

Wenn Ihre Antwort ja ist, warum heißt es Win32?

+4

Win32 kann auf die 32-Bit- oder 64-Bit-API verweisen. Das meiste ist dasselbe. – chris

+8

Es heißt 'win32' aus dem gleichen Grund, aus dem Leute immer noch" Telefonnummern "wählen. Das heißt, es ist ein Übertrag davon, wann es sinnvoll war, es so zu nennen. Als win32 kam, wurde es benannt, um es von normalen 16-Bit-Windows zu unterscheiden. Zu dieser Zeit waren 32-Bit-Architekturen in einem PC ein überwältigender Fortschritt. – wallyk

+0

möglich Duplikat von [Sollte ich sowohl \ _WIN32 als auch \ _WIN64 in 64bit Build definieren?] (Http://stackoverflow.com/questions/6679396/should-i-define-both-win32-and-win64-in-64bit- build) –

Antwort

10
  • "Win32" ist der Name der OS-API.
  • "Win32 Console Application" hat seinen Namen von der API (nicht von Bit-Ness).

Win32-API kann sowohl von 32-Bit- als auch von 64-Bit-Anwendungen verwendet werden. So kann eine Win32-Konsolenanwendung sowohl für 32-Bit als auch für 64-Bit erstellt werden. Erstellen Sie für Letzteres die Konfiguration "x64" im Configuration Manager.

+4

Genau. _Win32 API_ [ist ein Synonym] (http://msdn.microsoft.com/en-us/library/vstudio/bb384843.aspx) für _Windows API_. Jetzt, wo wir in einer 64-Bit-Welt sind, ist die Verkürzung von Win32 API zu Win32 ein besonders irreführender Ausdruck. –

0

Ich denke, es gibt eine Verwirrung hier, sagen Sie mir, wenn ich falsch liege, aber Sie haben im Grunde Probleme beim Einrichten Ihres Konsolenprogramms auf der x64-Plattform.

Wenn Sie die Express-Version verwenden, müssen Sie eine ordnungsgemäße Microsoft Windows SDK for Windows 7 and .NET Framework 4 und SP1 installieren, wie auf dem von Ihnen angegebenen Link angegeben, andernfalls wird die X64-Plattform-Option nicht verfügbar sein. Hast du das schon gemacht?

Sobald dies erledigt, wird der Wechsel zum x64 ziemlich einfach sein, Sie werden die Option in der Dropdown-Liste der Plattformen erhalten, sollte gut kompilieren (und nein, Sie müssen nicht die Win32-Konfiguration verwenden).

+0

Nein, ich habe kein Problem, meine Umgebung auf x64-Plattform zu setzen. aber danke für deinen Kommentar – PsP

4

Die anderen Antworten ziemlich haben es bedeckt, aber ich dachte, ich könnte die folgenden Erläuterungen hinzuzufügen:

X86 32-Bit-Chipsatz für Intel/AMD ist. Win32 kann andere Chipsätze wie ARM in einem Windows Mobile-Projekt unterstützen.

Darüber hinaus wird die Plattform beim Erstellen von nativen C++ - Anwendungen für x86 tatsächlich win32 heißen.

+0

Wenn Win32 auf eine 32-Bit- oder eine 64-Bit-Plattform verweisen kann, ist es nicht irreführend, dass Visual Studio Win32 für eine 32-Bit-Plattform verwendet? –

+0

@KyleDelaney. Ich denke, dass Ihr Kommentar für eine andere Antwort gedacht sein könnte. Aber ich werde meine Gedanken auf jeden Fall hinzufügen ... Win32 bezieht sich standardmäßig nur auf 32-Bit-Plattformen, nicht auf 64. Sie können jedoch die Einstellungen ändern und (falsch) konfigurieren, so dass es irgendwie auf 64-Bit zutrifft Plattformen. Dann gibt es den Punkt, dass Leute immer noch den Begriff "Win32" verwenden, wenn sie über den API-Satz sprechen (unabhängig von der tatsächlichen Plattform). – Jahmic

Verwandte Themen