========================================================================
Win32Ctrl v1.0 OCX control for Visual Basic 5/6 - by Anthony Ishkan 2002
========================================================================

I especially designed this control to help the VB programmer
that is not experienced in API programming. It contains a vast
range of functions that will no doubt help an inexperienced VB
programmer take advantage of some of the Windows API calls! I have
decided to make this control free because helping fellow programmers
is my goal, as I remember how hard it was for me to learn VB at the
beginning! PLUS, WHY CHARGE OTHERS MONEY JUST TO LEARN A COMPUTER
LANGUAGE?

If you wish to see any other functions inside this OCX control, or
other improvements or comments about it, feel free to send me email
at:			
			buffy_ai@hotmail.com

or my ICQ number is:

			83847407

----------------------------------------------------------
FEEL FREE TO DISTRIBUTE THIS CONTROL BY ANY MEANS POSSIBLE
----------------------------------------------------------
However, taking credit for it's creation lowers yourself and
just proves that I am a better programmer than you!

----------------------------------------------------------
NOTES ON INSTALLATION

This control does not come with an installer, and hence without an uninstaller. But
just follow these instructions provided you have VB 5 or 6.
1) Extract all the files (excluding the Readme) in the zip into your Windows\System
directory.
2) Go into VB and click Project and then Components.
3) Click Browse and locate the OCX file in your Windows\System folder.
4) Click OK.
INSTALLATION COMPLETE! To uninstall it, just delete the files that you extracted into
your Windows\System directory.

----------------------------------------------------------
----------------------------------------------------------

..................................................
..................................................
A quick run through of the return values of the controls' function.

NOTE - All functions return a value of 0 if an error occurred during execution.
       All functions return a value of 1 if successfully executed.

BUT - The ChangeDisplayStats function returns a 2 if the settings have changed successfully,
      but require a reboot for them to take effect.

AND... - The CloseApp function returns a 2 if the app specified is not open.

..................................................
..................................................
FUNCTION DESCRIPTIONS!

Win321.ChangeDisplayStats(xres As Integer, yres As Integer, bitsperpixel As Integer, freq As Integer) As Long
       - xres is the desired x resolution in pixels.
       - yres is the desired y resolution in pixels.
       - bitsperpixel is the desired color depth (1 for 2 colors, 2 for 16 colors, 4 for 256 colors, 8 for 16-bit colors, 16 for 24-bit colors, 32 for 32-bit colors).
       - freq is the desired refresh rate in Hz.

