Jump to content

_HWID() Protect Your Script.


nullschritt
 Share

Recommended Posts

I believe they have multilingual keyboards, if I am correct, those don't change the windows settings, when shifting between supported languages. I had also thought about this.

Not everyone.

Note: I won't continue the discussion on this anymore.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

  • 3 weeks later...

okay, but the point is, how often do people change the language their keyboard types in? Not very.

Maybe more than you would think, I don't know...

I know that when I have to program Photoshop actions, the most convenient way is to change from Dutch to English, otherwise I just can't get at some of the specific key commands.

I don't know how much it would relate to this thread, just mentioning an example.

Link to comment
Share on other sites

  • 1 month later...

Maybe you could use WMI to get some hardware details

Yashied does this already in WinAPIEx.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

  • 1 year later...

Gosh be away for a year and look at all the neat things you miss. A real life fist de cuff.. You sure know how to entertain a girl.

Lets fire it up. I on the other hand know absolutely nothing. My husband lets me know what I should think.

I made this mess (well it took almost a year to figure it all out but I put it to bed June 2013). It works for me and my customers,

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=32.ico
#AutoIt3Wrapper_Outfile=EvalYES.exe
#AutoIt3Wrapper_Res_Comment=lesson equal to the 12th level of hell
#AutoIt3Wrapper_Res_Description=overlord
#AutoIt3Wrapper_Res_Fileversion=12.0.7.14
#AutoIt3Wrapper_Res_Fileversion_AutoIncrement=y
#AutoIt3Wrapper_Res_LegalCopyright=reardon studio
#AutoIt3Wrapper_Res_Language=1033
#AutoIt3Wrapper_Res_requestedExecutionLevel=requireAdministrator
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
; *** Start added by AutoIt3Wrapper ***
#include <FontConstants.au3>
; *** End added by AutoIt3Wrapper ***
#include  "ExtMsgBox.au3"
#include <MsgBoxConstants.au3>
#include <FileConstants.au3>
#include<string.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <Security.au3> 
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GuiTab.au3>
#include <Misc.au3>
#include <ColorConstants.au3>
#include <GuiButton.au3>
#include <ExtMsgBox.au3>
#include <constants.au3>
#include <WinAPI.au3>
$Regit1 = GUICreate("reg1", 621, 442, 192, 114)
$back1 = GUICtrlCreatePic(@ScriptDir &"\bd.jpg", 0, 0, 608, 440)
Local Const $1Font = "Tahoma"
$hButton1 = GUICtrlCreateButton("Register ", 20, 20, 1, 1, GUISetState(@SW_HIDE))
$hButton6 = GUICtrlCreateButton("Read Me", 20, 20, 1, 1, GUISetState(@SW_HIDE))
$hButton7a = GUICtrlCreateButton("Exit", 20, 20, 1, 1, GUISetState(@SW_HIDE))
GUICtrlSetState($hButton1, @SW_HIDE)
$bonus1 = GUICtrlCreatePic(@ScriptDir &  "\Win_smallBtn.jpg",  120, 64, 364, 55)
;$Label1 = GUICtrlCreateLabel("YOU WON CONGRATS", 120, 64, 364, 55, $WS_BORDER)
;GUICtrlSetFont($Label1, 24, 400, 0, "SF Gushing Meadow")
;GUICtrlSetBkColor($Label1, 0xFF8E77)
;GUICtrlSetTip($Label1, "Want to go for the EXHardBonus Level lesson?")
$Label2 = GUICtrlCreateLabel(" Get Sono Mine M1 Full Verson for Free.", 144, 120, 290, 31)
GUICtrlSetFont($Label2, 10, 400, 0, "SF Gushing Meadow")
GUICtrlSetBkColor($Label2, 0xD3892E)
$Label3 = GUICtrlCreateLabel(" 1. Get 3 friends to play and win Sono MineFreeversion ", 120, 168, 318, 17)
GUICtrlSetFont($Label3, 8, 400, 0, "SF Gushing Meadow")
GUICtrlSetBkColor($Label3, 0xFFFBF0)
$Label4 = GUICtrlCreateLabel(" 2. Win the EXHardBonus Level send in the WIN code", 120, 192, 366, 17)
GUICtrlSetBkColor($Label4, 0xFFFBF0)
$Label5 = GUICtrlCreateLabel(" 3. Have all 3 friends send in their codes ", 120, 216, 286, 17)
GUICtrlSetFont($Label5, 10, 400, 0, "SF Gushing Meadow")
GUICtrlSetBkColor($Label5, 0xFFFBF0)
$Label6 = GUICtrlCreateLabel(" 4. You get a downloaded version of Sono Mine M1 Full Verson.", 120, 240, 305, 17)
GUICtrlSetBkColor($Label6, 0xFFFBF0)
$Label7 = GUICtrlCreateLabel(" Enter your Full Name for Code to play EXHardBonus lesson", 152, 272, 276, 17)
GUICtrlSetBkColor($Label7, 0xFFFFFF)
GUISetState(@SW_SHOW,$Regit1)
Example2()
Button1Click()
Button6Click()
Button7aClick()
While 1
$nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
   Case $hButton1
 Button1Click()
 Case $hButton6
 Button6Click()
 Case $hButton7a
     Exit
 Button7aClick()
   EndSwitch
