In Visual Studio 2008, ist es ein makro zu identifizieren, die eine 64-bit-Windows-OS?

Hier ist das problem:

Um #importieren Sie die richtige version von ADO für mein 32-bit-Programm, ich muss wissen, ob ich kompiliere auf einem 32-bit-Windows-Betriebssystem (also die Datei im Programm-Dateien) oder eine 64-bit-Betriebssystem (also die Datei in " Programme (x86)). Aber ich kann nicht finden, ein makro, das mir sagt, oder auch nur ein makro, das mir sagt, dass der Prozessor 64-bit.

Wenn ich testen Sie es auf 64-bit-windows 7 mit Visual Studio 2008 Express, den folgenden einschlägigen Makros sind definiert:

_M_IX86

X86

Aber keiner von den *64 Makros angezeigt, die definiert werden, was wahrscheinlich auch der Fall wäre, wenn Sie beziehen sich auf /target/Architekturen und nicht die aktuelle Maschine-Architektur.

Ist es ein Präprozessor-makro, das mir sagen ob ich mit einer 64-bit-Windows-OS?

Und wenn ja, was ist es? Ich würde sogar rechnen für eine, die mir sagen, ob ich mit einem 64-bit-Prozessor.

(p.s. Ich bin mir schon bewusst,diese Liste)

Update

So weit, die Leute scheinen zu denken, dass es kein solches makro, und kopieren Sie die DLLs oder mit Hilfe von Umgebungsvariablen ist eine bessere Sache zu tun.

Also nehmen Sie die Umgebungsvariable Hinweis, ich habe gearbeitet, um das problem für die Entwickler, indem Sie beide Ordner -- Program Files (x86) und Program Files -- auf die include-Pfads und Verwendung der Winkel-Klammer-syntax von #import. Allerdings vermute ich, dass ich brauchen, um zu bauen release-Versionen für jede version des OS, da das ADO-DLLs sind nun Teil des Betriebssystems und nicht verteilbaren. Blick in das.

InformationsquelleAutor Matthew Lowe | 2011-01-04
Schreibe einen Kommentar