Kiti Posted July 13, 2008 Posted July 13, 2008 I want to make my script expire in a number of days, so it cannot be run again on the same computer unless Windows is reinstalled. I've tried Valuater's XProTec but it's MUCH too complicated for my needs. I don't want to connect to the internet, don't send any email, no paypal, no registration, nothing but just to expire in x number of days. Is there any simple method to do this? Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30
7h331337 Posted July 13, 2008 Posted July 13, 2008 cnt you just use a ini file that stores the number of days and save it in system 32 dir
Kiti Posted July 13, 2008 Author Posted July 13, 2008 cnt you just use a ini file that stores the number of days and save it in system 32 dirI'm still some kind of a newbie, so can you tell me how to do this?Now I realize that I want an activation code, that is unique to a certain computer, so if anyone decides to buy my program and gets the code, it will be useless to give it to others because that code will only work on his computer. I found some intresting work at ChrisL. I thought of giving that Keygen to the buyer, then generate the code and delete itself. Is it the right way I should go? Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30
d3mon Posted July 13, 2008 Posted July 13, 2008 Hello, I think that can help you : If FileExists(@ScriptDir&"\trialversion.txt") Then $Trial=FileRead(@ScriptDir&"\trialversion.txt") If $Trial=@MDAY Then ;If trial Expire=Day Exit EndIf Else ;If Trial files doesnt exists Then If @MDay=1 Then ; If Day=1 Then Expire in 3days FileWrite(@ScriptDir&"\trialversion.txt","4") ; So expire at 4 EndIf If @MDay=2 Then FileWrite(@ScriptDir&"\trialversion.txt","5") EndIf If @MDay=3 Then FileWrite(@ScriptDir&"\trialversion.txt","6") EndIf ;Etc....Warning ! Month could be 31 or 30 So... If @MDay=30 and @MON Then ; If Day=1 and Mon=January Then Expire in 3days [January = 31 days] FileWrite(@ScriptDir&"\trialversion.txt","3") ; So expire at 3 EndIf ;Etc.... EndIf ;But place Trialtext file in other directory like windows/system32/ for user dont see it... ;You can do "FileSetAttrib(@ScriptDir&"\trialversion.txt","HS")" ==> HS for Hidden and system file :) No-life of autoit...what could be better ?LAST SCRIPTS WITH AUTO-IT : CLICK HERE
d3mon Posted July 13, 2008 Posted July 13, 2008 If you want an activation code you have to do encrypt text for exemple your computer have ID"020202" so you encrypt the password with ID"020202" and you have the trial software code, you understand ? expandcollapse popup;==================================================== ;============= Encryption Tool With GUI ============= ;==================================================== ; AutoIt version: 3.0.103 ; Language: English ; Author: "Wolvereness" ; ; ---------------------------------------------------------------------------- ; Script Start ; ---------------------------------------------------------------------------- #include <guiconstants.au3> #include <string.au3> ;#include files for encryption and GUI constants ;~~ $WinMain = GuiCreate('Encryption tool', 400, 400) ; Creates window ;~~ $EditText = GuiCtrlCreateEdit('',5,5,380,350) ; Creates main edit ;~~ $InputPass = GuiCtrlCreateInput('',5,360,100,20, 0x21) ; Creates the password box with blured/centered input ;~~ $InputLevel = GuiCtrlCreateInput(1, 110, 360, 50, 20, 0x2001) $UpDownLevel = GUICtrlSetLimit(GuiCtrlCreateUpDown($inputlevel),10,1) ; These two make the level input with the Up|Down ability ;~~ $EncryptButton = GuiCtrlCreateButton('Encrypt', 170, 360, 105, 35) $DecryptButton = GuiCtrlCreateButton('Decrypt', 285, 360, 105, 35) ; Encryption/Decryption buttons ;~~ GUICtrlCreateLabel('Password', 5, 385) GuiCtrlCreateLabel('Level',110,385) ; Simple text labels so you know what is what ;~~ GuiSetState() ; Shows window ;~~ Do $Msg = GuiGetMsg() If $msg = $EncryptButton Then ; When you press Encrypt ;~~ GuiSetState(@SW_DISABLE,$WinMain) ; Stops you from changing anything ;~~ $string = GuiCtrlRead($EditText) ; Saves the editbox for later ;~~ GUICtrlSetData($EditText,'Please wait while the text is Encrypted/Decrypted.') ; Friendly message ;~~ GuiCtrlSetData($EditText,_StringEncrypt(1,$string,GuiCtrlRead($InputPass),GuiCtrlRead($InputLevel))) ; Calls the encryption. Sets the data of editbox with the encrypted string ;~~ GuiSetState(@SW_ENABLE,$WinMain) ; This turns the window back on ;~~ EndIf If $msg = $DecryptButton Then ; When you press Decrypt ;~~ GuiSetState(@SW_DISABLE,$WinMain) ; Stops you from changing anything ;~~ $string = GuiCtrlRead($EditText) ; Saves the editbox for later ;~~ GUICtrlSetData($EditText,'Please wait while the text is Encrypted/Decrypted.') ; Friendly message ;~~ GuiCtrlSetData($EditText,_StringEncrypt(0,$string,GuiCtrlRead($InputPass),GuiCtrlRead($InputLevel))) ; Calls the encryption. Sets the data of editbox with the encrypted string ;~~ GuiSetState(@SW_ENABLE,$WinMain) ; This turns the window back on ;~~ EndIf Until $msg = $GUI_EVENT_CLOSE; Continue loop untill window is closed Modify this script for tiral software No-life of autoit...what could be better ?LAST SCRIPTS WITH AUTO-IT : CLICK HERE
Kiti Posted July 13, 2008 Author Posted July 13, 2008 Yes, I do. And how can I get the ID of the computer? I mean, remotely, so I can send the buyer his own key, working only for his computer? Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30
Kiti Posted July 13, 2008 Author Posted July 13, 2008 Well you can do that by Ip of user anyway I will find another Tip for you tomorrow I don't forget bye !Ok... Thank you! Good night! Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30
James Posted July 13, 2008 Posted July 13, 2008 Strip the '.'s and encrypt his IP. Blog - Seriously epic web hosting - Twitter - GitHub - Cachet HQ
Moderators SmOke_N Posted July 13, 2008 Moderators Posted July 13, 2008 Strip the '.'s and encrypt his IP.IPs change. Look for UUIDs (Google it "Universally Unique Identifer"). Something that doesn't change even if there is a reformat of the PC. Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.
rasim Posted July 14, 2008 Posted July 14, 2008 KitiDim $UUID, $stdOut $RunPID = Run(@ComSpec & " /c wmic csproduct get UUID", @SystemDir, @SW_HIDE, 2 + 4) While 1 $stdOut = StdoutRead($RunPID) If @error Then ExitLoop If StringRegExp($stdOut, "\d", 0) = 1 Then $UUID = StringRegExp($stdOut, "(\d.*) \r", 1) $UUID = $UUID[0] ExitLoop EndIf WEnd MsgBox(64, "Computer Universally Unique Identifer", $UUID)
Moderators SmOke_N Posted July 14, 2008 Moderators Posted July 14, 2008 Kiti Dim $UUID, $stdOut $RunPID = Run(@ComSpec & " /c wmic csproduct get UUID", @SystemDir, @SW_HIDE, 2 + 4) While 1 $stdOut = StdoutRead($RunPID) If @error Then ExitLoop If StringRegExp($stdOut, "\d", 0) = 1 Then $UUID = StringRegExp($stdOut, "(\d.*) \r", 1) $UUID = $UUID[0] ExitLoop EndIf WEnd MsgBox(64, "Computer Universally Unique Identifer", $UUID)oÝ÷ Ûú®¢×£kÊØZ·XÂzÙz0ü¨¹ø§u¬ÊÇ«¬)hý½æÞz{kÊ)à~êº+^²¶)~Úªê-²)©+-Ê®¢ÜÊÝ¢)àÛaz·¬º[l«Þmmç§ëlwÁæ«zíå"gZºÚ"µÍÙÐÞ ÕÓRWÕURQ JB[ÈÕÓRWÕURQ ÌÍÜרÛÛ]HÛÛ][YJBSØØ[ ÌÍÜ×ÛÝ]]H ][ÝÉ][ÝÂSØØ[ ÌÍÛØÝÛZHHØÙ] ][ÝÝÚ[YÛ]ÎÌLÉÌLÉ][ÝÈ [ÈÂBBBBIÌÍÜרÛÛ] [ÈÂBBBBI][ÝÉÌLÜÛÝ ÌLÐÒSU][ÝÊBRYÓØ ÌÍÛØÝÛZJHH[]Ù]ÜK ][ÝÉ][ÝÊBBSØØ[ ÌÍØÛÛÚ][ÈH ÌÍÛØÝÛZK^XÔ]YJ ][ÝÔÑSPÕ ÓHÚ[ÌÐÛÛ]ÞÝ[TÙXÝ ][ÝËÂBBBBBI][ÝÕÔS ][ÝËÂBBBBBP]ÔL JBRYÓØ ÌÍØÛÛÚ][ÊHH[]Ù]Ü ][ÝÉ][ÝÊBBSØØ[ ÌÍÛØÚ][BQÜ ÌÍÛØÚ][H[ ÌÍØÛÛÚ][ÂBRY ÌÍÛØÚ][KURQ ÉÝÈ ][ÝÉ][ÝÊH[] ÌÍÛØÚ][KURQS^BT]Ù]ÜË ][ÝÉ][ÝÊB[[ Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.
d3mon Posted July 14, 2008 Posted July 14, 2008 (edited) Hello, For you ip trial software encrypt : expandcollapse popupOpt("GuiOnEventMode",1) ;EventMode for guictrlbutton #Include <INet.au3> ;When the script start always take ip because it can change #include <string.au3> $IP=_GetIP() ;Get Current Adress Ip ;-- Encrypt password by Ip -- $Trial=_StringEncrypt(1,$IP,"Kiti",1) ;Encrypt with IP and Kiti password at Level 1 ;Window for Trial Key $win=GUICreate("Enter trial Key",200,100) GUICtrlCreateLabel("Write trial Key for Kiti Software",5,5) $TrialKey=GUICtrlCreateEdit("",5,25,190,17) ;Enter there previous trial key $reg=GUICtrlCreateButton("Register",20,50) ;Register key GUICtrlSetOnEvent(-1,"_Reg") $cancel=GUICtrlCreateButton("Cancel",70,50) ;Cancel GUICtrlSetOnEvent(-1,"_Cancel") GUISetState(@SW_SHOW,$win) Func _Reg() $ReadTrial=GUICtrlRead($TrialKey) If $ReadTrial=$Trial Then ; TrialIp = Previous Trial MsgBox(48,"Kiti Registered","Key Validated !") GUISetState(@SW_HIDE,$win) Else MsgBox(16,"Kiti Wrong Key","Wrong Key !") EndIf EndFunc Func _Cancel() GUISetState(@SW_HIDE,$win) EndFunc While 1 WEnd Edited July 14, 2008 by d3mon No-life of autoit...what could be better ?LAST SCRIPTS WITH AUTO-IT : CLICK HERE
muzle6074 Posted July 14, 2008 Posted July 14, 2008 an ip address can change, wouldn't it be easier to store a value in the registry?
rasim Posted July 14, 2008 Posted July 14, 2008 SmOke_N Now try that without WMI (Let me know if you find a way seriously lol ... I've been trying for quite sometime for a "simplistic" way of doing it, the results haven't been good). But since we are on the WMI method:Ok, thanks for this example, i didn`t know this. But why need this two params: "WQL" and "BitOr(0x0000010, 0x0000020)"? Seem works fine without said two params: Dim $strComputer = ".", $string $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2") $colItems = $objWMIService.ExecQuery("Select * from Win32_ComputerSystemProduct") For $objItem In $colItems $string = "UUID - " & $objItem.UUID & @LF Next MsgBox(0, "", $string)
d3mon Posted July 14, 2008 Posted July 14, 2008 an ip address can change, wouldn't it be easier to store a value in the registry?Hello,muzle6074 do you know read topic, because In my script I take ip always when the script is running so if ip change or not I have the current ip... No-life of autoit...what could be better ?LAST SCRIPTS WITH AUTO-IT : CLICK HERE
Moderators SmOke_N Posted July 14, 2008 Moderators Posted July 14, 2008 SmOke_N Ok, thanks for this example, i didn`t know this. But why need this two params: "WQL" and "BitOr(0x0000010, 0x0000020)"? Seem works fine without said two params: Dim $strComputer = ".", $string $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2") $colItems = $objWMIService.ExecQuery("Select * from Win32_ComputerSystemProduct") For $objItem In $colItems $string = "UUID - " & $objItem.UUID & @LF Next MsgBox(0, "", $string) muttley I took it out of one of my old functions that got more data than just the UUID. Hello, muzle6074 do you know read topic, because In my script I take ip always when the script is running so if ip change or not I have the current ip...I think we all read the topic very well. IP is a faulty method IMO. If I get my license from you with an IP of 90.90.1.2.3 and I run my PC that way... then I shut down, and my ISP changes my IP on my next boot up to 90.73.3.2.1 ... how does your script recognize that it is the same pc/person that was originally licensed? Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.
d3mon Posted July 14, 2008 Posted July 14, 2008 IP is a faulty method IMO. If I get my license from you with an IP of 90.90.1.2.3 and I run my PC that way... then I shut down, and my ISP changes my IP on my next boot up to 90.73.3.2.1 ... how does your script recognize that it is the same pc/person that was originally licensed? No-life of autoit...what could be better ?LAST SCRIPTS WITH AUTO-IT : CLICK HERE
muzle6074 Posted July 14, 2008 Posted July 14, 2008 IP is a faulty method IMO.If I get my license from you with an IP of 90.90.1.2.3 and I run my PC that way... then I shut down, and my ISP changes my IP on my next boot up to 90.73.3.2.1 ... how does your script recognize that it is the same pc/person that was originally licensed?Well, when the license has been registered, you can write on computer file or write in registry...d3mon,im a bit lost... if u are validating the expiry with their ip, how can it be validated if the ip is always changing (assuming its not static).
d3mon Posted July 14, 2008 Posted July 14, 2008 d3mon,im a bit lost... if u are validating the expiry with their ip, how can it be validated if the ip is always changing (assuming its not static).So, the software will all 1min check ip I you want that's not a problem... No-life of autoit...what could be better ?LAST SCRIPTS WITH AUTO-IT : CLICK HERE
Kiti Posted July 14, 2008 Author Posted July 14, 2008 I've finally realized that ChrisL's script works great for this! You put your program into this code: expandcollapse popup#Region converted Directives from D:\My Documents\AutoITscripts\DriveTester\TrialSoftware.au3.ini #AutoIt3Wrapper_aut2exe=C:\Program Files\AutoIt3\Aut2Exe\Aut2Exe.exe #AutoIt3Wrapper_outfile=D:\My Documents\AutoITscripts\DriveTester\TrialSoftware.exe #AutoIt3Wrapper_Res_Comment=http://www.hiddensoft.com/autoit3/compiled.html #AutoIt3Wrapper_Res_Description=AutoIt v3 Compiled Script #AutoIt3Wrapper_Res_Fileversion_AutoIncrement=n #AutoIt3Wrapper_Run_AU3Check=4 #EndRegion converted Directives from D:\My Documents\AutoITscripts\DriveTester\TrialSoftware.au3.ini ; ; ---------------------------------------------------------------------------- ; ; AutoIt Version: 3.2.4.9 ; Author: Chris Lambert ; ; Script Function: trial/licensed software system ; Template AutoIt script. ; ; ---------------------------------------------------------------------------- ; Script Start - Add your code below here #include <date.au3> #include <string.au3> Global $Debugit = 0 Local $securityCodeEncryptionKey = "MyPa55w0rd" ;this must match the key generator Global $mac Global $Generate Global $restore Global $RequiresRegCode = 1 ;if set to 1 then software will prompt for a registration code if set to 0 then no registration code is required but can still be ran as a time limited trial If $RequiresRegCode then $mac = StringUpper (StringReplace (_GetMAC(),":","") & StringRight ( Hex(@mon),1)); this makes the mac address only valid during this month or registration, so if they discover the fake dll and delete it, the code only registers during this month of cousre they could figure on putting it back to the original registration month $Generate = StringRight ($mac,5) $restore = StringUpper (_StringEncrypt (1, $Generate, $securityCodeEncryptionKey , 1 )) EndIf Global $myFakeDll = @Windowsdir & "\TMy.dll" ; I suggest using a prefix of T for Trial software in the dllname and be sure it's not a dll name that is going to already exist you could hide it in the windows directory or anywhere else really Global $trialPeriod = 14 ;days (use -1 if not trial software just regkey licenced) Global $ShowEvaluationWarning = 1 ;1 displays an evaluation warning during checking the authorisation, 0 will not show a warning Global $applicationName = "My App" Global $dllEncKey = "aBc" ;you can change this to whatever you like it is the ini encryption if made too long and it takes longer to read and write Global $dlliniSection = Encrypt("iniSectionName");you can change this too if you really want to If NOT FileExists ($myFakeDll) then EnterNewCode() FileSetAttrib($myFakeDll,"+HS") EndIf $validation = CheckValidation() ;============================================Main app Starts here============================================ If $validation <> -1 then Msgbox(0,"","This is the main application start point" & @crlf & "If you can see this then you have a successfully registered application" & @crlf & "You have " & $validation & " Days left to evaluate this software") Else Msgbox(0,"","This is the main application start point" & @crlf & "If you can see this then you have a successfully registered application") EndIf Msgbox(0,"","Hurray!!!") ;============================================Main app Finishes here============================================ Func EnterNewCode() ClipPut ($mac) If $RequiresRegCode then $entered = InPutBox ("Register", "This software is for trial please telephone" & @crlf & "00000 0000000 to obtain a registration code" & @crlf & "Please quote the following Code " & @crlf & @crlf & $mac & @crlf & @crlf & "Enter the unlock code below","","",-1,200 ) If @error = 1 then Exit ;CANCEL WAS PRESSED Else $entered = $restore EndIf If $entered = $restore then If $RequiresRegCode then MsgBox (262144,$applicationName,"Successfully Registered") IniWrite ($myFakeDll,$dlliniSection,Encrypt ("DecodeKey"),Encrypt ($restore)) IniWrite ($myFakeDll,$dlliniSection,Encrypt ("GeneratedMac"),Encrypt ($Mac)) If $trialPeriod <> -1 then IniWrite ($myFakeDll,$dlliniSection,Encrypt ("RegDate"),Encrypt (_NowCalcDate())) $sysprep = _DateAdd ( "D", $trialPeriod, _NowCalcDate() ) IniWrite ($myFakeDll,$dlliniSection,Encrypt ("FinalDate"),Encrypt ($sysprep)) IniWrite ($myFakeDll,$dlliniSection,Encrypt ("LastRunDate"),Encrypt (_NowCalcDate())) IniWrite ($myFakeDll,$dlliniSection,Encrypt ("Count"),Encrypt (0)) endif Else MsgBox (262144,"Error","Registration code is incorrect") Exit EndIf EndFunc ;==> EnterNewRegCode() Func CheckValidation() If $RequiresRegCode then $RecordedMacCheck = StringLeft (StringRight (Decrypt (IniRead ($myFakeDll,$dlliniSection,Encrypt ("GeneratedMac"),"Eric")),5),4) $MacCheck = StringLeft (StringRight ($mac,5),4) If $RecordedMacCheck <> $MacCheck then Debug ("Recorded Mac = " & $RecordedMacCheck) Debug ("Macaddress = " & $MacCheck ) Debug ("The Mac code didn't match") If FileExists ($myFakeDll) then FileDelete($myFakeDll) EnterNewCode() Return -1 EndIf EndIf If $trialPeriod = -1 then return -1 If $ShowEvaluationWarning then Splashtexton ($applicationName,@crlf & "This is evaluation software",250,60) $finalDateCheck = Decrypt ( IniRead ($myFakeDll,$dlliniSection, Encrypt("FinalDate"),"")) $RegDateCheck = Decrypt ( IniRead ($myFakeDll,$dlliniSection, Encrypt("RegDate"),"")) $LastRunDateCheck = Decrypt ( IniRead ($myFakeDll,$dlliniSection, Encrypt("LastRunDate"),"")) $CountCheck = Number( Decrypt ( IniRead ($myFakeDll,$dlliniSection, Encrypt("Count"),"")) ) If _DateDiff ("D", _NowCalcDate(),$finalDateCheck) < 0 Then ;the date is 14 days past the registration date Debug ("passed the " & $trialPeriod & " days Expired " & _DateDiff ("D",$finalDateCheck, _NowCalcDate() ) ) SplashOff() Msgbox (262144,$applicationName,"Evaluation Expired") IniWrite ($myFakeDll,$dlliniSection,Encrypt ("Count"),Encrypt ($trialPeriod + 1)) Exit EndIf If _DateDiff ("D",$LastRunDateCheck,_NowCalcDate()) < 0 Then ;they have changed the clock bacwards so expire Debug ("Clock date is set before last run date") SplashOff() Msgbox (262144,$applicationName,"Date tampering detected Evaluation Expired") IniWrite ($myFakeDll,$dlliniSection,Encrypt ("Count"),Encrypt ($trialPeriod + 1)) Exit EndIf If $CountCheck >= $trialPeriod then ;second method for checking days used ;trialPeriod days are up so expire Debug ("Count is greater than " & $trialPeriod) SplashOff() Msgbox (262144,$applicationName,"Evaluation Expired") Exit EndIf If _NowCalcDate() <> $LastRunDateCheck Then ;if the date is different to the last ran date then increase the days used by 1 $CountCheck += 1 Debug ("Increase the used count; Count is now " & $CountCheck) IniWrite ($myFakeDll,$dlliniSection,Encrypt ("Count"),Encrypt ($CountCheck)) IniWrite ($myFakeDll,$dlliniSection,Encrypt ("LastRunDate"),Encrypt (_NowCalcDate()));log the new last run date EndIf If $ShowEvaluationWarning then Sleep (2000) SplashOff() EndIf Return ($trialPeriod - $CountCheck) EndFunc ;==> CheckValidation() Func Encrypt ($string) Return _StringEncrypt (1, $String, $dllEncKey , 1 ) EndFunc ;==> Encrypt() Func Decrypt ($String) Return _StringEncrypt (0, $String, $dllEncKey , 1 ) EndFunc ;==> Decrypt() Func Debug ($var) If $Debugit then ConsoleWrite ($var & @crlf) EndFunc;==> Debug to Scite() Func _GetMAC($getmacindex = 1) $ipHandle = Run(@ComSpec & ' /c ipconfig /all', '', @SW_HIDE, 2) $read = "" Do $read &= StdoutRead($ipHandle) Until @error $read = StringStripWS($read,7) $macdashed = StringRegExp( $read , '([0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2})', 3) If Not IsArray($macdashed) Then Return 0 If $getmacindex < 1 Then Return 0 If $getmacindex > UBound($macdashed) Or $getmacindex = -1 Then $getmacindex = UBound($macdashed) $macnosemicolon = StringReplace($macdashed[$getmacindex - 1], '-', ':', 0) Return $macnosemicolon EndFunc;==>_GetMACoÝ÷ Ù8Z·Mú§'z÷«r§ëÛazëé["¶Ú2¢æ§w*.ºÇ+${(Ú ÷¡fÚrF¤{*',(®H§ú++¢jnµêÚºÚ"µÍÈKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKBÂÈ]]Ò]Ú[ÛËHÈ]]ÜÚÈ[XÂÈØÜ[Ý[ÛÙ^QÙ[ÜX[ÛXÙ[ÙYÛÙØBÂU[]H]]Ò]ØÜÂÈKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKBÈØÜÝHY[ÝÛÙH[ÝÈBÚ[ÛYIÜÝ[Ë]LÉÝÂØØ[ ÌÍÜÙXÝ]PÛÙQ[Ü[ÛÙ^HH ][ÝÓ^TMM]Ì ][ÝÈÝÈ]ÝX]ÚHXØ][ÛÈÙ^BÌÍÜÝH[]Þ ][ÝÒTÔÈ]HÚXÚÈYÚÝ][Û][ÝË ][ÝÒ[]ÛÙI][ÝÊBYÜHH[^]BÌÍÑÙ[]HHÝ[Õ Ý[ÔYÚ ÌÍÜÝ JJBÌÍÜÝÜHHÝ[ÕÔÝ[Ñ[Ü K ÌÍÑÙ[]K ÌÍÜÙXÝ]PÛÙQ[Ü[ÛÙ^HH JBÛ] ÌÍÜÝÜJBÙØÞ ][ÝÒTÔÈ]HÚXÚÉ][ÝË ][ÝÕHYÚÝ][ÛÛÙHÎ ][ÝÈ [È ÌÍÜÝÜH [ÈÜ [ÈÜ [È ][ÝÕHÛÙHÈY[XÙYÛHÛØ ][ÝÊ Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now