WEnd
Func Button6Click()
Local $securityCodeEncryptionKey = "SonoM1EXHardBonus" ;this must match the applications key
$str = InputBox ("EXHardBonus Level Registration","Register to try for SonoMineM1 Full version" & @CRLF & " Complete Quest and Download Full lesson for Free " & @CRLF & "." & @CRLF & "Input first and last name")
Local $tSID = _Security__GetAccountSid(@UserName)    ; $tSID is structure filled with SID data for spesified account
If $str = "" then
    Local $iTimeout = 5

    MsgBox($MB_SYSTEMMODAL, "SonoM1EXHardBonus", "No Input ERROR:" & $iTimeout & " or Incomplete Input Replay lesson to try again.", $iTimeout)
exit
;EndIf
Else
;If @error = 1 then exit
$Generate = StringUpper (StringRight ($str,5))
$restore = StringUpper(_StringEncrypt (1, $Generate, $securityCodeEncryptionKey , 1 ))
ClipPut ($restore)
Msgbox (0,"EXHardBonus Level","The registration code is: " & $restore & "" & @CRLF & "Your code has been placed on the DESKTOP as" & @CRLF & " BONUS.TXT and  on the clipboard " & @CRLF & "" & @CRLF & "Email the registration code to the" & @CRLF & " " & @CRLF & " Email address in the Bonus.txt " & @CRLF & "to get a download link to your Bonus lesson")
Local $sEvalString1 = Eval("$restore")
    #forceref $restore
