⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 apifunctions.cls

📁 1500个WINDOWS API类全集,包括了主要的API调用接口
💻 CLS
📖 第 1 页 / 共 4 页
字号:
Public Enum enCharFormatEffects
    CFE_BOLD = &H1
    CFE_ITALIC = &H2
    CFE_UNDERLINE = &H4
    CFE_STRIKEOUT = &H8
    CFE_PROTECTED = &H10
    CFE_LINK = &H20
    CFE_AUTOCOLOR = &H40000000      '/* NOTE: this corresponds to CFM_COLOR*/
End Enum

Public Enum enSetCharFormatModifiers
    SCF_SELECTION = &H1
    SCF_WORD = &H2
    SCF_DEFAULT = &H0     ' ##  set the default charformat or paraformat
    SCF_ALL = &H4         ' ##  not valid with SCF_SELECTION or SCF_WORD
    SCF_USEUIRULES = &H8  ' ##  modifier for SCF_SELECTION; says that the format came from a toolbar
End Enum

'\\ Edit word break code constants
Public Enum enWordBreak
    WB_ISDELIMITER = 2
    WB_LEFT = 0
    WB_RIGHT = 1
End Enum

Private Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Private Declare Function KillTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long

Public Enum enDialogWindowLong
    DWL_DLGPROC = 4
    DWL_MSGRESULT = 0
    DWL_USER = 8
End Enum

