XP-Style durch manifest - wie sieht's dann in WinVista/Win7 aus?
-
Hi!
Wenn ich dem Linker das hier sage:
/MANIFESTDEPENDENCY:"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'"Wie sieht es dann in WinVista/Win7 aus?
Oder geht das noch irgendwie anders, dass unter XP der XP-Style ist und unter WinVista/Win7 dieser neue Aero oder sonstwie Style?Achja, und eine Frage noch: Was hat es mit "ia64" und "amd64" auf sich? Ich hab jetzt eigentlich bewusst nur x86 gewählt. Damit sind doch alle gängigen Prozessoren gemeint, auch die von Intel, oder etwa nicht?
Danke schonmal!
-
VS2008? Einfach Default-Einstellungen belassen

-
Ja, VS2008. Bist du dir sicher, dass ich nichts machen muss?
Achja, und gleich noch eine Frage: Wenn ich eine statische lib erstelle, und dieser selbst mehr als eine .lib linke, bekomme ich warnings ("warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined" und "warning LNK4221: no public symbols found; archive member will be inaccessible").
Kann ich das ignorieren?
Ist doch normal, dass man einer statischen lib selbst wieder statische libs linken kann, oder?Danke!
-
Hab es gerade ausprobiert. Ohne manifestdependency habe ich keinen XP-Style.
-
ia64 steht für Itanium, amd64 für die "normalen" x64-Anwendungen (Intel Core, AMD64).
Beim Kompilieren einer x64-Anwendung sollte man also schreiben
/MANIFESTDEPENDENCY:"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'"Ansonsten gilt für Vista/Win7 das gleiche wie für XP. Ohne Manifest kein Luna/Aero-Theme.
-
Wenn ich also nur 32bit kompiliere, brauche ich dann nur 'x86'? Selbst, wenn die Anwendung auf einem Intel Core/AMD64/Itanium ausgeführt wird?
Ich kapier das nicht...Ja, aber mit diesem manifest hab ich dann in WinVista/Win7 auch den XP Style oder wie? Was bestimmt das? Die "version='6.0.0.0'"?
-
Deine Applikation ist dan Themed und benutzt den Theme der am PC eingestellt. ist.
Unter XP ist das eben der XP Stil Luna. Unter Windows 7 eben Scenic.
-
Ok danke, bleibt noch eine Frage offen.
-
Kurtz schrieb:
Wenn ich also nur 32bit kompiliere, brauche ich dann nur 'x86'? Selbst, wenn die Anwendung auf einem Intel Core/AMD64/Itanium ausgeführt wird?
Ich kapier das nicht...Wenn Du nur 32-bit kompilierst, dann brauchst Du auch nur 'x86'. 'amd64' steht für 64-bit.
-
Kurtz schrieb:
Wenn ich eine statische lib erstelle, und dieser selbst mehr als eine .lib linke, bekomme ich warnings ("warning LNK4006: __NULL_IMPORT_DESCRIPTOR already defined" und "warning LNK4221: no public symbols found; archive member will be inaccessible").
Kann ich das ignorieren?
Ist doch normal, dass man einer statischen lib selbst wieder statische libs linken kann, oder?
-
Eine statische Lib kann doch andere Libs verwenden...
Sicher ist das normal. Das passiert doch schon mit der CRT. Dier CRT wird doch nicht in die statische Lib gezogen. In die kommt nur Dein Code!
-
Ok, hab mich nur drüber gewundert.