IniWrite (@DesktopCommonDir & "\BONUS.TXT", "General", "registration", $restore)
$mail="meows@techie.com"
IniWrite (@DesktopCommonDir & "\BONUS.TXT", "General", "email", $mail)
    Local $sString = DriveGetSerial(@HomeDrive & "\") ; Find the serial number of the home drive, generally this is the C:\ drive.
#forceref $sString
RegWrite ("HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications","lessonmaker", "REG_MULTI_SZ", "SOFTWARE\lessonmaker\SonoMinesM1\BonusAttempt\ControlCenter\Capabilities\" & $sString )
RegWrite ("HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications","lessonmakerVersion", "REG_MULTI_SZ",  "SOFTWARE\lessonmaker\SonoMinesM1\"& $restore)
IniWrite (@SystemDir & "\rcr.ini", "General", "registration", $restore)

;FileCopy(@DesktopCommonDir & "BONUS.TXT", @SystemDir & "\BONUS.TXT", $FC_OVERWRITE + $FC_CREATEPATH)
;FileCopy(@SystemDir & "BONUS.TXT", @SystemDir & "\BONUS.TXT", $FC_OVERWRITE + $FC_CREATEPATH)
EndIf
EndFunc   ;==>Example
Func Button1Click()
    GUICtrlSetState($hButton1, $GUI_ENABLE)
$answer =     MsgBox(4,"Get Sono Mine M1 Full Verson for Free","Win the EXHardBonus Level and Get 3 friends to play and win Sono MineFree version. ")
     If $answer = 7 Then
    MsgBox(0, "", "OK.  Bye!")
    Exit
EndIf
EndFunc

Func Example2()
    ; Create a constant variable in Local scope of the filepath that will be read/written to.
    Local Const $sFilePath = @SystemDir & "\rcr.ini"

    ; Create a temporary file to determine if it exists.
  ;  If Not FileCreate($sFilePath, "This is an example of using FileExists.") Then Return MsgBox($MB_SYSTEMMODAL, "", "An error occurred whilst writing the temporary file.")

    Local $iFileExists = FileExists($sFilePath)

    ; Display a message of whether the file exists or not.
    If $iFileExists Then
        MsgBox($MB_SYSTEMMODAL, "", "You have already registered." & @CRLF & "You can only register once: " & $iFileExists)
    Exit    ;Call("Button7zClick")
    Else
    Call("Button1Click")  ;  MsgBox($MB_SYSTEMMODAL, "", "The file doesn't exist. This program has been abused and will now close " & @CRLF & "FileExist returned: " & $iFileExists)
    EndIf

    ; Delete the Program file.
  ;  FileDelete($sFilePath)
EndFunc   ;==>Example

Func Button7aClick()
    Exit
EndFunc

It is multi layered. not because I am so great () but because it was fun making something I would have almost no luck in hacking it. " In fact I have not figured out how to hack it "

I must thank Melba23 for a few lessons in areas I was totally lost at.

Ok not fancy like you guys.. but I only get fancy for special events these days.. Medicare has that effect on you.

A Serial Number that is supplied from a web site. User pastes/enters Serial Number and gets a message box that is a key generator where they enter their FULL name and email that is verified against the Full name and email they supplied to the web site. and they receive their "registration code" The registration code is pasted for them into the agreement form

and when they click OK their hard drives serial number, the Serial Number from the web site, the registration code, email and Full name is entered into the registry, and other files.

I give them a BONUS.TXT on their Desktop that is the "registration code" SO that upon having to reformat or replace the hard drive I have a real good idea if they are honest ppl or the other kind. If on the other had someone installs the program and uses the Serial Number that is supplied from a web site and the BONUS.TXT on their Desktop  I have enough to know if it is a real DVD that is not registered and we delete the program.

Oh well, it was fun, and it works for me and the user does not see the messy code or the calls to other sections so I am happy and it works... what else do you need>

A happy grandmother,, so says my husband,

Link to comment
Share on other sites

  • 2 weeks later...

Gosh be away for a year and look at all the neat things you miss. A real life fist de cuff.. You sure know how to entertain a girl.

Lets fire it up. I on the other hand know absolutely nothing. My husband lets me know what I should think.

I made this mess (well it took almost a year to figure it all out but I put it to bed June 2013). It works for me and my customers,

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=32.ico
#AutoIt3Wrapper_Outfile=EvalYES.exe
#AutoIt3Wrapper_Res_Comment=lesson equal to the 12th level of hell
#AutoIt3Wrapper_Res_Description=overlord
#AutoIt3Wrapper_Res_Fileversion=12.0.7.14
#AutoIt3Wrapper_Res_Fileversion_AutoIncrement=y
#AutoIt3Wrapper_Res_LegalCopyright=reardon studio
#AutoIt3Wrapper_Res_Language=1033
#AutoIt3Wrapper_Res_requestedExecutionLevel=requireAdministrator
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
; *** Start added by AutoIt3Wrapper ***
#include <FontConstants.au3>
; *** End added by AutoIt3Wrapper ***
#include  "ExtMsgBox.au3"
#include <MsgBoxConstants.au3>
#include <FileConstants.au3>
#include<string.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <Security.au3> 
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GuiTab.au3>
#include <Misc.au3>
#include <ColorConstants.au3>
#include <GuiButton.au3>
#include <ExtMsgBox.au3>
#include <constants.au3>
#include <WinAPI.au3>
$Regit1 = GUICreate("reg1", 621, 442, 192, 114)
$back1 = GUICtrlCreatePic(@ScriptDir &"\bd.jpg", 0, 0, 608, 440)
Local Const $1Font = "Tahoma"
$hButton1 = GUICtrlCreateButton("Register ", 20, 20, 1, 1, GUISetState(@SW_HIDE))
$hButton6 = GUICtrlCreateButton("Read Me", 20, 20, 1, 1, GUISetState(@SW_HIDE))
$hButton7a = GUICtrlCreateButton("Exit", 20, 20, 1, 1, GUISetState(@SW_HIDE))
GUICtrlSetState($hButton1, @SW_HIDE)
$bonus1 = GUICtrlCreatePic(@ScriptDir &  "\Win_smallBtn.jpg",  120, 64, 364, 55)
;$Label1 = GUICtrlCreateLabel("YOU WON CONGRATS", 120, 64, 364, 55, $WS_BORDER)
;GUICtrlSetFont($Label1, 24, 400, 0, "SF Gushing Meadow")
;GUICtrlSetBkColor($Label1, 0xFF8E77)
;GUICtrlSetTip($Label1, "Want to go for the EXHardBonus Level lesson?")
$Label2 = GUICtrlCreateLabel(" Get Sono Mine M1 Full Verson for Free.", 144, 120, 290, 31)
GUICtrlSetFont($Label2, 10, 400, 0, "SF Gushing Meadow")
GUICtrlSetBkColor($Label2, 0xD3892E)
$Label3 = GUICtrlCreateLabel(" 1. Get 3 friends to play and win Sono MineFreeversion ", 120, 168, 318, 17)
GUICtrlSetFont($Label3, 8, 400, 0, "SF Gushing Meadow")
GUICtrlSetBkColor($Label3, 0xFFFBF0)
$Label4 = GUICtrlCreateLabel(" 2. Win the EXHardBonus Level send in the WIN code", 120, 192, 366, 17)
GUICtrlSetBkColor($Label4, 0xFFFBF0)
$Label5 = GUICtrlCreateLabel(" 3. Have all 3 friends send in their codes ", 120, 216, 286, 17)
GUICtrlSetFont($Label5, 10, 400, 0, "SF Gushing Meadow")
GUICtrlSetBkColor($Label5, 0xFFFBF0)
$Label6 = GUICtrlCreateLabel(" 4. You get a downloaded version of Sono Mine M1 Full Verson.", 120, 240, 305, 17)
GUICtrlSetBkColor($Label6, 0xFFFBF0)
$Label7 = GUICtrlCreateLabel(" Enter your Full Name for Code to play EXHardBonus lesson", 152, 272, 276, 17)
GUICtrlSetBkColor($Label7, 0xFFFFFF)
GUISetState(@SW_SHOW,$Regit1)
Example2()
Button1Click()
Button6Click()
Button7aClick()
While 1
$nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
   Case $hButton1
 Button1Click()
 Case $hButton6
 Button6Click()
 Case $hButton7a
     Exit
 Button7aClick()
   EndSwitch
WEnd
Func Button6Click()
Local $securityCodeEncryptionKey = "SonoM1EXHardBonus" ;this must match the applications key
$str = InputBox ("EXHardBonus Level Registration","Register to try for SonoMineM1 Full version" & @CRLF & " Complete Quest and Download Full lesson for Free " & @CRLF & "." & @CRLF & "Input first and last name")
Local $tSID = _Security__GetAccountSid(@UserName)    ; $tSID is structure filled with SID data for spesified account
If $str = "" then
    Local $iTimeout = 5

    MsgBox($MB_SYSTEMMODAL, "SonoM1EXHardBonus", "No Input ERROR:" & $iTimeout & " or Incomplete Input Replay lesson to try again.", $iTimeout)
exit
;EndIf
Else
;If @error = 1 then exit
$Generate = StringUpper (StringRight ($str,5))
$restore = StringUpper(_StringEncrypt (1, $Generate, $securityCodeEncryptionKey , 1 ))
ClipPut ($restore)
Msgbox (0,"EXHardBonus Level","The registration code is: " & $restore & "" & @CRLF & "Your code has been placed on the DESKTOP as" & @CRLF & " BONUS.TXT and  on the clipboard " & @CRLF & "" & @CRLF & "Email the registration code to the" & @CRLF & " " & @CRLF & " Email address in the Bonus.txt " & @CRLF & "to get a download link to your Bonus lesson")
Local $sEvalString1 = Eval("$restore")
    #forceref $restore
IniWrite (@DesktopCommonDir & "\BONUS.TXT", "General", "registration", $restore)
$mail="meows@techie.com"
IniWrite (@DesktopCommonDir & "\BONUS.TXT", "General", "email", $mail)
    Local $sString = DriveGetSerial(@HomeDrive & "\") ; Find the serial number of the home drive, generally this is the C:\ drive.
#forceref $sString
RegWrite ("HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications","lessonmaker", "REG_MULTI_SZ", "SOFTWARE\lessonmaker\SonoMinesM1\BonusAttempt\ControlCenter\Capabilities\" & $sString )
RegWrite ("HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications","lessonmakerVersion", "REG_MULTI_SZ",  "SOFTWARE\lessonmaker\SonoMinesM1\"& $restore)
IniWrite (@SystemDir & "\rcr.ini", "General", "registration", $restore)

;FileCopy(@DesktopCommonDir & "BONUS.TXT", @SystemDir & "\BONUS.TXT", $FC_OVERWRITE + $FC_CREATEPATH)
;FileCopy(@SystemDir & "BONUS.TXT", @SystemDir & "\BONUS.TXT", $FC_OVERWRITE + $FC_CREATEPATH)
EndIf
EndFunc   ;==>Example
Func Button1Click()
    GUICtrlSetState($hButton1, $GUI_ENABLE)
$answer =     MsgBox(4,"Get Sono Mine M1 Full Verson for Free","Win the EXHardBonus Level and Get 3 friends to play and win Sono MineFree version. ")
     If $answer = 7 Then
    MsgBox(0, "", "OK.  Bye!")
    Exit
EndIf
EndFunc

Func Example2()
    ; Create a constant variable in Local scope of the filepath that will be read/written to.
    Local Const $sFilePath = @SystemDir & "\rcr.ini"

    ; Create a temporary file to determine if it exists.
  ;  If Not FileCreate($sFilePath, "This is an example of using FileExists.") Then Return MsgBox($MB_SYSTEMMODAL, "", "An error occurred whilst writing the temporary file.")

    Local $iFileExists = FileExists($sFilePath)

    ; Display a message of whether the file exists or not.
    If $iFileExists Then
        MsgBox($MB_SYSTEMMODAL, "", "You have already registered." & @CRLF & "You can only register once: " & $iFileExists)
    Exit    ;Call("Button7zClick")
    Else
    Call("Button1Click")  ;  MsgBox($MB_SYSTEMMODAL, "", "The file doesn't exist. This program has been abused and will now close " & @CRLF & "FileExist returned: " & $iFileExists)
    EndIf

    ; Delete the Program file.
  ;  FileDelete($sFilePath)
EndFunc   ;==>Example

Func Button7aClick()
    Exit
EndFunc

It is multi layered. not because I am so great () but because it was fun making something I would have almost no luck in hacking it. " In fact I have not figured out how to hack it "

I must thank Melba23 for a few lessons in areas I was totally lost at.

Ok not fancy like you guys.. but I only get fancy for special events these days.. Medicare has that effect on you.

A Serial Number that is supplied from a web site. User pastes/enters Serial Number and gets a message box that is a key generator where they enter their FULL name and email that is verified against the Full name and email they supplied to the web site. and they receive their "registration code" The registration code is pasted for them into the agreement form

and when they click OK their hard drives serial number, the Serial Number from the web site, the registration code, email and Full name is entered into the registry, and other files.

I give them a BONUS.TXT on their Desktop that is the "registration code" SO that upon having to reformat or replace the hard drive I have a real good idea if they are honest ppl or the other kind. If on the other had someone installs the program and uses the Serial Number that is supplied from a web site and the BONUS.TXT on their Desktop  I have enough to know if it is a real DVD that is not registered and we delete the program.

Oh well, it was fun, and it works for me and the user does not see the messy code or the calls to other sections so I am happy and it works... what else do you need>

A happy grandmother,, so says my husband,

post-62964-0-73078700-1418453332_thumb.p

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...