关于 函数SetLayeredWindowAttributes 的怪有关问题

关于 函数SetLayeredWindowAttributes 的怪问题!
我在使用函数SetLayeredWindowAttributes   的时候,

Private   Declare   Function   GetWindowLong   Lib   "user32 "   Alias   "GetWindowLongA "   (ByVal   hwnd   As   Long,   ByVal   nIndex   As   Long)   As   Long  
Private   Declare   Function   SetWindowLong   Lib   "user32 "   Alias   "SetWindowLongA "   (ByVal   hwnd   As   Long,   ByVal   nIndex   As   Long,   ByVal   dwNewLong   As   Long)   As   Long
Private   Declare   Function   SetLayeredWindowAttributes   Lib   "user32 "   (ByVal   hwnd   As   Long,   ByVal   crKey   As   Long,   ByVal   bAlpha   As   Byte,   ByVal   dwFlags   As   Long)   As   Long  


代码二:形状不规则的窗体
Private   Sub   Form_Load()
  Dim   rtn   As   Long
  BorderStyler=0
  rtn   =   GetWindowLong(hwnd,   GWL_EXSTYLE)
  rtn   =   rtn   Or   WS_EX_LAYERED
  SetWindowLong   hwnd,   GWL_EXSTYLE,   rtn
  SetLayeredWindowAttributes   hwnd,   &HFF0000,   0,   LWA_COLORKEY   '将扣去窗口中的蓝色
End   Sub  

问题是,在本机上都正常,但是在其他机器上,2000   或者   XP   都无法去掉蓝色部分,请各位大大指教一下。

------解决方案--------------------
你参数位置错了,不是
SetLayeredWindowAttributes hwnd, &HFF0000, 0, LWA_COLORKEY '将扣去窗口中的蓝色
应该是
SetLayeredWindowAttributes hwnd, 0, &HFF0000, LWA_COLORKEY '将扣去窗口中的蓝色
第二三个参数位置换一下~~~~~~~~~
------解决方案--------------------
Private Declare Function GetWindowLong Lib "user32 " Alias "GetWindowLongA " (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32 " Alias "SetWindowLongA " (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32 " (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long


Private Const WS_EX_LAYERED = &H80000
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = &H2
Private Const LWA_COLORKEY = &H1

Private Sub Form_Load()
Dim rtn As Long

rtn = GetWindowLong(hwnd, GWL_EXSTYLE)
rtn = rtn Or WS_EX_LAYERED
SetWindowLong hwnd, GWL_EXSTYLE, rtn

SetLayeredWindowAttributes hwnd, &HFF00FF, 0, LWA_COLORKEY '将扣去窗口中的蓝色

End Sub


去掉洋红色
LZ 代码没有问题