我只知道其实用一个XML文件,然后把文件名改成Test.exe.manifest(其中的Test是软件的名称),然后把这个文件放在和应用程序一个目录下面就可以了.我现在用的是FlashGet的这个文件,但是要报错,我把里面所有FlashGet的地方都改成了我程序的名字还是不行!哪位仁兄知道啊!

解决方案 »

  1.   

    <?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" /> 
    <description>Your application description here.</description> 
    <dependency>
    <dependentAssembly>
    <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> 
    </dependentAssembly>
    </dependency>
    </assembly>将其编译到资源文件中去,不用单独的文件~~~
      

  2.   

    <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0"...意思就是强行使用6.0版的Comctl32.dll文件
      

  3.   

    这个方法只能将窗体变成xp风格的,有没有什么方法将Button,RadioButton,SpeedButton等常用组件也变成XP风格的
      

  4.   

    Access Violation at address 77E578DA in module 'kernel32.dll'.Read of Address 00000001. 
    这个就是结果
      

  5.   

    如果你的应用程序必须是在WindowsXP下运行的,可以引用Windows的comctl32.dll
      

  6.   

    <?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="公司名字.产品名字.你的应用程序" type="win32" /> 
    <description>这里写你的应用程序的描述信息</description> 
    <dependency>
    <dependentAssembly>
    <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> 
    </dependentAssembly>
    </dependency>
    </assembly>
    假设你的程序是project1.exe,那把那个xml文件保存为 project1.manifest,打开project1.exe的时候,就不光窗体也是,所有的控件(不过前提是你当前使用的视觉主题支持的控件)也将变成xp风格
      

  7.   

    to gujianhua(☆数字的艺术★)你说的这个按钮什么的,得自己画最好。我的网友就做了一个Dll给我们用。调用里面画好的非常棒。
      

  8.   

    现在的问题是当使用了TListView的Column时会出错,如果没有使用TListView的Column就不会出错
      

  9.   

    简单得很
    使用For D6的组件
    ThemeManager就OK了, D7是内部集成了那个组件的原因
    Google找就可以了/ by LY http://lysoft.7u7.net http://liuyang.7i24.com http://lysoft.91i.net
      

  10.   

    TXPListView = class(TShellListView)
    public
      procedure Dispatch (var Message); override;
    end;procedure TXPListView.Dispatch (var Message);
    begin
      if HandleAllocated then
      begin
        with TMessage(Message) do
        begin
          case Msg of
    LVM_SETCOLUMN,
    LVM_INSERTCOLUMN :
              with PLVColumn(LParam)^ do
              begin
       if (iImage = -1) then
                 mask:= mask and not LVCF_IMAGE;
     end;
          end;
        end;
      end;
      inherited;
    end;
      

  11.   

    如果可以的话,你最好帮我写一个Demo给我吧,里面只包含这些基本的控件,代码都不用写.然后放一个*.manifest文件.
    还有楼上的各位仁兄,如果提议放控件的那么还是不要回答了,我也知道可以放控件,还有比放控件更加简单的用Delphi7也可以,但是,用了控件会增加其他的开支,还有就是程序升级维护困难.如果用Delphi7这样整个程序又有很多需要改的地方,所以还是想用Delphi6,难道就没有人知道如何做?
      

  12.   

    Delphi7也不能完全实现所有的控件都是XP效果嘛!比如按钮就还是那种丑陋的按钮
      

  13.   

    http://www.ehomsoft.com/mine/XPTest.zip
      

  14.   

    你的代码动态生成的可以不报错,如果你把TXPShellListView分离为单独的控件,并且是设计期放到制定的位置,而不是运行期用代码动态的生成这个控件,这样就会报错!
      

  15.   

    to: Linux2001(我想买手提电脑啊!) 
    在D7中加个WIN32页中的XPManifest控件,你的应用程序就会自动适应XP的样式。所有的。
      

  16.   

    看来只有考虑升级到Delphi7下面了