Wo liegt der Sinn, eine bestimmte Taste immer wieder an einen Browser zu schicken, wenn es sich nicht um einen Browsergame-Bot handelt?
Beiträge von Oscar
-
-
Einen Tastendruck muss man ein bestimmtes Fenster/GUI schicken. Wenn Du uns nicht mitteilen willst, an welches Fenster müssen wir davon ausgehen, dass Du eh nur einen Bot coden willst und in dem Fall wird der Thread geschlossen (siehe Forenregeln).
Du hast noch eine Chance Deine Frage entsprechend zu stellen... -
Na gut, Netzwerkpfad ist ein Argument, aber dann gibt's ja noch StringRegExpReplace:
[autoit]
[/autoit]
Func addSlash($dir)
Return StringRegExpReplace($dir & '\', '(\\)\\\z', '$1')
EndFunc ;==>addSlashDamit sind auch Netzwerkpfade kein Problem.
-
Habe die Includes bei meinem Script mal angepasst, sodass es auch mit der aktuellen AutoIt-Version wieder funktioniert.
-
So beim ersten überfliegen, ist mir die Funktion "addSlash()" aufgefallen. Das folgende sollte reichen:
[autoit]
[/autoit]
Func addSlash($dir)
Return StringReplace($dir & '\', '\\', '\')
EndFunc ;==>addSlash -
eukalyptus: 20 Flaschen pro Fach des Kühlschranks?
Wow! Ihr in Österreich müßt ja verdammt große Kühlschränke haben...
Kann ich meinen Kühlschrank vielleicht mit einem "ReDim $Bier[5][20]" auf fünf 20-Flaschen-Fächer vergrößern? Aber wo gebe ich das ein?

-
Die Graphic-Funktionen von AutoIt sind da auch fehlerhaft. Das Problem hatte ich auch schonmal, als ich mein Programm "Digitaluhr" mit den Graphic-Funktionen erstellt hatte. Die Speicherauslastung sowie die Prozessorlast nahmen stetig zu und die Anzeige fing immer mehr an zu flackern.
-
Eine Inidatei zum speichern einer "Datenbank" zu verwenden, halte ich für eine schlechte Vorgehensweise.
Stattdessen würde ich die eingegebenen Daten lieber in einem Array ablegen und dann mit _GUICtrlListView_AddArray() im Listview anzeigen lassen. Mit _FileWriteFromArray() kannst Du das Array in eine Datei (Endung kannst Du selbst bestimmen) speichern. Zum einlesen gibt es dann _FileReadToArray().
Falls Du mit der Umsetzung Probleme hast, kann Du ja nochmal nachfragen. -
Die beiden Funktionen "getRandomColor()" und "getHex()" kann man weglassen und dann in der Funktion "_paintsquares()" gleich das hier einsetzen:
[autoit]
[/autoit]
$color = '0x' & StringMid(Hex(Random(0, 16777215, 1)), 3)Das Problem ist bloß, dass mit den GUICtrlSetGraphic-Routinen von AutoIt irgendwas nicht so richtig funktioniert, denn nach kurzer Zeit kommt bei Deinem Script das hier raus:
statistics_1.0_Beta_3.zip -
Was progandy Dir sagen will, ist, dass Pixel für sich alleine keine Größeneinheit darstellt. Es gehört schon auch ein DPI-Wert dazu (hab grad ein Déjà-vu
).
Ein Bild mit 800x600 Pixel kann z.B. 8cmx6cm oder auch 80cmx60cm groß sein. -
Wenn Du Dein Script auch kostenlos zur Verfügung stellst, dann habe ich nichts dagegen.

-
Ähm...wir duzen uns hier.

Ich habe mal meine Funktion etwas erweitert, sodass es Deine Anforderungen erfüllt:
[autoit]
[/autoit][autoit][/autoit][autoit]
$sName = 'Georg Schmidt'
MsgBox(0, 0, _CreateUsername($sName))$sName = 'Bärbel Köhler-R0ßberg'
[/autoit][autoit][/autoit][autoit]
MsgBox(0, 0, _CreateUsername($sName))$sName = 'Walther von-der-Vogelweide'
[/autoit][autoit][/autoit][autoit]
MsgBox(0, 0, _CreateUsername($sName))$sName = 'Günther von der Dotterblume'
[/autoit][autoit][/autoit][autoit]
MsgBox(0, 0, _CreateUsername($sName))Func _CreateUsername($sUsername)
[/autoit]
Local $aReplace[5][2] = [['ä', 'ae'],['ö', 'oe'],['ü', 'ue'],['ß', 'ss'],['0', 'o']]
For $i = 0 To UBound($aReplace, 1) - 1
$sUsername = StringReplace($sUsername, $aReplace[$i][0], $aReplace[$i][1], 0, 0)
Next
$sUsername = StringRegExpReplace(StringLower($sUsername), '(.)(.+ .+\-|.+ )', '$1' & '.')
Return $sUsername
EndFunc ;==>_CreateUsername -
Wenn ich mir dieses Konstrukt so anschaue, dann gibt es bestimmt eine andere Lösung, nur dazu bräuchten wir schon ein paar mehr Infos.
Was möchtest Du denn damit bewirken und wie sieht die Ausgangslage aus? -
8 Bit = 1 Byte
oder
64 kBit = 8 kByte -
Ich meinte weniger den Namen (kennst Du wirklich eine, die so heißt?), sondern eher die Array-Variante.

-
Und mein Beispiel könnte eher von Dir stammen, Bugfix:
[autoit]
[/autoit][autoit][/autoit][autoit]
$sName = 'Bärbel Köhler-R0ßberg'
MsgBox(0, 0, _CreateUsername($sName))Func _CreateUsername($sUsername)
[/autoit]
Local $aReplace[5][2] = [['ä', 'ae'],['ö', 'oe'],['ü', 'ue'],['ß', 'ss'],['0', 'o']]
For $i = 0 To UBound($aReplace, 1) - 1
$sUsername = StringReplace($sUsername, $aReplace[$i][0], $aReplace[$i][1], 0, 0)
Next
$sUsername = StringRegExpReplace(StringLower($sUsername), '(.)(.+ )', '$1' & '.')
Return StringRegExpReplace($sUsername, '[^a-z\-._]', '')
EndFunc ;==>_CreateUsername -
Nein, bitte nicht Funktionen als GoTo-Ersatz missbrauchen!
Das ist nicht nur ein unsauberer Programmierstil, sondern führt auch schnell zum fehlerhaften beenden Deines Scripts.Stattdessen verwendet man Schleifen:
- While...WEnd
- Do...Until
- For...Next
Je nachdem, ob und wie oft die Schleife durchlaufen werden soll.Eine Endlos-Schleife läßt sich z.B. mit
[autoit]
[/autoit]
While True
; Jede Menge Befehle
WEnd
erzeugen. So kannst Du auch Deine Befehle einfassen. -
Hä? Die gibt's doch bei AutoIt dazu (liegt im Include-Ordner).

-
1 Block = 2^16 / 8 / 1024 = 8 kByte
Anzahl der Blöcke = 256 MBit / 8 * 1024 = 32768 kByte / 8 kByte = 4096 Blöcke
Adreßbits/Block = 1+2+4+8+16+32+64+128+256+512+1024+2048+4096 = 8191 = 13 Bits (0...8191)
1,5 MBit = 1,5 * 1024 / 8 = 192 kByte/s
32768 kByte / 192 = 170, 667 sBei den Adreßbits/Block weiß ich jetzt nicht, ob man das nicht auch noch anders ausrechnen kann.

-
Ich handhabe das eigentlich so, dass ich die Funktion erstelle, wenn ich sie brauche.
Jetzt so eine Liste zu erstellen, welcher Wert wann wo angezeigt wird, finde ich zu mühsam.