In diesem Fall wäre Switch definitiv die elegantere Lösung.
Außerdem solltest du Return benutzen um Werte zu übertragen und keine globalen Variablen ändern, oder zumindest nur in seltenen Fällen. (Das sollte bei dir eigentlich sowieso nicht funktionieren, da $satz außerhalb der Funktionen als lokal deklariert wurde, diese somit eigentlich keinen Zugriff darauf haben sollten.)
Beiträge von James
-
-
Da du die Skripte ja vom Hauptskript aus startest (wahrscheinlich mit Run), kannst du ja mit Hilfe der zurückgegebenen PID und ProcessExists überprüfen, ob das Skript noch läuft. Das kannst du dir dann irgendwie in deiner GUI anzeigen lassen (zum Beispiel durch Ändern der Farbe der jeweiligen Buttons).
-
Ich hätte das mit StringReplace gelöst:
[autoit]Func _StrReplaceIterated($_s, $_sPatt, $_sReplFunc)
[/autoit]
Local $aMatch, $i, $sCall
$aMatch = StringRegExp($_s, $_sPatt, 3)
If @error Then Return SetError(1, @error, $_s)
For $i = 0 To UBound($aMatch)-1
$sCall = Call($_sReplFunc, $aMatch[$i])
If @error Then Return SetError(2, @error, $_s)
$_s = StringReplace($_s, $aMatch[$i], $sCall, 1, 1)
Next
SetExtended(UBound($aMatch))
Return $_s
EndFunc -
Mit n = 1 schummelst du dir aber einen dazu .
Schande über mich. Aber bei Schwankungen im dreistelligen Bereich sollte das nicht allzu viel ausmachen.
Gibt es im engl. Forum nicht einen ASM Code für diesen Hash?
Meinst du diesen Thread?
Wenn die Hashberechnung nur Integer einbezieht, wäre das doch mal eine Aufgabe für Perseus
Laut Wikipedia ist dem so. Eigentlich eine gute Idee.
-
Hi,
cool, immer her damit!
Woher holst du dir deine Blöcke ab bzw wie stimmst du dich mit den anderen Nodes ab?
[autoit]
Scheint, als hätte ich mich etwas zu ungenau ausgedrückt:
Das Testskript ist lediglich dazu da die Geschwindigkeit von SHA256 in AutoIt zu testen.
Einen Bitcoin Client / Miner habe ich leider noch nicht.#include <Crypt.au3>
[/autoit][autoit][/autoit][autoit]Global Const $CALG_SHA_256 = 0x0000800C ; schön, dass dieser Wert nicht in der UDF steht
[/autoit][autoit][/autoit][autoit]_Crypt_Startup()
[/autoit][autoit][/autoit][autoit]Local $test = "AutoIt", $n = 0, $timer
[/autoit][autoit][/autoit][autoit]$timer = TimerInit()
[/autoit][autoit][/autoit][autoit]
Do
$test = _Crypt_HashData($test, $CALG_SHA_256)
$n += 1
Until (TimerDiff($timer) >= 1000)
ConsoleWrite($n & @CRLF)_Crypt_Shutdown()
[/autoit]Ggf. würde sich ein sogar ein "AutoIt-Pool" lohnen, die geminten Bitcoins könnte man an AutoIt.de spenden.
Mitmachen könnte jeder, der sich den Client auf den Rechner lädt und "nebenbei" bissl minen möchte. Und nicht zuletzt ein schönes Community-Projekt, da sich auch jeder an der Programmierung beteiligen könnte!Sehr gute Idee.
-
-
Bitcoin ist eine neuartige virtuelle Währung, die dezentral durch ein Computernetz geschöpft und verwaltet wird und für internationale elektronische Überweisungen geeignet ist. Das Bitcoin-Netzwerk wird aus den Teilnehmern gebildet, die einen Bitcoin-Client ausführen. Der Besitz von Geldeinheiten kann durch den Besitz von kryptographischen Schlüsseln nachgewiesen werden. Jede Transaktion von Geldeinheiten zwischen Teilnehmern des Netzwerks wird in einer öffentlichen, vom gesamten Netzwerk unterstützten Datenbank aufgezeichnet und mit digitalen Signaturen versehen.
Das "Finden" von Bitcoins funktioniert nach dem Proof-of-work System, d.h., dass es durch aufwendige Berechnungen zwar schwer ist einen Block zu finden, aber leicht, dessen Gültigkeit nachzuweisen. Da diese Berechnungen natürlich Zeit in Anspruch nehmen, entstehen dabei Stromkosten. Anhand dieser muss man entscheiden, ob sich der Aufwand überhaupt lohnt, d.h. ob man Gewinn erzielen könnte.
Ein solcher Block ist eigentlich einfach nur eine Möglichkeit um gültige Transaktionen zu speichern und diese Information durch das Netzwerk zu bewegen.
Den Wert, welcher momentan bei ca. 90€ pro Bitcoin liegt, habe ich aus dem Wechselkurs abgelesen, zum Beispiel auf bitcoin.de.
Wie viele Bitcoins pro Block etwa erstellt werden, findet man unter anderem hier.Edit: Natürlich gibt es "Hacker" und Menschen, die mit Bitcoins Waffen und ähnliches kaufen, aber das hat doch nicht direkt etwas mit Bitcoin zu tun. Das war ja schließlich (wahrscheinlich) nicht der Grundgedanke hinter diesem System.
-
Die Frage lautet eher, ob sich Bitcoin-Mining in Deutschland überhaupt lohnt, da die Berechnung aufgrund der Energiekosten höher ist als das Ergebnis!
Naja, bei einem momentanen Wert von ca. 90€ pro Bitcoin und 25 Bitcoins pro Block könnte sich das durchaus lohnen.
Was uns aber nicht abhalten sollte, einen Miner in AutoIt zu schreiben^^
Ganz genau.
Bei einem kleinen Testskript (ohne OpenCL; nur AutoIt + Crypt) komme ich auf ca. 3200 Hashes pro Sekunde. Kombiniert mit der aktuellen Wahrscheinlichkeit würde es also nur ca. 475000 Jahre dauern, bis ich damit einen Block gelöst hätte.
-
Die Syntaxhervorhebung und die Fehlermeldung sagen dir eigentlich schon, an welcher Stelle bei dir das Problem mit den Anführungszeichen besteht.
So sollte es gehen:
[autoit]"SELECT * FROM Win32_GroupUser WHERE GroupComponent = ""Win32_Group.Domain='" & PCNAME & "',Name='Administrators'"""
[/autoit] -
-
Du kannst die GUI als Parent von der MsgBox angeben, das sollte auch den gewünschten Effekt erzielen.
-
_fileprint(@scriptdir &"\dasdokument.rtf",@sw_HIDE)
Das Thema ist fast vier Jahre alt und deine "Lösung" druckt nur Textdateien, keine RTFs. -
Zu dem Darstellungsproblem: Verwende beim Einfügen des Skriptes den "Quellcode"-Tab, nicht den "Editor".
Du hast in der Funktion $Kampf=Random(4,4) geschrieben, dass entspricht einer 100% Chance, das ein Kampf beginnt.
-
Die Frage ist nicht was man mit AutoIt machen kann, sondern wie lange das dauert bzw. was man selbst können muss.
Möglich ist grundsätzlich erstmal alles, was auch mit anderen Skript- bzw. Programmiersprachen möglich ist.Und bitte: Wärst du so freundlich hin und wieder Satzzeichen zu benutzen?
-
$WS_POPUP als Style und natürlich die Fensterposition und -größe anpassen.
Siehe auch:
[autoit]GUICreate
[/autoit]
@DesktopWidth
@DesktopHeightSteht eigentlich alles in der Hilfe.
-
Aufgrund der Tatsache dass sich dies in der Konsole abspielt, würde es auch gut tun wenn ich den Puffer irgendwie auslesen könnte?
Das sollte mit ConsoleRead in einer Schleife funktionieren. -
Bei anderen Themen hat ja auch keiner gemekert, z.B. hier.
Außerdem gibt es ja genug andere Wege, die nicht mit _IsPressed() in einer For-Schleife funktionieren.
(Für einen Keylogger wäre das sowieso zu langsam, besonders wenn man schnell tippen kann.)@Make Schon mal ohne String() versucht?
-
Sind im Hauptverzeichnis des Servers nur Ordner gespeichert?
In diesem Fall liegt das Problem in bei "*.*", da in den Ordnernamen wahrscheinlich keine Punkte vorkommen. Versuch's doch mal mit "*". -
Oder du multiplizierst deinen Farbwert (von 0 bis 255) einfach mit 65793 (0xFFFFFF / 0xFF),
das sollte eigentlich reichen (wenn ich nicht völlig falsch liege). -
Ich versuch da mal was drüber rauszufinden, wie man das am besten bearbeiten kann.
Das herauszufinden ist ja nicht sonderlich schwer. Hier findet man das Dateiformat, hier den Aufbau der servers.dat. (Das hat Kijan aber auch schon so ähnlich gepostet.)Gibt es da schon eine UDF oder Leute die damit schon mal was gemacht haben?
Laut Google gibt es weder hier bei uns noch im englischen Forum eine UDF (oder überhaupt irgendeinen Post) zu diesem Thema, d.h. du wirst wohl selbst eine schreiben müssen... Wenigstens ist die servers.dat nicht komprimiert, das macht es einfacher.