


 Creates new System Restore Points

 This DLL COULD be used to Create new System Restore
 Points, if your script perhaps is doing an update,
 or it is ran for the first time, for more information
 on system restore points google it or check out
 microsoft.com

 CAUTION:
 Read the BeginRestorePointEx documentation carefully

 Also check the HowToUse.jpg included within this zip
 which shows a graph how to use this DLL to make your
 Restore Point Work!


 REMARKS:
 The difference between CancelRestorePoint and EndRestorePoint.
 If you are Ending a Restore Point, the Restore Point is Set! and will stay there.
 If you are Canceling a Restore Point, it is removed from the List, and like it never happened.
 
 Perhaps: In a case where a user aborts an Update, you would want to Cancel a Restore Point!



 Good Luck,
 codemastr_
 


 /* Creating a Restore Point
 
  Usage: $dll(<dllpath>,BeginRestorePoint,TYPE>NAME)
  Example: //echo -a $dll(RestorePoint.dll,BeginRestorePoint,UPDATE>Bob Script - GUI Update)

  Note: This function will freeze your mIRC for quite a few seconds, until the Restore Point
        has been created, it all depends on the System. Check out BeginRestorePointEx for
        a solution to avoid this freezing.

  TYPES
  
  INSTALL     - An application has been installed
  UPDATE      - An application has had features added or removed
  UNINSTALL   - An application has been uninstalled


  RETURN
  
  S_RESTOREPOINT_BEGIN   - A Restore Point has Successfully begun

  ERR_PREVIOUS_RP_NOT_ENDED  - An Previous Restore Point that has Begun, has not been ended using EndRestorePoint
  ERR_RTYPE  - An Restore Point Type is Unknown, look back to the Types and make sure you specified one of the listed Types
  ERR_DESC_MIN_4_CHARS - The 'Name' field is less than 4 characters
  ERR_SETTING_BEGINPOINT - Unable to Start a Restore Point 

  Note: ERR_SETTING_* can return if System Restore Future is not Supported or Turned Off.


 */

 /* Creating a Restore Point Another Way
 
  Usage: $dll(<dllpath>,BeginRestorePointEx,TYPE>NAME)
  Example: //echo -a $dll(RestorePoint.dll,BeginRestorePointEx,UPDATE>Bob Script - GUI Update)

  CAUTION: This function does not freeze mIRC, it uses another Thread to do its job. The Thread is
           frozen also, but you wont notice it at all -- so it takes the EndRestorePoint to know
           that a Restore Point has begun a few seconds -- so use 'ActiveRestorePoint' to check
           if the value is not an Error, and if so call 'EndRestorePoint'

  TYPES
  
  INSTALL     - An application has been installed
  UPDATE      - An application has had features added or removed
  UNINSTALL   - An application has been uninstalled


  RETURN
  
  S_RESTOREPOINT_BEGIN   - A Restore Point has Successfully begun

  ERR_PREVIOUS_RP_NOT_ENDED  - An Previous Restore Point that has Begun, has not been ended using EndRestorePoint
  ERR_RTYPE  - An Restore Point Type is Unknown, look back to the Types and make sure you specified one of the listed Types
  ERR_DESC_MIN_4_CHARS - The 'Name' field is less than 4 characters
  ERR_SETTING_BEGINPOINT - Unable to Start a Restore Point 

  Note: ERR_SETTING_* can return if System Restore Future is not Supported or Turned Off.


 */

 /* Ending a Restore Point
 
  Usage: $dll(<dllpath>,EndRestorePoint,)
  Example: //echo -a $dll(RestorePoint.dll,EndRestorePoint,)


  RETURN
  
  S_RESTOREPOINT_END   - A Restore Point has Successfully ended

  ERR_NO_RP_ACTIVE  - There is no active Restore Point to End
  ERR_SETTING_ENDPOINT - Unable to End a Restore Point

  Note: ERR_SETTING_* can return if System Restore Future is not Supported or Turned Off.


 */

 /* Cancelling a Restore Point
 
  Usage: $dll(<dllpath>,CancelRestorePoint,)
  Example: //echo -a $dll(RestorePoint.dll,CancelRestorePoint,)


  RETURN
  
  S_RESTOREPOINT_CANCEL   - A Restore Point has Successfully cancelled

  ERR_NO_RP_ACTIVE  - There is no active Restore Point to End
  ERR_SETTING_CANCEL - Unable to Cancel a Restore Point

  Note: ERR_SETTING_* can return if System Restore Future is not Supported or Turned Off.


 */

 /* Check if an Restore Point is Active
 
  Usage: $dll(<dllpath>,ActiveRestorePoint,)
  Example: //echo -a $dll(RestorePoint.dll,ActiveRestorePoint,)


  RETURN
  
  Numeric Value   - If a Restore Point is Active it will return a Numeric Value 1-1000 perhaps
                    the numeric value states how many Restore Points Exist

  ERR_NO_RP_ACTIVE  - There is no active Restore Point


 */

 For Developers wanting an updated DLL, or a suggestion feel free to leave a comment.
 Also i know there are a few other TYPES to use, but i tought they were pretty Useless for
 mIRC.

 Haso Keric
 hasokeric@comcast.net
 MSN: sm0kie_@hotmail.com
 irc.efnet.net #WINAPI
 irc.gamesurge.net #script

