Buenas:
Mediante el codigo de abajo le digo a mi programa que me cargue un skin que encontre en la guia de recursos, y me funciona pero cuando quiero canviar el skin no se porque pero entonces no me lo canvia me desaparece el form y solo se me ve una linea del borde que en teoria no se tendria que ver ya que ese color tendria k ser transparente y lo demas del form desaparece...como lo puedo hacer....

Private Sub Cargar_Skin(frm As Object)
'Este codigo es el responsable de cargar y crear las trasparencias en la ventana.
'Se necesita el modulo para ke funcione el programa.
'El skin lo carga en el control picture, ke es el ke dara la imagen del formulario.
Dim WindowRegion As Long
frm.PicMainSkin.Top = 0
frm.PicMainSkin.Left = 0
frm.PicMainSkin.ScaleMode = vbPixels
frm.PicMainSkin.AutoRedraw = True
frm.PicMainSkin.AutoSize = True
frm.PicMainSkin.BorderStyle = vbBSNone
frm.BorderStyle = vbBSNone
'Carga el fichero BMP con la imagen deseada de la ventana.
'Set picMainSkin.Picture = LoadPicture(App.Path & "\imagenes\splash.bmp")
'Automaticamente se adapta la ventana al tamaño del skin.
frm.Width = frm.PicMainSkin.Width
frm.Height = frm.PicMainSkin.Height
'Crea la trasparencia usando el color ke linda con los limites de la imagen,
'en este caso el negro (puede ser otro color,depende el ke haga limite).
WindowRegion = MakeRegion(frm.PicMainSkin)
SetWindowRgn frm.hwnd, WindowRegion, True
frm.Refresh
End Sub