Das geht nicht, da Autoit nur eine Scriptsprache ist! Nur wenn ein Autoit-Script durch den passenden Autoit-Interpreter gejagt wird, ist es lauffähig. Im Gegensatz dazu sind DLL's meines Wissens nach Funktionssammlungen von ausführbarem Programmcode.
Beiträge von BinDannMalWeg
-
-
Entweder mehrere Instanzen starten. (Vielleicht mit IP als Parameter... )
Oder mein Script so umschreiben, dass die Main-Schleife ein Array abarbeitet, in dem dann immer IP und Status abgespeichert werden... -
Ja aber dazu müsste der Thread-Ersteller hier auch mal wieder aufkreuzen. Dann werden wir ja sehen ob mein Vorschlag verwendbar ist...
-
Nein dann kannst du dein Problem ja einfach hier posten... Dann können Andere, die ähnliche Probleme haben nachvollziehen wie du dein Problem gelöst hast...
-
Schau dir mal die UDP-FUnktionen in der Hilfe an. Für den Anfang sollte es ja reichen, mal zu testen ob überhaupt eine Verbindung zustande kommt...
-
Und du bist dir auch sicher, dass besagter Server auch über TCP läuft? Einige Games verwenden zB. UDP
-
Hmm das widerspricht sich aber?! Naja das kommt ganz auf den Server an... Was genau willst du denn machen?
-
Nein. Also so wie ich das sehe Läuft auf dem Root auf dem Port den du verwendest gar keine Server-Anwendung... Bist du dir sicher, dass da wirklich ein Server läuft?
-
Solange es nicht dein eigener Server ist kannst du da gar nichts machen, denn der Server existiert gar nicht! Deshalb auch die Fehlermeldung... Ist vielleicht der verwendete Port falsch?
-
Ja, dass du nicht vor hast den Server zu flooden ist mir klar! Nur das Script das du gepostet hast floodet den Server! Du baust eine Verbindung auf und wenn dies erfolgreich war hängst du in einer Endlos-Schleife, die ohne ein einziges Sleep oä. den Server mit Paketen floodet... Ja was soll dieser Fehlercode denn bedeuten? Sind deine Pakete vielleicht nicht richtig aufgebaut?
-
So wie dein Script jetzt aussieht ist es ja klar, dass der Server deine Anfragen verwirft, weil du ihn damit bombadierst wie bei einem DDoS-Angriff! An der Stelle wo deine Inputbox hin soll, muss natürlich auch eine Inputbox sein. Außerdem verstehe ich nicht ganz woher du diesen Fehlercode '10061' hast, denn dein Script empfängt ja überhaupt nichts vom Server. Außerdem wäre es noch überaus hilfreich wenn du uns auch sagen würdest über was für eine Art Server wir hier überhaupt reden...
-
Wirklich wieder mal ein tolles Script...
Nur eines habe ich zu bemängeln: Die Funktion _GetDrives() lässt sich mit einer For-Schleife um ca. 95% kürzen. -
Das einzige was mir da einfällt wäre folgendes: Du scriptest dir einen TCP-basierten Server der dann auf deinem PC läuft und dann wird noch ein passender Client erstellt, der einfach nur 2x das Passwort abfragt und wenn es übereinstimmt per TCP eine Verbindung zum Server aufnimmt das Passwort überträgt und sich dann selbst auf dem alten PC löscht... Aber die frage ist hier: wie kommt der Client auf den Remote-PC? habt ihr eine Softwareverteilung oä. installiert?
-
-
-
Kleiner Tipp: Du solltest dich mal mit Arrays befassen...
[autoit]#include <File.au3>
[/autoit][autoit][/autoit][autoit]
Dim $List, $File = @ScriptDir&'\processlist.txt'_FileReadToArray($File,$List)
[/autoit][autoit][/autoit][autoit]
If Not IsArray($List) Then ExitWhile 1
[/autoit]
For $i = 1 To $List[0]
If ProcessExists($List[$i]) Then
ProcessClose($List[$i])
TrayTip(" Geblockt",$List[$i]&" wurde blockiert!",5)
EndIf
Next
Sleep(500)
WEnd -
Erstens wäre es praktisch wenn du das veränderte Script posten würdest, da ich meine Glaskugel momentan nicht zur Hand habe. Zweitens geht es bei dem Problem jetzt also nur noch um die Ausgabe?! Du hast sehr sehr sehr wahrscheinlich einfach nur $i in deinen Traytipp eingebaut stimmts?! Du musst aber schon den Inhalt des Arrays anzeigen...
-
-
-
Hey wie wäre es so:
Spoiler anzeigen
[autoit]#include <File.au3>
[/autoit] [autoit][/autoit] [autoit]
Dim $List, $File = @ScriptDir&'\processlist.txt'_FileReadToArray($File,$List)
[/autoit] [autoit][/autoit] [autoit]
If Not IsArray($List) Then ExitWhile 1
[/autoit]
For $i = 1 To $List[0]
If ProcessExists($List[$i]) Then ProcessClose($List[$i])
Next
WEnd