'工程属性将 Sub Main设为启动项, 并在exe同路径下加上 exe名.exe.manifest文件
'例如你的exe名称是Test.exe 则在app.path exe同路径下 加上Test.exe.manifest文件(将其它.manifest重命名即可)
'注意:在编写代码IDE窗口下无法表现出XP风格,需要先编译成exe后加上.manifest文件才表现得出来
'如果在编写代码IDE窗口下,您也想有XP风格的话,可以重命名为vb6.exe.manifest拷贝到vb98所在的路径下
'************************* 窗体部分 自己随便写一些代码或不写 界面上添加 Command Text ...等控件 查看XP风格的效果
'*********************************** 模块 Module1.bas代码
Option Explicit
'*********************************************
Private Declare Function InitCommonControlsEx Lib "comctl32.dll" (iccex As tagInitCommonControlsEx) As Boolean
Type tagInitCommonControlsEx
lngSize As Long
lngICC As Long
End Type
Const ICC_USEREX_CLASSES = &H200
Sub Main()
On Error Resume Next '忽略跳过错误 代码继续往下执行
If App.PrevInstance Then Call MsgBox("对不起本程序已在运行中, 不得重复加载!!", vbCritical, "创建XP风格的界面"): End
Call InitCommonControlsVB '调用XP风格初始化副程序
Form1.Show '载入窗体1
End Sub
Public Function InitCommonControlsVB() As Boolean
On Error Resume Next
Dim iccex As tagInitCommonControlsEx
With iccex
.lngSize = LenB(iccex)
.lngICC = ICC_USEREX_CLASSES
End With
InitCommonControlsEx iccex
InitCommonControlsVB = (Err.Number = 0)
On Error GoTo 0
End Function
'******************************** 制作 .manifest
将下面文本文件 另存为 程序名 + .manifest
'例如你的exe名称是Test.exe 则在app.path 本地路径下,保存为 Test.exe.manifest
'############### 【以下开始复制代码】
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
name="XP style manifest"
processorArchitecture="x86"
version="1.0.0.0"
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>