有些软件的按钮等控件在xp默认风格外观下显示的控件很漂亮,但是当回到xp经典风格外观下
却显示处普通的控件,我想问问这样的控件是怎么实现的.网上也有实现xp风格的控件的代码
但是那是自绘实现的,即使在xp经典外观下也显示处xp风格.我想上面那样在xp的默认和经典外观
下显示不同风格控件的软件它的控件决不是自绘出来的,请教一下高手们,这样的控件是怎样实现的.
    我在社区里也找到了类似的问题,其中有一个回帖我没太看明白,请教一下大家,他是这么说的:"回复人: QuickGo() ( ) 信誉:100  2005-10-12 11:52:04  得分: 0  
没有必要,把以下内容保存成以你的应用程序全名+.MANIFESTER的文件就可以使你的软件的界面具有ComCtl32.dll 版本 6的外观了,举个例子:如果你的应用程序的名称是:MYAPP.EXE,那么这个MANIFESTER文件的名称就应该是MYAPP.EXE.MANIFESTER,文件的内容如下:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">     <assemblyIdentity    version="1.0.0.0"    processorArchitecture="X86"    name="CompanyName.ProductName.YourApp"    type="win32"/><dependency>    <dependentAssembly>        <assemblyIdentity            type="win32"            name="Microsoft.Windows.Common-Controls"            version="6.0.0.0"            processorArchitecture="X86"            publicKeyToken="6595b64144ccf1df"            language="*"        />    </dependentAssembly></dependency></assembly>另外,还可以以资源的形式来解决,不过要自己定义一些常量,步骤多那么一点点,这个方法还可以改变VC6.0和其他一些软件的外观,很神奇吧."请问这个.MANIFESTER文件是什么文件,怎么创建和保存,还是在哪里能找到它,怎么使用它,这个回帖里没有说太明白,问问高手,这是怎么做到的,谢谢.
如果还有别的方法,请赐教

解决方案 »

  1.   

    是不是新建一个文本文件,把上面的代码保存一下,保存成.exe.manifester文件吗
    然后怎么办把manifester文件放在哪,在哪编译,还是放在工程文件夹里就行吗
      

  2.   

    最简单的方法是在EXE文件边上写个manifest文件例如:text.exe
    manifest文件名text.exe.manifest
    格式
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <assemblyIdentity 
        version="1.0.0.0" 
        processorArchitecture="X86" 
        name="Microsoft.Windows.Text"
        type="win32" 
    /> 
    <description>Text</description> 
    <dependency> 
        <dependentAssembly> 
            <assemblyIdentity 
                type="win32" 
                name="Microsoft.Windows.Common-Controls" 
                version="6.0.0.0" 
                processorArchitecture="X86" 
                publicKeyToken="6595b64144ccf1df" 
                language="*" 
            /> 
        </dependentAssembly> 
    </dependency> 
    </assembly>