Ich habe ein Projekt erstellt und kompiliert es als Any CPU
. auf x64-Windows. Wie ich Schwierigkeiten habe, dass der Aufbau von meinem Code zu verweisen überprüfte ich die Laufzeit und die Zielplattform:CorFlags sagt mein .NET-Programm läuft als 64bit, während DumpBin bedeutet, dass es 32bit ist
Wie Sie die Zielplattform sehen können, ist x64, wenn sie auf einem x64-O (wie meine) laufen . Ich habe DumpBin
auch:
PE signature found
File Type: EXECUTABLE IMAGE
FILE HEADER VALUES
14C machine (x86)
3 number of sections
57A49000 time date stamp Fri Aug 05 15:09:20 2016
0 file pointer to symbol table
0 number of symbols
E0 size of optional header
102 characteristics
Executable
32 bit word machine
Allerdings, wenn ich laufen CorFlags
Es ist mir für die Montage x64 als Plattform zu geben:
Version : v4.0.30319
CLR Header: 2.5
PE : PE32
CorFlags : 9
ILONLY : 1
32BIT : 0
Signed : 1
Soweit ich verstehen, wenn ich Any CPU
als Zielplattform entschied sich das OS wird ausgewählt, wie die Assembly ausgeführt wird. Bei einem 64-Bit-System läuft es in 64-Bit, bei 32-Bit-Betriebssystem mit 32 Bit.
Also meine Frage ist: Welche Version bin ich eigentlich Targeting? 32 oder 64 Bit?
Also würde ich mich besser auf "corflags" verlassen, oder? – HimBromBeere
Vielleicht sind Sie besser auf die Projekteinstellungen angewiesen. Ich kann nicht sagen, warum du diese Frage stellst. –