C'est ce que je fais dans toutes mes applications VB6, seulement jamais testé dans un EXE autonome, donc je ne sais pas si cela fonctionnera comme un OCX.
Private Type tagInitCommonControlsEx
lngSize As Long
lngICC As Long
End Type
Private Declare Function InitCommonControlsEx Lib "comctl32.dll" _
(iccex As tagInitCommonControlsEx) As Boolean
Private Const ICC_USEREX_CLASSES = &H200
Public Function InitCommonControlsVB() As Boolean
On Error Resume Next
Dim iccex As tagInitCommonControlsEx
' Ensure CC available:
With iccex
.lngSize = LenB(iccex)
.lngICC = ICC_USEREX_CLASSES
End With
InitCommonControlsEx iccex
InitCommonControlsVB = (Err.Number = 0)
On Error Goto 0
End Function
Public Sub Main()
InitCommonControlsVB
'
' Start your application here:
'
End Sub
Créez un fichier similaire à ceci: http://pastebin.com/f689388b2
vous ajoutez ensuite le fichier manifest à votre fichier de ressources en tant que type RT_MANIFEST (24)
Je ne peux pas me souviens plus si c'est tout ce que vous avez besoin faire comme je toujours utilise le même fichier .res pré-fait maintenant.
Source: http://www.vbaccelerator.com/home/vb/code/libraries/XP_Visual_Styles/Using_XP_Visual_Styles_in_VB/article.asp
Bonne idée. Ce client particulier ne veut pas faire face à la difficulté d'installer le runtime .NET sur tous ses points de terminaison, donc la solution .NET est pour moi. –