|
You last visited: Today at 09:35
-
Did you know? elitepvpers has its own image host, epvpimg.com.
Elitepvpers HWID System
This is a discussion on Elitepvpers HWID System within the AutoIt forum part of the Coders Den category; Ich hab ein paar Änderungen an der _GetHWIDData() Funktion vorgenommen. Falls es neue Einträge geben sollte (z. B. <usergroupX> um ...
02-24-2012, 22:28
|
#21
|
Moderator
Join Date: Mar 2009
Posts: 6,605
Received Thanks: 32,187
|
Ich hab ein paar Änderungen an der _GetHWIDData() Funktion vorgenommen. Falls es neue Einträge geben sollte (z. B. <usergroupX> um alle Benutzergruppen), oder sich die Anordnung ändern, hat die Funktion damit keine Probleme.
Code:
$Array[0][0] = Number of information returned
$Array[0][1] = Hardware ID
$Array[1][0] = 1st info
$Array[1][1] = 1st info value
$Array[2][0] = 2nd info
$Array[2][1] = 2nd info value
...
$Array[n][0] = nth info
$Array[n][1] = nth info value
__________________
|
|
|
03-22-2012, 10:50
|
#22
|
Cat
Join Date: Jan 2012
Posts: 7,642
Received Thanks: 1,756
|
Ich hab schon viele Leute gesehen, die ein HWID System haben, wo die Leute erst mit dem HWID Code freigeschaltet werden muss, damit er Zugang zu eine Datei hat o.ä.
Könnte ich fragen wie das Funktioniert ?
|
|
|
03-22-2012, 12:45
|
#23
|
Moderator
Join Date: Mar 2009
Posts: 6,605
Received Thanks: 32,187
|
Code:
#include <EPVP_HWID.au3>
GUICreate("Test", 200, 200) ;GUI erstellen
$B_Exit = GUICtrlCreateButton("Beenden", 0, 0, 200, 200)
$Data = _GetHWIDData()
If IsArray($Data) Then
;evtl. Thanks, Beiträge oder sonstiges überprüfen
;If BedingungErfuellt Then
GUISetState() ;GUI anzeigen
;Else Fehlermeldung + Exit
;...
Do
$Msg = GUIGetMsg()
Sleep(25)
Until $Msg == -3 Or $Msg == $B_Exit
Else
MsgBox(48, "Fehler", "Du hast keine HWID angegeben!")
EndIf
Ich würde es allgemein nicht so machen, da es so einfach wäre den Check zu entfernen. Da das mit AutoIt allgemein sehr einfach ist, ist es auch wieder egal.
|
|
|
05-06-2012, 14:44
|
#24
|
メノウ
Join Date: Jan 2012
Posts: 1,947
Received Thanks: 1,840
|
Hallo KDeluxe!
Ich habe mir mal erlaubt, dein Script zu verbessern, ich hoffe das ist ok 
Und zwar habe ich Inetread mit Funktionen aus der WinHttp.au3 ersetz - es ist jetzt ca. 10x schneller im Laden der HWID-Daten
Code:
#include-once
#include <Winhttp.au3>
;=================================================================================================
; Function: _GetHWIDData($HWID = 0)
; Description: Checks the HWID and returns an array containing the user related informations
; Return Value(s): On Success - Returns an array containing the user related informations.
; On Failure - Returns false
; @Error - 1 = Failed to get the HWID.
; 2 = Failed to connect to the internet.
; 3 = Failed to categorize the information.
; Author(s): KillerDeluxe
; Modified : Achat
; Remark(s): The array returned is made up as follows:
; $Array[0] = userid
; $Array[1] = username
; $Array[2] = joindate
; $Array[3] = posts
; $Array[4] = thanks
; $Array[5] = usergroup
;=================================================================================================
Func _GetHWIDData($HWID = 0)
Local $ReturnData[6], $URL = "api/hwid.php?hash="
If $HWID == 0 Then
$HWID = _GetHWID()
If @error Then Return SetError(1, "", False)
EndIf
#region Speed improvements by Achat (www.elitepvpers.com)
$hSession=_WinHttpOpen()
$hConnect=_WinHttpConnect($hSession,'www.elitepvpers.com')
$Source=_WinHttpSimpleRequest($hConnect,'GET',$URL&$HWID)
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hSession)
#endregion
If @error Then Return SetError(2, "", False)
$Info = StringRegExp($Source, "<.*?>(.*?)</.*?>", 3)
If @error Then Return SetError(3, "", False)
For $i = 0 To 5
$ReturnData[$i] = $Info[$i]
Next
Return $ReturnData
EndFunc
MfG
|
|
|
05-06-2012, 14:49
|
#25
|
Banned
Join Date: Mar 2011
Posts: 8,644
Received Thanks: 3,444
|
Quote:
Originally Posted by Achat
Hallo KDeluxe!
Ich habe mir mal erlaubt, dein Script zu verbessern, ich hoffe das ist ok 
Und zwar habe ich Inetread mit Funktionen aus der WinHttp.au3 ersetz - es ist jetzt ca. 10x schneller im Laden der HWID-Daten
Code:
#include-once
#include <Winhttp.au3>
;=================================================================================================
; Function: _GetHWIDData($HWID = 0)
; Description: Checks the HWID and returns an array containing the user related informations
; Return Value(s): On Success - Returns an array containing the user related informations.
; On Failure - Returns false
; @Error - 1 = Failed to get the HWID.
; 2 = Failed to connect to the internet.
; 3 = Failed to categorize the information.
; Author(s): KillerDeluxe
; Modified : Achat
; Remark(s): The array returned is made up as follows:
; $Array[0] = userid
; $Array[1] = username
; $Array[2] = joindate
; $Array[3] = posts
; $Array[4] = thanks
; $Array[5] = usergroup
;=================================================================================================
Func _GetHWIDData($HWID = 0)
Local $ReturnData[6], $URL = "api/hwid.php?hash="
If $HWID == 0 Then
$HWID = _GetHWID()
If @error Then Return SetError(1, "", False)
EndIf
#region Speed improvements by Achat (www.elitepvpers.com)
$hSession=_WinHttpOpen()
$hConnect=_WinHttpConnect($hSession,'www.elitepvpers.com')
$Source=_WinHttpSimpleRequest($hConnect,'GET',$URL&$HWID)
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hSession)
#endregion
If @error Then Return SetError(2, "", False)
$Info = StringRegExp($Source, "<.*?>(.*?)</.*?>", 3)
If @error Then Return SetError(3, "", False)
For $i = 0 To 5
$ReturnData[$i] = $Info[$i]
Next
Return $ReturnData
EndFunc
MfG
|
Niemals. So wie KD es macht ist um längen besser
|
|
|
05-06-2012, 14:57
|
#26
|
メノウ
Join Date: Jan 2012
Posts: 1,947
Received Thanks: 1,840
|
Aber mit WinHttp lädt es schneller als mit Inetread.
|
|
|
05-06-2012, 15:52
|
#27
|
Banned
Join Date: Mar 2011
Posts: 8,644
Received Thanks: 3,444
|
Quote:
Originally Posted by Achat
Aber mit WinHttp lädt es schneller als mit Inetread.
|
Der Code der gelesen wird ist 8 Zeilen lang da ist das scheiß egal
|
|
|
05-06-2012, 17:26
|
#28
|
メノウ
Join Date: Jan 2012
Posts: 1,947
Received Thanks: 1,840
|
Quote:
Originally Posted by Freddy
Der Code der gelesen wird ist 8 Zeilen lang da ist das scheiß egal
|
jetzt frag mal bei 100 HWIDs die Infos ab - dann hast du mit WinHttp schon einen sehr großen Geschwindigkeitsvorteil 
Man sollte Programme immer so schreiben, dass sie Ressourcen sparen und schnell sind.
MfG
|
|
|
05-06-2012, 17:34
|
#29
|
Banned
Join Date: Mar 2011
Posts: 8,644
Received Thanks: 3,444
|
Quote:
Originally Posted by Achat
jetzt frag mal bei 100 HWIDs die Infos ab - dann hast du mit WinHttp schon einen sehr großen Geschwindigkeitsvorteil 
Man sollte Programme immer so schreiben, dass sie Ressourcen sparen und schnell sind.
MfG
|
Die Computer haben doch keine 100 HWIDs
|
|
|
05-11-2012, 19:22
|
#30
|
Moderator
Join Date: Mar 2009
Posts: 6,605
Received Thanks: 32,187
|
Bei grob überschlagen 250 Byte gibt es kaum eine Differenzen. Wirklich viel bringt die Änderung nicht, jedenfalls nicht die 10fache Geschwindigkeit.
Ich habe gezielt möglichst viele AutoIt Funktionen benutzt um keine Abhängigkeiten von anderen UDFs zu schaffen. Deshalb habe ich auch eine "eigene" MD5 UDF geschrieben und nicht die aus der Crypt.au3 verwendet. Außerdem möchte ich den Code so simpel wie möglich halten, damit ihn auch Anfänger (halbwegs) nachvollziehen können.
|
|
|
All times are GMT +2. The time now is 09:35.
|
|