Private Declare Function EnumWindowStations Lib "user32" Alias "EnumWindowStationsA" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Private Declare Function EnumDesktops Lib "user32" Alias "EnumDesktopsA" (ByVal hwinsta As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long

Private Declare Function GetProcessWindowStation Lib "user32" () As Long
Private Declare Function EnumProps Lib "user32" Alias "EnumPropsA" (ByVal hwnd As Long, ByVal lpEnumFunc As Long) As Long
Private Declare Function EnumPropsEx Lib "user32" Alias "EnumPropsExA" (ByVal hwnd As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Private Declare Function EnumResourceLanguages Lib "kernel32" Alias "EnumResourceLanguagesA" (ByVal hModule As Long, ByVal lpType As String, ByVal lpName As String, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Private Declare Function EnumResourceNames Lib "kernel32" Alias "EnumResourceNamesA" (ByVal hModule As Long, ByVal lpType As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Private Declare Function EnumResourceTypes Lib "kernel32" Alias "EnumResourceTypesA" (ByVal hModule As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Private Declare Function LoadResource Lib "kernel32" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long
Private Declare Function LoadLibraryEx Lib "kernel32" Alias "LoadLibraryExA" (ByVal lpLibFileName As String, ByVal hFile As Long, ByVal dwFlags As Long) As Long
Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Private Declare Function EnumDesktopWindows Lib "user32" (ByVal hDesktop As Long, ByVal lpfn As Long, ByVal lParam As Long) As Long
Private Declare Function GetThreadDesktop Lib "user32" (ByVal dwThread As Long) As Long

'Public Const LOAD_LIBRARY_AS_DATAFILE = &H2

Public Enum enResourceTypes
    RT_ACCELERATOR = 9&
    RT_BITMAP = 2&
    RT_CURSOR = 1&
    RT_DIALOG = 5&
    RT_FONT = 8&
    RT_FONTDIR = 7&
    RT_ICON = 3&
    RT_MENU = 4&
    RT_RCDATA = 10&
    RT_STRING = 6&
End Enum

'Private Declare Function SendMessageMove Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As RECT) As Long
Private Declare Function SendMessageProc Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long

Private Declare Function IsIconic Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function MoveWindow Lib "user32" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long


Private Declare Function SetWindowRgn Lib "user32" (ByVal hwnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private Declare Function CombineRgn Lib "gdi32" (ByVal hDestRgn As Long, ByVal hSrcRgn1 As Long, ByVal hSrcRgn2 As Long, ByVal nCombineMode As Long) As Long
Private Declare Function SendMessageRepaint Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long

'Private Declare Function CreatePolygonRgn Lib "gdi32" (lpPoint As POINTAPI, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long
'Private Declare Function CreateRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long

Public Enum enWindowActive
    WA_ACTIVE = 1
    WA_INACTIVE = 0
    WA_CLICKACTIVE = 2
End Enum

Private Declare Function IsMenu Lib "user32" (ByVal hMenu As Long) As Long



'\\ Windows Menu related API calls
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetMenuCheckMarkDimensions Lib "user32" () As Long
Private Declare Function GetMenuContextHelpId Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function GetMenuDefaultItem Lib "user32" (ByVal hMenu As Long, ByVal fByPos As Long, ByVal gmdiFlags As Long) As Long
Private Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long


Private Declare Function GetMenuState Lib "user32" (ByVal hMenu As Long, ByVal wID As Long, ByVal wFlags As Long) As Long
Private Declare Function GetMenuString Lib "user32" Alias "GetMenuStringA" (ByVal hMenu As Long, ByVal wIDItem As Long, ByVal lpString As String, ByVal nMaxCount As Long, ByVal wFlag As Long) As Long
Private Declare Function SetMenu Lib "user32" (ByVal hwnd As Long, ByVal hMenu As Long) As Long
Private Declare Function SetMenuContextHelpId Lib "user32" (ByVal hMenu As Long, ByVal dw As Long) As Long
Private Declare Function SetMenuDefaultItem Lib "user32" (ByVal hMenu As Long, ByVal uItem As Long, ByVal fByPos As Long) As Long
Private Declare Function SetMenuItemBitmaps Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long


'\\ Sending messages to a window....
Private Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function SendMessageString Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lpstrParam As String) As Long

'\\ Shell execute - running external applications
'\\ Declaration
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


'\\ Scrollbar messages
Public Enum enScrollMessages
    SB_ENDSCROLL = 8
    SB_TOP = 6
    SB_LINELEFT = 0
    SB_LINERIGHT = 1
    SB_LINEDOWN = 1
    SB_LINEUP = 0
    SB_PAGEDOWN = 3
    SB_PAGELEFT = 2
    SB_PAGERIGHT = 3
    SB_PAGEUP = 2
    SB_RIGHT = 7
    SB_LEFT = 6
    SB_THUMBPOSITION = 4
    SB_THUMBTRACK = 5
End Enum

'\\ System command messages
Public Enum enSystemCommands
    SC_ARRANGE = &HF110
    SC_CLOSE = &HF060
    SC_HOTKEY = &HF150
    SC_HSCROLL = &HF080
    SC_KEYMENU = &HF100
    SC_MAXIMIZE = &HF030
    SC_MINIMIZE = &HF020
    SC_MOUSEMENU = &HF090
    SC_MOVE = &HF010
    SC_NEXTWINDOW = &HF040
    SC_PREVWINDOW = &HF050
    SC_RESTORE = &HF120
    SC_SCREENSAVE = &HF140
    SC_SIZE = &HF000
    SC_TASKLIST = &HF130
    SC_VSCROLL = &HF070
End Enum


'\\ ShowWindow constants
Public Enum enShowWindow
    SW_HIDE = 0
    SW_MAX = 10
    SW_MAXIMIZE = 3
    SW_MINIMIZE = 6
    SW_NORMAL = 1
    SW_OTHERUNZOOM = 4
    SW_OTHERZOOM = 2
    SW_PARENTCLOSING = 1
    SW_PARENTOPENING = 3
    SW_RESTORE = 9
    SW_SHOW = 5
    SW_SHOWDEFAULT = 10
    SW_SHOWMAXIMIZED = 3
    SW_SHOWMINIMIZED = 2
    SW_SHOWMINNOACTIVE = 7
    SW_SHOWNA = 8
    SW_SHOWNOACTIVATE = 4
    SW_SHOWNORMAL = 1
End Enum

Public Enum enHWND
    HWND_BOTTOM = 1
    HWND_BROADCAST = &HFFFF&
    HWND_DESKTOP = 0
    HWND_NOTOPMOST = -2
    HWND_TOP = 0
    HWND_TOPMOST = -1
End Enum



'\\ Module handles....
Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long

Public Enum enScrollWindow
    SW_ERASE = &H4
    SW_SCROLLCHILDREN = &H1
    SW_INVALIDATE = &H2
End Enum

Public Enum enHitTestResult
    HTBORDER = 18
    HTBOTTOM = 15
    HTBOTTOMLEFT = 16
    HTBOTTOMRIGHT = 17
    HTCAPTION = 2
    HTCLIENT = 1
    HTERROR = (-2)
    HTGROWBOX = 4
    HTHSCROLL = 6
    HTLEFT = 10
    HTMAXBUTTON = 9
    HTMENU = 5
    HTMINBUTTON = 8
    HTNOWHERE = 0
    HTRIGHT = 11
    HTSYSMENU = 3
    HTTOP = 12
    HTTOPLEFT = 13
    HTTOPRIGHT = 14
    HTVSCROLL = 7
    HTTRANSPARENT = (-1)
    HTOBJECT = 19
    HTCLOSE = 20
    HTHELP = 21
End Enum


'\\ Events of this class
Event ApiError(ByVal Number As Long, ByVal Source As String, ByVal Description As String)

Public Enum enComboBoxMessages
    CB_ADDSTRING = &H143
    CB_DELETESTRING = &H144
    CB_DIR = &H145
    CB_FINDSTRING = &H14C
    CB_FINDSTRINGEXACT = &H158
    CB_GETCOUNT = &H146
    CB_GETCURSEL = &H147
    CB_GETDROPPEDCONTROLRECT = &H152
    CB_GETDROPPEDSTATE = &H157
    CB_GETEDITSEL = &H140
    CB_GETEXTENDEDUI = &H156
    CB_GETITEMDATA = &H150
    CB_GETITEMHEIGHT = &H154
    CB_GETLBTEXT = &H148
    CB_GETLBTEXTLEN = &H149
    CB_GETLOCALE = &H15A
    CB_INSERTSTRING = &H14A
    CB_LIMITTEXT = &H141
    CB_RESETCONTENT = &H14B
    CB_SELECTSTRING = &H14D
    CB_SETCURSEL = &H14E
    CB_SETEDITSEL = &H142
    CB_SETEXTENDEDUI = &H155
    CB_SETITEMDATA = &H151
    CB_SETITEMHEIGHT = &H153
    CB_SETLOCALE = &H159
    CB_SHOWDROPDOWN = &H14F
End Enum

Public Enum enListboxMessages
    LB_ADDFILE = &H196
    LB_ADDSTRING = &H180
    LB_CTLCODE = 0&
    LB_DELETESTRING = &H182
    LB_DIR = &H18D
    LB_FINDSTRING = &H18F
    LB_FINDSTRINGEXACT = &H1A2
    LB_GETANCHORINDEX = &H19D
    LB_GETCARETINDEX = &H19F
    LB_GETCOUNT = &H18B
    LB_GETCURSEL = &H188
    LB_GETHORIZONTALEXTENT = &H193
    LB_GETITEMDATA = &H199
    LB_GETITEMHEIGHT = &H1A1
    LB_GETITEMRECT = &H198
    LB_GETLOCALE = &H1A6
    LB_GETSEL = &H187
    LB_GETSELCOUNT = &H190
    LB_GETSELITEMS = &H191
    LB_GETTEXT = &H189
    LB_GETTEXTLEN = &H18A
    LB_GETTOPINDEX = &H18E
    LB_INSERTSTRING = &H181
    LB_MSGMAX = &H1A8
    LB_RESETCONTENT = &H184
    LB_SELECTSTRING = &H18C
    LB_SELITEMRANGE = &H19B
    LB_SELITEMRANGEEX = &H183
    LB_SETANCHORINDEX = &H19C
    LB_SETCARETINDEX = &H19E
    LB_SETCOLUMNWIDTH = &H195
    LB_SETCOUNT = &H1A7
    LB_SETCURSEL = &H186
    LB_SETHORIZONTALEXTENT = &H194
    LB_SETITEMDATA = &H19A
    LB_SETITEMHEIGHT = &H1A0
    LB_SETLOCALE = &H1A5
    LB_SETSEL = &H185
    LB_SETTABSTOPS = &H192
    LB_SETTOPINDEX = &H197
End Enum

Public Enum enPrinterActions
     PRINTACTION_OPEN = 0
     PRINTACTION_PROPERTIES = 1
     PRINTACTION_NETINSTALL = 2
     PRINTACTION_NETINSTALLLINK = 3
     PRINTACTION_TESTPAGE = 4
     PRINTACTION_OPENNETPRN = 5
     PRINTACTION_DOCUMENTDEFAULTS = 6
     PRINTACTION_SERVERPROPERTIES = 7
End Enum

'SHSTDAPI_(BOOL)  SHInvokePrinterCommandA(HWND hwnd, UINT uAction, LPCSTR lpBuf1, LPCSTR lpBuf2, BOOL fModal);
Private Declare Function SHInvokePrinterCommand Lib "shell32.dll" Alias "SHInvokePrinterCommandA" (ByVal hwnd As Long, ByVal uAction As enPrinterActions, ByVal Buffer1 As String, ByVal Buffer2 As String, ByVal Modal As Long) As Long

Private Declare Function InitCommonControlsExApi Lib "comctl32.dll" Alias "InitCommonControlsEx" (ByRef lpInitCtrls As INITCOMMONCONTROLSEX) As Long

Private Type INITCOMMONCONTROLSEX
    dwSize As Long
    dwICC As Long
End Type

Public Enum enInitCommonControlClasses
    ICC_LISTVIEW_CLASSES = &H1       ' listview, header
    ICC_TREEVIEW_CLASSES = &H2       ' treeview, tooltips
    ICC_BAR_CLASSES = &H4            ' toolbar, statusbar, trackbar, tooltips
    ICC_TAB_CLASSES = &H8            ' tab, tooltips
    ICC_UPDOWN_CLASS = &H10          ' updown
    ICC_PROGRESS_CLASS = &H20        ' progress
    ICC_HOTKEY_CLASS = &H40          ' hotkey
    ICC_ANIMATE_CLASS = &H80         ' animate
    ICC_WIN95_CLASSES = &HFF
    ICC_DATE_CLASSES = &H100         ' month picker, date picker, time picker, updown
    ICC_USEREX_CLASSES = &H200       ' comboex
    ICC_COOL_CLASSES = &H400         ' rebar (coolbar) control
    ICC_INTERNET_CLASSES = &H800
    ICC_PAGESCROLLER_CLASS = &H1000      ' page scroller
    ICC_NATIVEFNTCTL_CLASS = &H2000       ' native font control
End Enum

Public Enum PowerBroadcastMessageTypes
     PBT_APMQUERYSUSPEND = &H0
     PBT_APMQUERYSTANDBY = &H1
     PBT_APMQUERYSUSPENDFAILED = &H2
     PBT_APMQUERYSTANDBYFAILED = &H3
     PBT_APMSUSPEND = &H4
     PBT_APMSTANDBY = &H5
     PBT_APMRESUMECRITICAL = &H6
     PBT_APMRESUMESUSPEND = &H7
     PBT_APMRESUMESTANDBY = &H8
     PBT_APMBATTERYLOW = &H9
     PBT_APMPOWERSTATUSCHANGE = &HA
     PBT_APMOEMEVENT = &HB
     PBT_APMRESUMEAUTOMATIC = &H12
End Enum
Public Sub About()

    frmAbout.Show

End Sub


Public Property Get CurrentThreadId() As Long

    CurrentThreadId = App.ThreadId
    
End Property


Public Sub DisplayDocumentDefaults(ByVal PrinterName As String, ByVal hwnd As Long)

Dim lret As Long

'\\ Only version 4.71 and above have this :. jump over error
On Error Resume Next
lret = SHInvokePrinterCommand(hwnd, PRINTACTION_DOCUMENTDEFAULTS, PrinterName, "", 0)


End Sub


Public Sub EndLink()


'\\ Kill all internally created objects
If Not (AllSubclassedWindows Is Nothing) Then
    Set AllSubclassedWindows = Nothing
End If
If Not (APIDispenser Is Nothing) Then
    Set APIDispenser = Nothing
End If
If Not (Eventhandler Is Nothing) Then
    Set Eventhandler = Nothing
End If

End Sub

Public Property Get EventhandlerLink() As EnumHandler

    Set EventhandlerLink = Eventhandler
    
End Property

'\\ --[GetBits]---------------------------------------------------------------------------------------
'\\ Returns the requested bits of a long
'\\ Parameters:
'\\   lInput - The long we're splitting up
'\\   nStart (0-31) - The start bit to get
'\\   nEnd (0-31) - The end bit to get
'\\ ----------------------------------------------------------------------------------------
'\\ (c) 2001 - Merrion Computing.  All rights  to use, reproduce or publish this code reserved
'\\ Please check http://www.merrioncomputing.com for updates.
'\\ ----------------------------------------------------------------------------------------
Public Function GetBits(ByVal lInput As Long, ByVal nStart As Integer, ByVal nEnd As Integer) As Long

Dim lMask As Long
Dim lMaskPos As Long

If nEnd < nStart Then
    nEnd = nStart
End If

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -