|
|
一、在VS 2003 环境中:2 C# F% Z' O; M2 U( i+ p
1.在工程的目录下建一个名为 xpapp.manifest的文件. 把下面的内容拷到这个文件中:* D" y* ~( J/ w& _
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>- ]- b: c0 i) a' d
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 8 q% f$ e$ C i/ Y+ z; l2 A
<assemblyIdentity
; Z* ] e: Q* v& b version="1.0.0.0" / a) o+ ?$ V1 M/ K
processorArchitecture="X86"
2 n( H! N7 h; I1 W* c$ b9 L" f) ^ name="Microsoft.Windows.ViPod"
; @) J. s5 P. O* C4 R& W type="win32" : r7 h9 @2 k+ c0 z6 w* ~
/>
. [0 v5 g. l( J2 H<description>Your app description here</description>
/ ]: \1 G3 t9 O) f7 N7 ]) c& s<dependency>
6 _0 j9 ~& R$ }$ d <dependentAssembly>
% b. B' A& N, [3 D <assemblyIdentity
! K M) Z% c- _* y; u% V, _. h type="win32" * q" Q: j$ h+ F) Y1 _2 P5 g1 ^' g6 U
name="Microsoft.Windows.Common-Controls"
/ @& c, r8 b9 i3 \6 P version="6.0.0.0"
& d4 `; O7 t2 ?* a% u processorArchitecture="X86"
+ {' B; P9 m4 ?# T5 x publicKeyToken="6595b64144ccf1df" ) A% M# i! n2 w' R1 [7 c6 D$ K
language="*"
. F! z, p; P' `6 ^ /> ( i$ k2 M4 u+ `
</dependentAssembly>
! m0 R& e( g& n$ p1 M</dependency>
2 F. `" b" {4 X6 y</assembly>) Z3 F+ D0 V7 K1 J+ k
0 o/ K$ P. q( c
2.将工程的*.rc文件打开, 加上这样一句话(注意要加上#endif前):
5 `- B; f& p0 ?7 f/ i( U//这名话是告诉工程使用刚才我们创建的那个文件,使程序界面变成XP风格
3 v/ i4 e8 X5 G; f9 @CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "xpapp.manifest"1 W8 U" w( R, D: s
5 x: I8 b- S2 X7 w# K3.在工程的C*App文件中加上9 I/ r; }, ~# n6 J* u) ~: G1 g& a
#pragma comment(lib, "ComCtl32.lib") //3步是选做
4 k' s% U# }+ W: G" H/ i. T4.如果你的代码是用V6的向导生成的,那必须将工程转成vc.net下,然后在C*App的InitInstance()最开始出加上
" x9 q7 J: Y. |+ A& vInitCommonControls();这个函数,V6的向导不会自动添加这个函数.
* r# ?& `: n' t4 \8 W//4步是选做
! Q5 x3 ^( M8 k: }1 ~# L( d+ z% w( Y- j7 P2 z9 S0 x+ Z
5 c# X) O5 e( F1 O二、如果是VS 2005 则有所不同:% D4 v, m0 p0 o+ u6 u! Z+ s
VS 2005中,如果Project->Property -- General -- Character Set 为Use Unicode Character Set,那么程序的界面自然就是XP风格,不需要手动添加任何东西。但是如果这里是Use Multi-Byte Character Set,那么就要自己动手加东西了,和上面操作差不多。
: ~+ F( f! n5 |: N" ~) ^5 `/ Y Z! w6 V9 [* g
1、建一个名为XPStyle.manifest的文件# F8 F' f2 b, e6 k( _. e) v# Z$ D
2、把下面的内容拷到这个文件中# }9 T, l- V& r' p* ]
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
0 ^. ]+ k3 q$ G2 f1 y* O5 m<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">/ R/ _1 b" X; I- E7 T; ]% g1 \
<assemblyIdentity
* f2 q8 G! `- ?$ ? j version="1.0.0.0" ( j: }; F8 X( g
processorArchitecture="X86"
: L" W. P6 k/ @. Q1 [" q name="Microsoft.Windows.WorkSapceName"5 U6 o$ J6 V, ?) v4 @
type="win32"
' E" I" r: X+ d9 M3 A! p& z/>' f1 h- J7 ^! d! K5 l6 X7 v
<description>Your app description here</description>
9 r8 [) m% D" B0 F4 c <dependency>
# h' G% |+ Z! E$ ?; ?3 f <dependentAssembly>! i! U1 U: x$ _9 n
<assemblyIdentity - }. F S; N, ^% d
type="win32" ) l- S+ F5 F+ c0 \9 P5 h1 c+ P
name="Microsoft.Windows.Common-Controls"
& i. @" j: a" C+ X) k version="6.0.0.0"
$ X/ K& o% F5 n% L" R8 ^0 V7 M processorArchitecture="X86"
t, Q) Z' `8 W: l |' E publicKeyToken="6595b64144ccf1df"
; z, Z) @5 Y) W3 ]4 X Z language="*" $ t {* X/ N7 R0 p% U, T1 c
/>
. D6 Y+ |3 ?8 x$ _. v </dependentAssembly>
" }, K' m7 P, ^9 W </dependency>! E; E0 m+ ~ \5 K
</assembly>+ }9 ]; D4 d# j0 q" T+ w! o
0 {' g2 G2 o& u% L7 |' ?+ H
3、Project->Add Existing Item...将XPStyle.manifest添加到工程中。
; b$ P- B* L( s4 h1 D3 v \$ E- T7 j [ l
4、打开工程中的Resource.h文件,加上:
% a7 P( q/ _, |! N+ S#define IDR_MANIFEST 1
4 a! l4 Y* V3 C( N% ~) d" R#define RT_MANIFEST 24 9 o. \' g0 E# W( R8 E# X' _8 v0 L+ ^9 O
8 z; q9 N5 X0 j$ D8 ]* r
5、将工程的res\*.rc2文件打开, 加上:
. j' \7 @- v$ K! R# A// Add manually edited resources here...+ z" q5 j u4 p- v( k
IDR_MANIFEST RT_MANIFEST MOVEABLE PURE "res\\XPStyle.manifest". N K9 b$ c, S* |1 Z9 t" B
: ^ g/ G' q5 [( \9 @
- @) m% [3 n' h6、Rebuild.....就可以了。
: O7 E) @2 |9 M. g(源自:http://blog.csdn.net/limigy/archive/2006/04/04/650008.aspx) |
|