Win321.CloseApp(appname As String) As Long
       - appname is the title of the program you wish to close (The exact text in the program's title bar).

Win321.CloseCDDrive() As Long
       - no parameters.

Win321.DisableCtrlAltDel() As Long
       - no parameters.

Win321.EmptyRecBin() As Long
       - no parameters.

Win321.EnableCtrlAltDel() As Long
       - no parameters.

Win321.ExecuteFile(file As String) As Long
       - file is the file you wish to execute (uses Windows Shell).

Win321.FlashWindowBar(wndwName As String, flashcnt As Integer, flashinterval As Long) As Long
       - wndwName is the title of the program whose titlebar you wish to flash (The exact text in the program's title bar).
       - flashcnt is the number of times the titlebar will flash.
       - flashinterval is the delay in ms between flashes.

Win321.GetDblClickTime(msecs As Long) As Long
       - msecs is the current time within which Windows classifies two mouse clicks as a double-click (in ms).

Win321.GetDisplayStats(xres As Integer, yres As Integer, bitsperpixel As Integer, freq As Integer) As Long
       - xres is the current x resolution in pixels.
       - yres is the current y resolution in pixels.
       - bitsperpixel is the current color depth (1 for 2 colors, 2 for 16 colors, 4 for 256 colors, 8 for 16-bit colors, 16 for 24-bit colors, 32 for 32-bit colors).       
       - freq is the current refresh rate in Hz.

Win321.GetHDDStatus(FreeUser As Currency, FreeByts As Currency, TotalByts As Currency, SecPerClus As Long, BytesPerSec As Long, FreeClus As Long, TotalClus As Long) As Long
       - FreeUser is the amount of free space left for the currently logged-on user in bytes.
       - FreeByts is the amount of free space left on the HDD in bytes.
       - TotalByts is the total amount of space available on the HDD in bytes.
       - SecPerClus is the amount of sectors per cluster.
       - BytesPerSec is the amount of bytes per sector.
       - FreeClus is the amount of free clusters on the HDD.
       - TotalClus is the total amount of clusters available on the HDD.

Win321.GetOpenApps(listboxname As Object) As Long
       - listboxname is the listbox that will store all the current open applications (This can be a variable array dimensioned as a listbox).

Win321.GetPCName(pcname As String) As Long
       - pcname is the current computer name.

Win321.GetRAMStatus(percntUsed As Long, totalRAM As Long, freeRAM As Long, totalPAGE As Long, freePAGE As Long, totalVIRT As Long, freeVIRT As Long) As Long
       - percntUsed is the percentage of RAM currently being used in bytes.
       - totalRAM is the total amount of RAM in the system in bytes.
       - freeRAM is the amount of free RAM in bytes.
       - totalPAGE is the total amount of PAGE memory in bytes.
       - freePAGE is the amount of available PAGE memory in bytes.
       - totalVIRT is the total amount of Virtual Memory in bytes.
       - freeVIRT is the amount of available Virtual Memory in bytes.
       
Win321.GetScreenShot(NameOfPicBox As Object) As Long
       - NameOfPicBox is the name of the picture box that will hold the captured picture (This can also be any other control that has the .HDC, .PICTURE and .REFRESH properties).

Win321.GetVolumeSettings(LeftVol As Long, RightVol As Long) As Long
       - LeftVol is the current volume of the left channel of the default sound device in the system (0 is minimum, 65535 is maximum).
       - RightVol is the current volume of the right channel of the default sound device in the system (0 is minimum, 65535 is maximum).
       - a return value of -1 for LeftVol or RightVol means that channel is unavailable.

Win321.GetWindowsDir(windir As String) As Long
       - windir is the current working Windows directory.

Win321.GetWindowsVersion(major As Long, minor As Long, build As Long, description As String) As Long
       - major is the major part of the current Windows version.
       - minor is the minor part of the current Windows version.
       - build is the build part of the current Windows version.
       - description is a brief description of the type of Windows running (3.11,95/98,etc..).

Win321.HideStartMenu() As Long
       - no parameters.

Win321.OpenCDDrive() As Long
       - no parameters.

Win321.PlayWAVfile(file As String) As Long
       - file is the .WAV file you wish to play over the default sound device.

Win321.RestartWindows() As Long
       - no parameters.

Win321.RestoreMouseButtons() As Long
       - no parameters.

Win321.SetDblClickTime(msecs As Long) As Long
       - msecs is the desired time within which Windows will classify two mouse clicks as a double-click (in ms).

Win321.SetVolumeSettings(LeftVol As Long, RightVol As Long) As Long
       - LeftVol is the desired volume of the left channel for the default sound device (0 for minimum, 65535 for maximum).
       - RightVol is the desired volume of the right channel for the default sound device (0 for minimum, 65535 for maximum).

Win321.ShowStartMenu() As Long
       - no parameters.

Win321.ShutDownPC() As Long
       - no parameters.

Win321.SwapMouseButtons() As Long
       - no parameters.

..................................................
..................................................
ADDITIONAL PARAMETERS NOTES!

Win321.GetScreenshot - the parameter NameOfPicBox is the name of a picture box that is on
                       the same form as the Win32 control. This is so the control can put
                       the capture inside the picbox so u can do what u want with it l8r!

Win321.GetOpenApps - the parameter listboxname is the name of a listbox that is on the same
                     form as the Win32 control. This is where the apps that are open are listed!

..................................................
..................................................
VERSION HISTORY!

v1.0 - No known bugs.
     - Control has 31 useful functions in it.