home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 3_2004-2005.ISO / Data / Zips / GEN-X_NET_1844941282005.psc / client / modPower.bas < prev   
BASIC Source File  |  2005-01-25  |  3KB  |  82 lines

  1. Attribute VB_Name = "modPower"
  2. 'Module for handling all those neat stuff in this program
  3. 'Note that you'll have to change few thins if you want
  4. 'to use this module (without class) alone, like
  5. 'subclass when program starts etc.
  6.  
  7.  
  8.  
  9.  
  10.  
  11. 'please visit my site
  12. 'I DONT NEED TO BE VOTE
  13. 'JUST TAG IN MY SITE
  14. 'HTTP://XYREN.USA.GS
  15.  
  16.  
  17. 'THANKS FOR DOWNLOADING MY PROGRAM
  18.  
  19.  
  20.  
  21. Option Explicit
  22.  
  23. Private Const BROADCAST_QUERY_DENY = &H424D5144
  24. Public Const GWL_WNDPROC = -4
  25. Private Const EWX_LOGOFF = 0
  26. Private Const EWX_SHUTDOWN = 1
  27. Private Const EWX_REBOOT = 2
  28. Private Const EWX_FORCE = 4
  29. Private Const PWR_HIBERNATE = 5
  30. Private Const PWR_SUSPEND = 6
  31. Private Const TOKEN_ADJUST_PRIVILEGES = &H20
  32. Private Const TOKEN_QUERY = &H8
  33. Private Const SE_PRIVILEGE_ENABLED = &H2
  34. Private Const VER_PLATFORM_WIN32_NT = 2
  35. Private Const ANYSIZE_ARRAY = 1
  36. Private Const PBT_APMQUERYSUSPEND = &H0
  37. Private Const PBT_APMRESUMESUSPEND = &H7
  38. Private Const WM_POWERBROADCAST = &H218
  39.  
  40. Public Enum eShutDownType
  41.     lShutDown = EWX_SHUTDOWN
  42.     lReboot = EWX_REBOOT
  43.     lLogOff = EWX_LOGOFF
  44.     lHibernate = PWR_HIBERNATE
  45.     lSuspend = PWR_SUSPEND
  46. End Enum
  47.  
  48. Type OSVERSIONINFO
  49.     dwOSVersionInfoSize As Long
  50.     dwMajorVersion As Long
  51.     dwMinorVersion As Long
  52.     dwBuildNumber As Long
  53.     dwPlatformId As Long
  54.     szCSDVersion As String * 128
  55. End Type
  56.  
  57. Type LUID
  58.     LowPart As Long
  59.     HighPart As Long
  60. End Type
  61.  
  62. Type LUID_AND_ATTRIBUTES
  63.     pLuid As LUID
  64.     Attributes As Long
  65. End Type
  66.  
  67. Type TOKEN_PRIVILEGES
  68.     PrivilegeCount As Long
  69.     Privileges(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
  70. End Type
  71.  
  72. Public Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  73. Private Declare Function CallWindowProc Lib "user32.dll" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal msg As Long, ByVal wparam As Long, ByVal lparam As Long) As Long
  74. Private Declare Function SetSystemPowerState Lib "kernel32.dll" (ByVal fSuspend As Long, ByVal bForce As Boolean) As Long
  75. Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
  76. Private Declare Function OpenProcessToken Lib "advapi32" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
  77. Private Declare Function LookupPrivilegeValue Lib "advapi32" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLuid As LUID) As Long
  78. Private Declare Function AdjustTokenPrivileges Lib "advapi32" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long
  79. Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
  80. Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (ByRef lpVersionInforhTIFlags As Wte DeyVal DeRVert__iiWUi_hew thicit
  81. "=sRngth AsBOOT
  82.     lBnwBferLeng4ras "GetVersionyNolean) AsSC)