你可以在模块里定义。
Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long'模块代码:
Type NOTIFYICONDATA   'lpData参数是一个结构类型。
  cbSize As Long
  hwnd As Long
  uID As Long
  uFlags As Long
  uCallbackMessage As Long
  hIcon As Long
  szTip As String * 64
End Type
。略

解决方案 »

  1.   

    还是不能调用,我把源程序附上。这个程序是把一个
    应用程序最小化到右下角的系统托盘区。
    这是在FORM1中:
    Option Explicit
    Private Sub Form_Load()
      With Me
        .Top = -10000
        .Left = -10000
        .WindowState = vbMinimized
      End With
      With nidProgramData
        .cbSize = Len(nidProgramData)
        .hwnd = Me.hwnd
        .uid = vbNull
        .uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
        .uCallbackMessage = WM_MOUSEMOVE
        .hIcon = Me.Icon
        .szTip = "xzm" & vbNullChar
      End With
      Shell_NotifyIconA NIM_ADD, nidProgramData
      “用这个就出现函数未定义错误,如果用
       Shell_NotifyIcon NIM_ADD,nidProgramData
       的话,就出现找不到dll入口错”
    End Sub
    还有一些不关紧要的没写。这是在标准模块中:
    Option ExplicitPublic Const WM_MOUSEISMOVING = &H200
    Public Const WM_LBUTTONDOWN = &H201
    Public Const WM_LBUTTONUP = &H202
    Public Const WM_LBUTTONDBLCLK = &H203
    Public Const WM_RBUTTONDOWN = &H204
    Public Const WM_RBUTTONUP = &H205
    Public Const WM_RBUTTONDBLCLK = &H206
    Public Const WM_SETHOTKEY = &H32Public Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias " Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long
    Public Type NOTIFYICONDATA
      cbSize As Long
      hwnd As Long
      uid As Long
      uFlags As Long
      uCallbackMessage As Long
      hIcon As Long
      szTip As String * 64
    End Type
    Public Enum enm_NIM_Shell
      NIM_ADD = &H0
      NIM_MODIFY = &H1
      NIM_DELETE = &H2
      NIF_MESSAGE = &H1
      NIF_ICON = &H2
      NIF_TIP = &H4
      WM_MOUSEMOVE = &H200
      “这些参数我都不知道事什么意思,不知哪儿有这些资料,请各位大虾
       指点小弟一下”
    End Enum
    Public nidProgramData As NOTIFYICONDATA另外还有一些API也会出现这种情况,比如说
    SetLayeredWindowAttributes
    CheckRadioButtoh
    这到底是怎么回事呀?谁能帮帮我呀?
      

  2.   

    对于API函数的实际外部显示可能与API参考里的不一样,最好是直接查看DLL库,比如VS里的Depends.exe工具就可以查看到真正的API输入原型,我看了一下你要的函数,里面有三种输入原型,如下,
    Shell_NotifyIcon
    Shell_NotifyIconA
    Shell_NotifyIconW
    我对VB不熟,不过在VC里一般是用第一个,也可以一个一个的试过来
      

  3.   

    哈哈!!
    你的错误是:在
    Private Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long这句话里,Alias "Shell_NotifyIconA" 中的 Shell_NotifyIconA 和前面一个引号中间多打了一个空格,你的程序我调试过了,没有其它问题。