|
|
一、在VS 2003 环境中:
9 @+ p4 H. I& m8 z1.在工程的目录下建一个名为 xpapp.manifest的文件. 把下面的内容拷到这个文件中:9 B) q, J2 i U. S
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>4 J' \! s+ ^* F/ Q e; f. A7 Q
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> ' f% ~! L5 f1 V* H% P9 o, z! d' A
<assemblyIdentity : M! v$ u* X9 t- _
version="1.0.0.0" & o6 D* z; ^" B
processorArchitecture="X86"
6 |; Z- A' N$ Y x+ P name="Microsoft.Windows.ViPod" q; M- ?+ L$ L+ d6 I7 ~! H
type="win32" 2 F7 S& `3 A; z' e2 g
/>
( M' F1 y: u4 c) m<description>Your app description here</description> - N5 V: V5 e2 A, |# r- J
<dependency> 1 ^8 t2 q; }1 _* Z# y; @
<dependentAssembly>
: s$ n/ Q5 J/ @4 Z- _' A( F$ z% {) W <assemblyIdentity $ \7 k" G4 M8 ^- {* z
type="win32" 6 v* r( Z% g; i7 @2 S- E2 H* u
name="Microsoft.Windows.Common-Controls" . P6 Y$ }$ D2 H
version="6.0.0.0"
& @/ C( `" D' f# O processorArchitecture="X86" 9 i4 i3 t5 o% o3 V
publicKeyToken="6595b64144ccf1df" 4 M$ V* J9 s5 V! D/ Z! p4 n
language="*" % J* Q- u- _. U f- i1 E% G
/> . Q1 w* R8 T6 ]9 q/ @0 i, V
</dependentAssembly> , Y! M: X1 r* |; R. P6 E
</dependency> 0 Y4 k+ g7 \( _* L0 n- L
</assembly>4 d) U [7 p0 [6 _! ?2 n8 S
' w( x5 N# y* y3 J. ~! T: c6 u: x2.将工程的*.rc文件打开, 加上这样一句话(注意要加上#endif前):, G! m- K! C0 |
//这名话是告诉工程使用刚才我们创建的那个文件,使程序界面变成XP风格
8 A! k5 N- N8 O- `CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "xpapp.manifest"
( W9 x( @/ z4 u- f; }; N& ?0 g- G0 K2 H' v2 D& _/ _ [2 l# r
3.在工程的C*App文件中加上
0 |% u9 n! B' Z% a- R#pragma comment(lib, "ComCtl32.lib") //3步是选做" @4 o g5 l7 H( I% ~/ I
4.如果你的代码是用V6的向导生成的,那必须将工程转成vc.net下,然后在C*App的InitInstance()最开始出加上
" E/ ?* ~( b" V" w0 BInitCommonControls();这个函数,V6的向导不会自动添加这个函数.
5 \( G, t7 Z0 w- c, d# ?//4步是选做, T8 W% k- i9 z6 _
2 [6 i; b. F8 n6 V. G) Q
x0 U% X! M* f) v二、如果是VS 2005 则有所不同:
1 k9 R/ P9 ?! YVS 2005中,如果Project->Property -- General -- Character Set 为Use Unicode Character Set,那么程序的界面自然就是XP风格,不需要手动添加任何东西。但是如果这里是Use Multi-Byte Character Set,那么就要自己动手加东西了,和上面操作差不多。9 i! T7 f/ }+ K' S4 \7 @# }9 n
! v; k2 N* I" f& m* c0 d1、建一个名为XPStyle.manifest的文件/ r6 W* V. y! a; _7 K7 r
2、把下面的内容拷到这个文件中
1 ?/ z& S6 ~# z5 ~& ]3 j! Y' B<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
( h/ u; C4 Z- ?<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
0 ^& @5 x- Y) ]7 V7 R <assemblyIdentity T" r! G: p8 \' W
version="1.0.0.0" 9 g" {9 g( ]$ t. e
processorArchitecture="X86" + T( _# l/ r* ~9 C7 o
name="Microsoft.Windows.WorkSapceName"
/ ~( }" f5 D* o# S" k/ L7 ] type="win32"
) Y! q& ?+ b k3 N! g8 V7 `/>
+ {( T @: n" X/ F <description>Your app description here</description>
& F' E0 y* T7 x$ y5 ?$ O2 U <dependency>$ F# m8 h" E3 |) [2 Q/ z
<dependentAssembly>
# ^$ g% |9 |5 i# S9 g+ y <assemblyIdentity
8 S, R0 j; u8 f# K. W% ?0 Y type="win32"
8 x: G- R# D+ o2 e, P! y# c$ N- d# w( X name="Microsoft.Windows.Common-Controls"
5 C* B$ Y2 S7 j! Z/ ~ version="6.0.0.0"
3 Z# ~# n/ ?' A5 z( V processorArchitecture="X86"
1 N9 L: ~5 }/ C e* K/ D+ Z1 a- ]( ^ publicKeyToken="6595b64144ccf1df"
/ P6 J' Z( Y, m2 i7 `$ K language="*" + T# c" l3 o$ O5 p2 t( A+ o
/>
. ^$ g1 W) p2 X </dependentAssembly>
- j4 v: t) \3 k m# E </dependency>6 z+ v, r0 L% B) E# A$ C
</assembly>* A& W" I5 e9 U6 k7 L" }% W" y
; G1 Q; g9 P% x" t$ M& z3、Project->Add Existing Item...将XPStyle.manifest添加到工程中。$ X. j' W7 M# m0 d' ]$ p( K$ k; X
, p9 s, X9 O( n. O% Z
4、打开工程中的Resource.h文件,加上:6 M* W, h' r; `" N# i
#define IDR_MANIFEST 1 6 @ w* V9 N5 Y1 q" B V
#define RT_MANIFEST 24
2 k. i3 g, u! P" i* }( H( n8 Q. p0 j. h, Z# \; v9 h9 L7 O
5、将工程的res\*.rc2文件打开, 加上: q# T- ]. w! ]
// Add manually edited resources here...- ?2 V; r( f v& W% G/ \
IDR_MANIFEST RT_MANIFEST MOVEABLE PURE "res\\XPStyle.manifest"1 b2 e6 |' a) w( P) _2 y7 n" C
+ e1 Z W$ e. u% L p1 }
% r, ^7 Q& x% U: R6、Rebuild.....就可以了。
' q( }( F. z' q& q* _5 V' w(源自:http://blog.csdn.net/limigy/archive/2006/04/04/650008.aspx) |
|