Auch wenn CLientLogin durchaus noch funktioniert, würde ich dir doch empfehelen gleich mit OAuth 2 zu starten.
Beiträge von i2c
-
-
ClientLogin
Spoiler anzeigen
[autoit]#region - Timestamp
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
;2011-11-18 18:25:54
#endregion - Timestamp$sUername = "ich@googlemail.com"
[/autoit] [autoit][/autoit] [autoit]
$sPassword = "meinpasswort"Local Static $oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
[/autoit] [autoit][/autoit] [autoit]
$oHTTP.Open("POST", "https://www.google.com/accounts/ClientLogin", False)
$oHTTP.SetRequestHeader("User-Agent", "autoit")
$oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
$oHTTP.Send("Email=" & _URIEncode($sUername) & _
"&Passwd=" & _URIEncode($sPassword) & _
"&service=youtube" & _
"&source=abcdefg")
ConsoleWrite($oHTTP.ResponseText & @CRLF)Func _URIEncode($sData)
[/autoit]
; Prog@ndy
Local $aData = StringSplit(BinaryToString(StringToBinary($sData, 4), 1), "")
Local $nChar
$sData = ""
For $i = 1 To $aData[0]
$nChar = Asc($aData[$i])
Switch $nChar
Case 45, 46, 48 - 57, 65 To 90, 95, 97 To 122, 126
$sData &= $aData[$i]
Case 32
$sData &= "+"
Case Else
$sData &= "%" & Hex($nChar, 2)
EndSwitch
Next
Return $sData
EndFunc ;==>_URIEncode -
Den Sourcecode findest du auf der Projektseite. Im Paket ist ein Plugin SDK enthalten.
Darf ich anregen, den Sourcecode über GitHub zu veröffentlichen? Würde das fixen von Fehlern deutlich erleichtern.
Dazu müsste man ihn dann aber erstmal für Jedermann ausführbar machen. -
[autoit]
_SQLite_LastInsertRowID
[/autoit] -
Einfach vorher den Inhalt einlesen und mitsammt dem neuen Wert in den Schlüssel zurückschreiben.
[autoit]IniWrite(@ScriptDir & "\eDiary.ini", "Dezember 2011", "Eintrag", IniRead(@ScriptDir & "\eDiary.ini", "Dezember 2011", "Eintrag", "") & "***" & @MDAY & "." & @MON & "., " & @HOUR & ":" & @MIN & ":" & @SEC & "***" & "[CRLF]" & StringReplace($read, @CRLF, '[CRLF]') & "[CRLF][CRLF]")
[/autoit] -
Spoiler anzeigen
[autoit]#region - Timestamp
[/autoit] [autoit][/autoit] [autoit]
;2011-11-14 18:05:21
#endregion - Timestamp#include<GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]GUICreate("Checkboxen", 175, 150)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 10, 40)
$Button4 = GUICtrlCreateButton("Button1", 10, 70)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState()While 1
[/autoit]
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Select
Case $msg = $Checkbox1
If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) = $GUI_CHECKED Then
GUICtrlSetState($Button4, $GUI_ENABLE)
ElseIf BitAND(GUICtrlRead($Checkbox1), $GUI_UNCHECKED) = $GUI_UNCHECKED Then
GUICtrlSetState($Button4, $GUI_DISABLE)
EndIf
Case $msg = $Button4
Exit
EndSelect
WEnd -
Wenn du nicht weisst was ein Array ist, dann solltest du dir das hier mal zu Gemüte führen. - http://www.bug-fix.info/array_tut.htm
kommentierter Code
[autoit]#region - Timestamp
[/autoit] [autoit][/autoit] [autoit]
;2011-11-13 18:14:05
#endregion - Timestamp#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <array.au3>
;ein Array mit 3 Spalten wird erstellt, das alle Informationen zu den Checkboxen aufnimmt
;[Text der Checkbox|Status (CHECKED/UNCHECKED|ControlID]
Dim $aCheckbox[8][3] = [["Körperkrieger", 0, 0], _
["Mentalkrieger", 0, 0], _
["Nahninja", 0, 0], _
["Fernninja", 0, 0], _
["Waffensura", 0, 0], _
["Magiesura", 0, 0], _
["Drachenschami", 0, 0], _
["Heilschami", 0, 0]]
_ArrayDisplay($aCheckbox, "$aCheckbox nach dem Start")
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("WCE v. 1.00", 625, 194, 193, 139)
$Label1 = GUICtrlCreateLabel("Wydliez' Charakter Entscheidungshelfer v. 1.00", 8, 8, 614, 43)
GUICtrlSetFont(-1, 24, 400, 0, "Calibri")
$iLeft = 16
$iTop = 88
;Schleife über die erste Hälfte des Arrays
For $i = 0 To UBound($aCheckbox) / 2 - 1
;in die 3te Spalte des Arrays wird die ControlID gespeichert = GUICtrlCreateCheckbox(Inhalt der 1ten Spalte als Text verwenden, left,top...)
$aCheckbox[$i][2] = GUICtrlCreateCheckbox($aCheckbox[$i][0], $iLeft, $iTop, 97, 17)
;Abstand von oben um 24px erhöhen, damit die nächste Checkbox weiter unten erstellt wird
$iTop += 24
Next
_ArrayDisplay($aCheckbox, "$aCheckbox nach erstellen der linken Checkboxen")
;das selbe nochmal, für die 2te Hälfte des Arrays, nur etwas weiter rechts auf dem GUI
$iLeft += 136
$iTop = 88
For $i = UBound($aCheckbox) / 2 To UBound($aCheckbox) - 1
$aCheckbox[$i][2] = GUICtrlCreateCheckbox($aCheckbox[$i][0], $iLeft, $iTop, 97, 17)
$iTop += 24
Next
_ArrayDisplay($aCheckbox, "$aCheckbox nach erstellen der rechten Checkboxen")
$Group1 = GUICtrlCreateGroup("Zwischen diesen Charaktern wählen", 8, 56, 249, 129)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Entscheide für Mich !", 264, 64, 355, 41, $WS_GROUP)
$Input1 = GUICtrlCreateInput("", 264, 112, 353, 21)
$Button2 = GUICtrlCreateButton("Neu", 264, 160, 75, 25, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Exit", 544, 160, 75, 25, $WS_GROUP)
$Label2 = GUICtrlCreateLabel("WCE v. 1.00 © Wydliez Software 2011", 344, 168, 192, 17)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###While 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
;Schleife über das gesammte Array, um zu prüfen welche Boxen ausgewählt sind
For $i = 0 To UBound($aCheckbox) - 1
;If (die controlID aus Spalte 3 ausgewählt ist) Then setze Spalte 2 auf 1
If BitAND(GUICtrlRead($aCheckbox[$i][2]), $GUI_CHECKED) = $GUI_CHECKED Then $aCheckbox[$i][1] = 1
Next
_ArrayDisplay($aCheckbox, "$aCheckbox nach Prüfung des Satus")
Do
;erstelle Zufallszahl zwischen 0 und der Länge des Arrrays
$rand = Random(0, UBound($aCheckbox) - 1, 1)
;bis die Zufallszahl ein Arrayindex ist, das vorher in SPalte 2 als "ausgewählt" gekennzeichnet wurde
MsgBox(0, "", "Gewählte Zufallszahl: " & $rand & @CRLF & "Status des entsprechenden Controls: " & $aCheckbox[$rand][1])
Until $aCheckbox[$rand][1] = 1
MsgBox(0, 0, $aCheckbox[$rand][0])
Case $Button2
;Schleife über das esammte Array, um alle checkboxen auf GUI_UNCHECKED zu setzen
For $i = 0 To UBound($aCheckbox) - 1
GUICtrlSetState($aCheckbox[$i][2], $GUI_UNCHECKED)
Next
_ArrayDisplay($aCheckbox, "$aCheckbox nach zurücksetzen der Auswahl")
Case $Button3
Exit
EndSwitch
WEnd -
Geiles Script, aber ich glaube Arrays und BitAND und solche Sachen sind noch ein wenig zu hoch für ihn
Schwimmen lernt man nur im tiefen Wasser.Wenn mna versucht den Code zu verstehen und unbekannte Befehle in der Hilfe sucht, dann wird das schon.
Es gibt keinen Grund, sich als Anfänger vor Arrays zu fürchten. Das bewahrt einem davor, sich solche Endlos-Switchs und Ifs anzugewöhnen. -
Ich seh da keinen Bot. lediglich ein Programm, das aus einer Liste zufällig eine Charakterklasse auswählt.
Eine gute Gelegenheit, sich etwas mit Arrays zu beschäftigen.
Spoiler anzeigen
[autoit]#region - Timestamp
[/autoit] [autoit][/autoit] [autoit]
;2011-11-13 11:27:04
#endregion - Timestamp#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Local $kk = 0, $mk = 0, $nn = 0, $fn = 0, $ws = 0, $ms = 0, $ds = 0, $hs = 0
Dim $i
Dim $k
Dim $aCheckbox[8][3] = [["Körperkrieger", 0, 0], _
["Mentalkrieger", 0, 0], _
["Nahninja", 0, 0], _
["Fernninja", 0, 0], _
["Waffensura", 0, 0], _
["Magiesura", 0, 0], _
["Drachenschami", 0, 0], _
["Heilschami", 0, 0]]
Global $iLeft = 16, $iTop = 88
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("WCE v. 1.00", 625, 194, 193, 139)
$Label1 = GUICtrlCreateLabel("Wydliez' Charakter Entscheidungshelfer v. 1.00", 8, 8, 614, 43)
GUICtrlSetFont(-1, 24, 400, 0, "Calibri")
For $i = 0 To UBound($aCheckbox) / 2 - 1
$aCheckbox[$i][2] = GUICtrlCreateCheckbox($aCheckbox[$i][0], $iLeft, $iTop, 97, 17)
$iTop += 24
Next
$iLeft += 136
$iTop = 88
For $i = UBound($aCheckbox) / 2 To UBound($aCheckbox) - 1
$aCheckbox[$i][2] = GUICtrlCreateCheckbox($aCheckbox[$i][0], $iLeft, $iTop, 97, 17)
$iTop += 24
Next
$Group1 = GUICtrlCreateGroup("Zwischen diesen Charaktern wählen", 8, 56, 249, 129)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Entscheide für Mich !", 264, 64, 355, 41, $WS_GROUP)
$Input1 = GUICtrlCreateInput("", 264, 112, 353, 21)
$Button2 = GUICtrlCreateButton("Neu", 264, 160, 75, 25, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Exit", 544, 160, 75, 25, $WS_GROUP)
$Label2 = GUICtrlCreateLabel("WCE v. 1.00 © Wydliez Software 2011", 344, 168, 192, 17)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###While 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
For $i = 0 To UBound($aCheckbox) - 1
If BitAND(GUICtrlRead($aCheckbox[$i][2]), $GUI_CHECKED) = $GUI_CHECKED Then $aCheckbox[$i][1] = 1
Next
Do
$rand = Random(0, UBound($aCheckbox) - 1, 1)
Until $aCheckbox[$rand][1] = 1
MsgBox(0, 0, $aCheckbox[$rand][0])
Case $Button2
For $i = 0 To UBound($aCheckbox) - 1
GUICtrlSetState($aCheckbox[$i][2], $GUI_UNCHECKED)
Next
Case $Button3
Exit
EndSwitch
WEnd -
[Blockierte Grafik: http://1.1.1.5/bmi/forumrfunterfranken.bike4um.de/images/smilies/party2_98745.gif]
autoBertAlles Gute zum *hust*.. ten Jährestag!
Viel Glück im neuen Lebensjahr und immer eine handbreit Sprit im Tank.[Blockierte Grafik: http://1.1.1.8/bmi/forum.jenseitsansichten.de/images/smilies/Party_Smilie_95.gif]
-
Nunja, haben oder nicht haben. Wenn man bedenkt, was im Universum alles in einer zehntel Millisekunde passiert ...

Ich wollte mich auch eher dagegen erwehren, das die Zeile "unnötig" ist. Denn das ist sie ja, auch wenn der Vorteil minimal ist, nicht.
-
Zeile 24 ist keineswegs unnötig. Je grösser die Textdatei, desto sinnvoller wird sie sogar. Bei grossen Dateien geht's mit handles deutlich schneller als mit Dateinamen.
Selbst wenn man schreibfaul ist, sollte man den potenziell schnelleren Weg vorziehen, auch wenn man dadurch 2 Zeilen zusätzlichen Code erzeugt.
-
@ScriptDir liefert keinen abschliessenden \. Pfad berichtigen in Zeile 24.
edit: FileClose() nicht vergessen.
-
Zitat
Wtf?
Kanst du nicht mal ne halbe Stunde warten
Offensichtlich hat er das Problem selbst gelöst. Kein Grund, hier jetzt 'ne Welle zu schlagen.@Archer17, wenn das Thema erledigt ist, bearbeite bitte deinen ersten Beitrag und setz den Präfif von offen auf gelöst.
-
[Blockierte Grafik: http://rlv.zcache.com/alien_party_postcard-p239964648644190052z8iat_400.jpg]
Happy Birthday X! -
[autoit]
_GUICtrlEdit_AppendText()
[/autoit] -
HttpSetUserAgent() ?
edit: Blödsinn!
-
Sehr schön hergeleitet. Gibt ein Bienchen und eine lobende Erwähnung im Klassenbuch.

-
[autoit]
#include <String.au3>
[/autoit][autoit][/autoit][autoit]$Test = "12234567899,876"
[/autoit]
$Dec = StringRegExp($Test, "\,\d*", 1)
$Test = StringRegExpReplace($Test, "\,\d*", "")
$Test = StringRegExpReplace(_StringReverse($Test), "\d{3}", "\0.")
If IsArray($Dec) Then
$Result = _StringReverse($Test) & $Dec[0]
Else
$Result = _StringReverse($Test)
EndIf
If StringLeft($Result, 1) = "." Then $Result = StringTrimLeft($Result, 1)
ConsoleWrite($Result & @LF)
Nur ein Beispiel. -
http://www.bug-fix.info/array_tut.htm
Zum Thema FOR Schleife hilft die Hilfe (toller Satz).Beispiel kann ich grad nicht machen, bin am Arbeiten.
Es heist übrigens nicht Auto IT. Dann kommt bald wieder einer und registriert sich hier, weil er denkt es ginge um Informationtechnik in der Automobilwelt.