ExecuteLogin - Das Handliche Login Tool

08/21/2012 19:02 ÐΣαtђ#1

Ihr habt ein Programm was ihr nur Bestimmten Personen geben wollt
Die Accountdaten haben, oder z.B. einen Chat Habt dem noch eine Login
Funktion fehlt? Tja, Hier Kommt die Lösung: ExecuteLogin

Unterstützte Sprachen:
- Autoit
Mehr folgen, Ganz sicher ;)

Wie gehts?
Komm mir doch nicht mit so Tricky fragen :awesome:
Nein Quatsch^^ Man kann ihn Kinderleicht handhaben
Also Ihr fügt diesen Code:
Code:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <INet.au3>
#include <FTP.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Login", 209, 109, 360, 167)
GUISetBkColor(0x000000)
$Button1 = GUICtrlCreateButton("Login", 16, 72, 81, 33)
$Label1 = GUICtrlCreateLabel("Username: ", 8, 8, 50, 17)
GUICtrlSetColor(-1, 0x008000)
$Label2 = GUICtrlCreateLabel("Passwort: ", 8, 36, 53, 17)
GUICtrlSetColor(-1, 0x008000)
$Input1 = GUICtrlCreateInput("", 64, 8, 137, 21)
$Input2 = GUICtrlCreateInput("", 64, 32, 137, 21)
GUICtrlSetColor(-1, 0xFFFFFF)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
	$nMsge = GUIGetMsg()
	Switch $nMsge
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			$Username = GUICtrlRead($Input1)
			$Passwort = GUICtrlRead($Input2)
			$Logindata = InetRead("[COLOR="Lime"]ftp://MEINUSERNAME:[Only registered and activated users can see links. Click Here To Register...]-server.de/" & $Username & ".txt[/COLOR]"); Der Absolute Pfad auf dem FTP Server, Ich hab das so geregelt
																											; Das Jeder User seine eigene Textdatei Mit seinen Accountdaten
																											; Hat nach diesem Prinzip:
																											;---------
																											; Username
																											; Passwort
																											;---------
																											; Das Programm macht einen Stringsplit mit @CRLF sowerden die
																											; Beiden Logindaten in $SplitLogindata[1] und $SplitLogindata[2]
																											; Umgewandelt!

			$BinaryLogindata = BinaryToString($Logindata)
			$SplitLogindata = StringSplit($BinaryLogindata, @CRLF)
			If $Username = $SplitLogindata[1] Then
				If $Passwort = $SplitLogindata[2] Then
					MsgBox(0,"Logged In!","Erfolgreich eingeloggt!" & @CRLF & "Viel Spaß!")
					GUIDelete($Form1)
					_Main()
					ExitLoop
					GUISetState(@SW_HIDE)
				EndIf
			EndIf
				$Label3 = GUICtrlCreateLabel("Accountdaten sind falsch!", 80, 56, 127, 17)
				GUICtrlSetColor(-1, 0x800000)
				Sleep(5000)

		Case $GUI_EVENT_CLOSE
			Exit
	EndSwitch
WEnd

Func _Main()
	;Dein Programmcode
	MsgBox(0,"","")
EndFunc
In euren Autoit Editor z.B. SciTe ein und ersetzt die Rot markierte Stelle
Mit euren Daten.
Falls Ihr jemanden Registrieren Wollt müsstet ihr jetzt eine neue Textdatei
In diesem Format auf den Server packen:

Username
Passwort

Oder Ihr automatisiert diesen Vorgang einfach mit einem Tool.
Im Laufe der Tage werde ich auch ein RegistrierungsTool machen
Wahrscheinlich 1 für Admins und 1 für User

Mfg Death
bei Fragen -> Direkt in den Thread :)
~ greetz
08/21/2012 23:04 Jeoni#2
So, ich bin hier, um kontruktive Kritik an deinem Tool zu machen :D
1.) Ich sehe im Code keine rotmarkierten Stellen, wo ich die meine Daten eingeben könnte.
2.) Das über einen FTP-Server zu machen ist unsicher, da AutoIt ja sehr leicht dekompilierbar ist und auch sonst gibt es noch Möglichkeiten für Dritte an die Daten ranzukommen. Daher sollte man lieber bei einem Freehoster (Kilu, etc.) eine Webseite erstellen und das dann darüber auslesen. So kann der Programmierer die Username/Passwort-Kombinationen ändern, der Nutzer (oder ein möglicher Dritter) allerdings nicht.
3.) Ich sehe in diesem Thread leider kein Release, sondern eher ein unfertiges Tutorial, was hier natürlich falsch ist.
4.) Wie willst du ein Programm für User erstellen? Das muss doch der Programmierer machen, der auch gleichzeitig Admin ist (oder sein müsste). Das solltest du näher erläutern.

Ich hoffe, du nimmst dir meine Kritik zu Herzen und passt das dementsprechend an. :)
Mit freundlichen Grüßen
Jeoni

/Edit: Ein Sourcecode-Release ist natürlich ok. Gibt's aber recht selten, daher war ich verwundert. Aber wenn es schon so ein Release sein soll, muss der Code auch gut sein, und das sehe ich hier nicht. Des Weiteren gehört sowas dann nicht auch in den "Kleinere Releases"-Sammelthread? Immerhin kann sich das jeder, der die Grundlagen beherrscht selbst zusammenreimen, oder?
08/22/2012 13:50 MrSm!th#3
Doch, ist ein Sourcecode Release.
08/22/2012 16:41 tnd0#4
was umgehend gelöscht gehört, bevor wirklich noch jemand FTP-Account-Daten in seine autoit scripts hard-'coded'.
08/26/2012 01:23 MrSm!th#5
Mit nem Readonly/Anonymous Account sollte das eigentlich nicht das Problem sein.