1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Candyland

Beiträge von Candyland

  • Autoit3 Internal Process Piping | Pipe

    • Candyland
    • 2. Juli 2017 um 20:04

    Heyho liebe Autoit Gemeinde,
    ich versuche herauszufinden wie es möglich ist zwischen 2 Autoit Prozessen eine Kommunikations pipe zu erstellen. Da mir der weg über die festplatte nicht genügt. 8|

    Da ich das ganze zum ersten mal behandle, kenne ich mich dementsprechend überhaupt nicht aus. Ein wenig habe ich dennoch experimentiert.
    Ich versuche damit den datei scanner zu perfektionieren. Dieser besteht aus einer .exe(controler) welche sich 4 weitere male ausführt welche dann als die Worker dienen.
    Derweil habe ich den Controller die Befehle über die Festplatte weitergeben lassen & auch so die rückgaben ausgelesen. Heute erfuhr ich vom sogenantem Piping welches einem erlaubt eine verbindung zwischen prozessen aufzubauen & diese bidirektional zunutzen. Dadurch wäre die kommunikation flüssiger. :thumbup:

    Das script werde ich nicht posten, da dessen derzeitiger stand nicht benötigt wird um herrauszufinden wie das piping funktioniert. :saint:

    Mir fehlt das grundlegende verständnis um zu verstehen wie ich diese pipes kreiere & dann auch nutze. ||

    Die von der MSDN bereitgestellten beispiele halfen mir auch nicht. Es mir etwas zu unverständlich.
    Ein kleines beispiel zwischen 2 programmen würde mir reichen um damit dann zu experimentieren. ;)
    Da mein kleines test script errors auswirft die ich nicht verstehe, ohne ein verständnis dafür zu haben.

    AutoIt
    #include <NamedPipes.au3>
    
    
    Local $hReadPipe, $hWritePipe
    
    
    
    
    ;~ _NamedPipes_CreatePipe($hReadPipe, $hWritePipe, 0,
    $1 = _NamedPipes_CreateNamedPipe("pipename", 2)
    
    
    $2 = _NamedPipes_ConnectNamedPipe($1)
    
    
    
    
    ConsoleWrite($1 & @CRLF)
    ConsoleWrite($2 & @CRLF)
    
    
    
    
    While 1
    	Sleep(250)
    
    
    WEnd
    Alles anzeigen
  • Kleines Desktop-Spiel (ChipHunter)

    • Candyland
    • 3. Juni 2017 um 17:36

    Yeah 2 Seiten geladen & einen neuen Favorit später habe ich 13078 Punkte erreicht. Niice

  • Stottern unter Windows 10

    • Candyland
    • 3. Juni 2017 um 17:32

    Schau dir mal die Kernel Zeiten des Windows an. Ich hörte schon von Rootkits die nicht ordentlicher natur programmiert wurden & so das Windows mit sich in den ABgrund rissen.
    Task Manager ~> Leistung ~> Ansicht ~> Kernel Zeiten Anzeigen (Windows 7 Anleitung) Aber ich denke bei windows 10 ist das nicht viel anders.

  • AutoIt und Chip-Installer... :-)

    • Candyland
    • 3. Juni 2017 um 17:11
    Zitat von alpines

    "Ja mach mal, du kannst das ja". Dann tun sie so als ob sie zugucken würden und rufen dich trotzdem beim nächsten Mal.

    Ja naja zugucken bringt echt selten etwas. Was ich gut finde sind Leute die etwas haben wollen, aber nicht wissen wie sie's hinbekommen. Da hat man dann wenigstens einen Ansatz den ich gerne nutze um tiefer in die Materie zu dringen. Scheinbar merken die leute dann auch das die dinge nicht wirklich schwierig sind. Irgendwie haben die leute immer 'schiß' was kaputt zu machen, sie wollen sich nicht wirklich ausprobieren, geschweige denn haben überhaupt die Zeit dafür.

    Wobei mir gerade auch einfällt das besonders für Ältere Menschen ein Windows... naja wie soll ich das sagen.. unnütz ist. Windows ist so überhaupt nicht selbst erklärend. Betriebssysteme wie Linux, Ubuntu.. etc. sind mit ihrem Motto der einfachheit viel interessanter für Ältere Menschen. Ich hab das hierher

  • AutoIt und Chip-Installer... :-)

    • Candyland
    • 1. Juni 2017 um 23:06

    Gut es ist klar das es nur darum geht sich zu finanzieren ohne den schein, etwas gutes zu sein, zu verlieren.
    Doch viele dieser menschen haben sowas von keine lust sich mit irgendwas zu befassen. jedes mal wenn ich zu einem Problem gerufen werde, versuche ich den leuten zu zeigen wie sie es selbst lösen & sogar verhindern können. Doch das verbraucht jedes mal eine menge kraft, da ich mich in die personen hineinversetzen muss, um es ihnen auch verständlich zu erklären. Und dann kommt nur sowas wie.. 'ehy Olli mach mal...' ich dann: 'Du weißt doch mittlerweile wies geht, immerhin ist dir das schon 3x passiert' er dann: 'ne man kein bock & weil die anleitungen auf englisch sind, raff ichs nicht.' <~ Solche leute sollten mal ihren pc total hinranzen, damit sie sich endlich mal selbst dazu aufrappeln die dinge dahinter zu verstehen. Man muss ja kein experte werden. Ein wenig pc kenntnis kann schon mächtig helfen.

    Das erinnert mich an einen Fall bei einem FSJ, welches ich absolvierte. Eine ältere frau bat mich mit ihr einen Computer umzustellen, damit die fläche darunter mal gereinigt werden kann (reinraumtisch), Ich erzählte ihr das der pc zuerst einmal abgeschlossen werden sollte, da wir es sonst riskieren etwas fallen zu lassen sollte sich ein Kabel verknoten & oder hängen bleiben. Aber diese Frau bestand so dermaßen darauf das so zulassen wie es ist. Daran erkennt man echt wie Menschen ihre unkenntnis auf andere Projezieren.. ganz nach dem Motto "was ich nicht kann, kannst auch du nicht". Viele menschen sind dermaßen festgefahren in ihrem täglichem Rhytmus, das sie alles das was sie nicht verstehen einfach 'weg' ignorieren.

  • AutoIt und Chip-Installer... :-)

    • Candyland
    • 1. Juni 2017 um 22:12
    Zitat von olfibits

    wie Chip so einen krassen Malware-Schleuder-Downloader mit AUTOIT konstruieren... OK

    Hat mich echt zum lachen gebracht.

    tatsächlich ist chip gut um diesen Webinstaller programmen aus dem weg zu gehen, wie fürs Framework z.B.
    Außerdem wie @Xorianator schon schreibt, kann man alles 'Manuell' herunterladen.
    UUUND ich finde es okay das sie den unerfahrenen leuten den Müll aufdrängen, denn ich bin ein Nutzer ihres Forums. Wirklich geld können sie, wegen adblock, nicht mehr einnehmen. Ist mir lieber als der Adblock-abschalt zwang

  • Script läuft unter Win10 aber nicht unter Win10-LTSB

    • Candyland
    • 27. Mai 2017 um 22:01

    @amun.rb gehst du bitte auf misterspeed's bitte ein? Könnte gut sein das jemand tatsächlich das problem einmal aufgreift und sich hier eine Lösung erhofft. Danke!

  • GDI+ Lightning / Blitz Effekt

    • Candyland
    • 18. Mai 2017 um 10:32

    Richtig Hübsch, ich kann mir das auch gut als ein Bildschirmschoner vorstellen

  • Teilstring einer Variable ab letztem Zeichen

    • Candyland
    • 17. Mai 2017 um 15:33

    Da gibt es unmengen an möglichkeiten.

    AutoIt
    Local $sString, $Domain, $DotWhat
    $sString = "sahnigedomain.kloete.security"
    
    
    $Domain = StringLeft($sString, StringInStr($sString, '.', 0) - 1)
    $DotWhat = StringTrimLeft($sString, StringInStr($sString, '.', 0, -1))
    
    
    ConsoleWrite($Domain & @CRLF & $DotWhat & @CRLF)
  • virusshare.com Scanner

    • Candyland
    • 4. Mai 2017 um 19:00

    @AspirinJunkie & @Oscar. Mir fehlt die Zeit um auf jede Linie einzugehen deshalb kurz & knackig. Alle tipps & vorschläge werden dem Script mitbeigefügt.

    So kann ich mich endlich mal besser mit Objekten beschäftigen, jetzt da wo sie benötigt werden :)

    _ArrayDelete() war doch recht fügig & fix, allerdings sollte in jedem bereich volle Performence beachtet werden, deshalb werden die 6 ersten zeilen gesucht & mit einem zufälligen Wert ersetzt(natürlich nicht auf hash länge, um keine falsch meldungen zu projezieren). Dann mal danke ich schließe das Thema, da mir das so denke ich ausreichend helfen wird :)

  • virusshare.com Scanner

    • Candyland
    • 4. Mai 2017 um 03:13

    Und schon bin ich wieder hier! :saint:

    Hätte ich nicht von Oscar, in der chatbox, gelesen das er es geschafft hat 28.508.160 Elemente in 8 Minuten in das Scripting.Dictionary Object zu pressen. Würde ich euch hier wohl nicht belästigen.
    Ich werde direkt das Ganze script posten. Bitte verzeiht mir die Unordnung mit den Variablen, das habe ich wohl noch nicht ganz so drauf. Allerdings denke ich das es trotzdem lesbar ist, ich markierte auch förderlich die abschnitte.

    In der Section ;<============Read DataBase===========>[...];<============/Read DataBase===========>,
    offenbare ich meine lösung um die Elemente einzulesen. Allerdings brauch das Script bei mir hier unzählbare Stunden & RAM.


    Das script wird Morgen auseinander genommen. So das ich einen Baum an Shell's kreieren kann die jeweils zuerst die zu überprüfenden daten hasht, um die HDD nicht zu verlangsamen, & danach die CPU stresst.


    Vielleicht interessiert es jemanden wie es bis jetzt aussieht. Deshalb hier vollständig, aber nach der Objekt implentierung nicht mehr funktionstüchtig, wollte mich zuerst um das einlesen der hases kümmern.


    AutoIt
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Change2CUI=y
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    
    
    ;https://virusshare.com/hashes.4n6
    ;19.398.656 + 9.109.504 = 28.508.160
    
    
    #NoTrayIcon
    #include <Crypt.au3>
    #include <array.au3>
    #include <File.au3>
    #include "DictionaryObject.au3"
    
    
    Local $oErrorHandler = ObjEvent("AutoIt.Error", "_ErrFunc")
    
    
    ;<=============Command prompt===========>
    Local $ConsoleUsePath = '', $SyntaxError, $UPDATEONLY, $SCANONLY, $Current
    If $cmdline[0] >= 1 Then
    	ConsoleWrite(@CRLF)
    
    
    	For $cI = 1 To UBound($cmdline) - 1 Step 1
    
    
    		$Current = $cmdline[$cI] & ' '
    
    
    ;~ 		_ArrayDisplay($cmdline)
    ;~ 		MsgBox(0,"",$Current)
    
    
    		If StringInStr($Current, "/?") Then
    			ConsoleWrite('Syntax: ' & @ScriptName & ' -p="C:\" [/? [-Upd [-noUpd ]]]' _
    					 & @CRLF & '/? --Shows this Helpdesk' _
    					 & @CRLF & '-p --Defines the Path' _
    					 & @CRLF & '-Upd --Updating the Database from virusshare.com' _
    					 & @CRLF & '-noUpd --Ignore Updates' _
    					 & @CRLF)
    			Exit
    
    
    		ElseIf StringInStr($Current, "-p") Then
    			$TrimLeft = StringTrimLeft($Current, StringInStr($Current, '='))
    			$ReadLeft = StringLeft($TrimLeft, StringInStr($TrimLeft, ' ', 0, 1) - 1)
    
    
    			$ConsoleUsePath = $ReadLeft
    
    
    		ElseIf StringInStr($Current, "-Upd") Then
    			$UPDATEONLY = 1
    
    
    		ElseIf StringInStr($Current, "-noUpd") Then
    			$SCANONLY = 1
    
    
    
    
    
    
    
    
    
    
    		Else
    			ConsoleWrite('For what was that? ' & $cmdline[$cI] & @CRLF)
    			$SyntaxError = 1
    
    
    		EndIf
    
    
    	Next
    
    
    	If $SyntaxError = 1 Then
    		ConsoleWrite('So ehm Syntax Error. Type /?' & @CRLF)
    		Exit
    	EndIf
    
    
    EndIf
    ;<=============/Command prompt===========>
    
    
    
    
    
    
    ;<============Script Start===========>
    If $ConsoleUsePath = '' Then
    	If $UPDATEONLY = 0 Then
    		ConsoleWrite('Choose Folder... ')
    		Local $DIR = FileSelectFolder("Choose Folder to Search for Positives", @DesktopDir)
    		If @error Then Exit
    		ConsoleWrite('Cool' & @CRLF)
    	EndIf
    Else
    	$DIR = $ConsoleUsePath
    EndIf
    
    
    
    
    
    
    ;<============Update DataBase===========>
    If $SCANONLY = 0 Then
    
    
    	Local $URL = 'https://virusshare.com/hashes/VirusShare_00' ;000.md5
    	Local $count = 0 & 0 & 0, $Finish_Downloading, $count, $third = 0, $two = 0, $first = 0, $Bytes = 0;, $arDB[0]
    	ConsoleWrite("###############################################################################" & @CRLF & @CRLF)
    
    
    	Do
    
    
    		ConsoleWrite('Checking For Update: \md5db\VirusShare_00' & $count & '.md5' & @CRLF)
    
    
    		$PingS = Ping("virusshare.com", 2000)
    
    
    		If $PingS Then
    
    
    			$OnlineSize = InetGetSize($URL & $count & '.md5', 1)
    			If FileGetSize(@ScriptDir & "\md5db\VirusShare_00" & $count & '.md5') <> $OnlineSize Then
    
    
    				ConsoleWrite('Downloading now: https://virusshare.com/hashes/VirusShare_00' & $count & '.md5' & @CRLF)
    				$GetData = InetGet($URL & $count & '.md5', @ScriptDir & "\md5db\VirusShare_00" & $count & '.md5', 1, 1)
    
    
    				Do
    					$HowFar = InetGetInfo($GetData, 0)
    					$Bytes = Round($HowFar)
    
    
    					Sleep(1000)
    					$HowFar = InetGetInfo($GetData, 0)
    					$NewBytes = Round($HowFar) - $Bytes
    
    
    					$bar_2 = $HowFar / $OnlineSize
    					$ProgressBar_2 = BinaryToString(StringToBinary($bar_2 * 100))
    
    
    					ConsoleWrite('Downloaded ' & $ProgressBar_2 & '%' & ' | ' & Round($NewBytes / 1024) & 'kb/s' & @CRLF)
    
    
    				Until InetGetInfo($GetData, 2)
    
    
    			EndIf
    
    
    			$CHECK_O = FileOpen(@ScriptDir & "\md5db\VirusShare_00" & $count & '.md5')
    			$CHECK_R = FileRead($CHECK_O)
    			FileClose($CHECK_O)
    
    
    			If StringInStr($CHECK_R, '404 Not Found') Then
    				$Finish_Downloading = 1
    			EndIf
    
    
    			If StringRight($count, 1) = 9 Then
    				If StringTrimRight(StringRight($count, 2), 1) = 9 Then
    					$two = 0
    					$first = $first + 1
    				EndIf
    				$third = 0
    				$two = $two + 1
    			Else
    				$third = $third + 1
    			EndIf
    
    
    			$count = $first & $two & $third
    			If $count > 999 Then
    				ConsoleWrite("###############################################################################" & @CRLF & @CRLF & "Everything Possible with this Script was Downloaded" & @CRLF)
    				ConsoleWrite("Exceeded Range. Will now exit the loop." & @CRLF)
    				ExitLoop
    			EndIf
    
    
    
    
    		Else
    			ConsoleWrite(@CRLF & 'No Connection to Server' & @CRLF)
    			$Finish_Downloading = 1
    
    
    		EndIf
    
    
    	Until $Finish_Downloading = 1
    
    
    	If $UPDATEONLY = 1 Then
    
    
    		ConsoleWrite(@CRLF & 'Update Routine Finished' & @CRLF)
    		Exit
    
    
    	EndIf
    
    
    EndIf
    ;<============/Update DataBase===========>
    
    
    
    
    
    
    ;<============Read DataBase===========>
    $oDict = ObjCreate("Scripting.Dictionary")
    
    
    Local $ReadDBar, $ReadDBar[0], $ReadDBarTemp[0], $db_files = _RecursiveFileListToArray(@ScriptDir & "\md5db", '\.md5\z', 1), $arList[0], $count, $add
    ConsoleWrite('###############################################################################' & @CRLF & @CRLF & 'Collecting .md5 ... ' & UBound($db_files) - 1 & ' File[s]' & @CRLF)
    
    
    $count = 0
    For $idb = 1 To UBound($db_files) - 1 Step 1
    
    
    	ConsoleWrite('Reading ' & $db_files[$idb] & @CRLF)
    
    
    	_FileReadToArray($db_files[$idb], $ReadDBarTemp)
    	_ArrayDelete($ReadDBarTemp, '1-6')
    
    
    	$add = $add + UBound($ReadDBarTemp) - 1
    
    
    	ConsoleWrite('Found +' & UBound($ReadDBarTemp) - 1 & ' MD5 Hashes' & @CRLF)
    
    
    	For $igb = 2 To UBound($ReadDBarTemp) - 1
    
    
    		$oDict.Add($ReadDBarTemp[$igb-1], $ReadDBarTemp[$igb])
    		$count = $count + 1
    
    
    	Next
    
    
    
    
    Next
    
    
    ConsoleWrite(@CRLF & 'Equals ' & $add & ' MD5 Hashes' & @CRLF & @CRLF)
    ;<============/Read DataBase===========>
    
    
    
    
    ;<============Read Files===========>
    HotKeySet('+{ESC}', _ShowResult)
    
    
    ConsoleWrite('###############################################################################' & @CRLF & @CRLF & 'Press SHIFT + ESC to exit the Search Routine and show the Results' & @CRLF & 'Collecting Files ... ')
    Local $Localfile = _RecursiveFileListToArray($DIR, '', 1) ;<=) FileDIR
    Local $Progress = UBound($Localfile) - 1
    ConsoleWrite('Found ' & $Progress & ' Files' & @CRLF & @CRLF & 'Beginning The Scan:' & @CRLF)
    Local $Save_O = FileOpen(@ScriptDir & "\logging.log", 1)
    ;<============/Read Files===========>
    
    
    ;<============Scanning Section===========>
    _Crypt_Startup()
    
    
    For $i = 1 To UBound($Localfile) - 1 Step 1
    
    
    	$bar = $i / $Progress
    	$ProgressBar = BinaryToString(StringToBinary($bar * 100))
    ;~ 	ConsoleWrite('Completed ' & StringLeft($ProgressBar, StringInStr($ProgressBar, '.') - 1) & '% ' & $i & ' of ' & $Progress & ' Files' & @CRLF)
    	ConsoleWrite('Completed ' & Round($ProgressBar) & '% ' & $i & ' of ' & $Progress & ' Files' & @CRLF)
    
    
    	$Hashing = StringTrimLeft(_Crypt_HashFile($Localfile[$i], $CALG_MD5), 2)
    
    
    ;~ 	For $is = 0 To UBound($ReadDBar) - 1 Step 1
    
    
    		$Returned = _ObjDictSearch($oDict, $Hashing)
    		if $Returned = 1 Then
    ;~ 		If StringInStr($Hashing, $ReadDBar[$is], 0) Then
    
    
    ;~ 			_ArrayAdd($arList, $Localfile[$i] & ' - ' & $ReadDBar[$is])
    ;~ 			FileWrite($Save_O, $Localfile[$i] & ' - ' & $ReadDBar[$is] & @CRLF)
    
    
    ;~ 			ConsoleWrite("FOUND|" & $Localfile[$i] & @CRLF)
    
    
    		EndIf
    
    
    ;~ 	Next
    
    
    Next
    
    
    _Crypt_Shutdown()
    
    
    FileClose($Save_O)
    ;<============/Scanning Section===========>
    
    
    
    
    _ShowResult()
    ;<============/Script Start===========>
    
    
    
    
    Func _ShowResult()
    
    
    	ConsoleWrite('###############################################################################' & @CRLF & 'Listing Positives' & @CRLF)
    
    
    	For $ir = 0 To UBound($arList) - 1 Step 1
    		ConsoleWrite("Positiv|" & $arList[$ir] & @CRLF)
    	Next
    
    
    	ConsoleWrite('###############################################################################' & @CRLF & 'Click Exit or Press CTRL + C on Console' & @CRLF)
    
    
    	While True
    		Sleep(250)
    	WEnd
    
    
    EndFunc   ;==>_ShowResult
    
    
    
    
    ;Author: Oscar @ Autoit.de
    ;https://autoit.de/index.php/Thread/12423-RecursiveFileListToArray-mit-StringRegExp/
    Func _RecursiveFileListToArray($sPath, $sPattern, $iFlag = 0, $iFormat = 1, $sDelim = @CRLF)
    	Local $hSearch, $sFile, $sReturn = ''
    	If StringRight($sPath, 1) <> '\' Then $sPath &= '\'
    	$hSearch = FileFindFirstFile($sPath & '*.*')
    	If @error Or $hSearch = -1 Then Return SetError(1, 0, $sReturn)
    	While True
    		$sFile = FileFindNextFile($hSearch)
    		If @error Then ExitLoop
    		If StringInStr(FileGetAttrib($sPath & $sFile), 'D') Then
    			If StringRegExp($sPath & $sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 2) Then $sReturn &= $sPath & $sFile & '\' & $sDelim
    			$sReturn &= _RecursiveFileListToArray($sPath & $sFile & '\', $sPattern, $iFlag, 0)
    			ContinueLoop
    		EndIf
    		If StringRegExp($sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 1) Then $sReturn &= $sPath & $sFile & $sDelim
    	WEnd
    	FileClose($hSearch)
    	If $iFormat Then Return StringSplit(StringTrimRight($sReturn, StringLen($sDelim)), $sDelim, $iFormat)
    	Return $sReturn
    EndFunc   ;==>_RecursiveFileListToArray
    
    
    
    
    Func _ErrFunc($oError) ;<=)Autoit.de Examples for the Help Section
    	ConsoleWrite(@ScriptName & " (" & $oError.scriptline & ") : ==> COM Error intercepted !" & @CRLF & _
    			@TAB & "err.number is: " & @TAB & @TAB & "0x" & Hex($oError.number) & @CRLF & _
    			@TAB & "err.windescription:" & @TAB & $oError.windescription & @CRLF & _
    			@TAB & "err.description is: " & @TAB & $oError.description & @CRLF & _
    			@TAB & "err.source is: " & @TAB & @TAB & $oError.source & @CRLF & _
    			@TAB & "err.helpfile is: " & @TAB & $oError.helpfile & @CRLF & _
    			@TAB & "err.helpcontext is: " & @TAB & $oError.helpcontext & @CRLF & _
    			@TAB & "err.lastdllerror is: " & @TAB & $oError.lastdllerror & @CRLF & _
    			@TAB & "err.scriptline is: " & @TAB & $oError.scriptline & @CRLF & _
    			@TAB & "err.retcode is: " & @TAB & "0x" & Hex($oError.retcode) & @CRLF & @CRLF)
    	Return SetError(1, 0, "COM Error intercepted")
    EndFunc   ;==>_ErrFunc
    Alles anzeigen

    Dateien

    DictionaryObject.au3 15,56 kB – 370 Downloads
  • Autoit Windows Wipe Datei und/oder Ordner

    • Candyland
    • 26. April 2017 um 17:49
    Zitat von Musashi

    @Candyland möchte aber wohl nur Dateien skriptgesteuert und 'halbwegs sicher' von der HDD entfernen.
    Dazu sind Tools wie 'WipeFile' garantiert besser als das normale Löschen.

    Gruß Musashi

    Korrekt! :3 Ja gut ich könnte es mir leicht machen und mir tools besorgen. Das werde ich wohl tun wenn Autoit nicht mit den Tools mithalten kann. Um das aber festzustellen werde ich zuerst diesem projekt eine chance geben, denn das interessiert mich schon sehr wie das Funktioniert.

  • Autoit Windows Wipe Datei und/oder Ordner

    • Candyland
    • 26. April 2017 um 06:23

    Wow woow oke ich danke dir @alpines, das gibt mir schon einmal einen Einblick.Da mir auch bewusst ist das dieses Projekt seine Zeit fordern wird habe ich entdeckt das ich dieses Projekt aufschieben muss.
    Meine Nächste Freie Zeit sollte ich für den Bau einer Website verwenden. Dabei werde ich .php kennenlernen müssen, dafür werde ich sicher einige Zeit benötigen. Sollte ich dazu kommen das Script ohne Probleme fertigzustellen, kommt es in die Script Sektion. Oder wenn ich fragen habe auch in ein Neues Thema.

    @AspirinJunkie Ich finde es witzig, das ich mein leben lang schon mit Windows arbeite, jedoch nie etwas mit diesem program zutun hatte. Ich weiß nicht ob ich cipher schoneinmal entdeckt hatte oder ob ich es vergessen habe. Danke dafür!

  • Autoit Windows Wipe Datei und/oder Ordner

    • Candyland
    • 25. April 2017 um 20:13

    Sehr interessant.. uhm ehrlich zu sein ich habe mich belesen, allerdings nicht das gefunden wo genau beschrieben wird wie diese Technik funktioniert.

    Weißt du wie ich das finde, wovon du redest?

  • Autoit Windows Wipe Datei und/oder Ordner

    • Candyland
    • 25. April 2017 um 19:49

    Hali Halo,

    Ich versuche eine methode zu finden mit welcher es möglich ist Datein Zu Wipen um sicher zu gehen das sie nicht wiederherstellbar werden.
    Ich kann mir denken das dabei die Sektoren auf der HDD überschrieben werden müssen.. aber nunja ich habs so 'gelöst'.

    Reicht das aus? oder ist das vielleicht die Falsche Methode?

    im klartext, hier wird jedes Zeichen durch eine Zufällig generierte Nummer ersetzt.

    AutoIt
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Change2CUI=y
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    ;stand 25.04.2017 19:50 Author: Candyland
    #include <array.au3>
    #include <Constants.au3>
    
    
    Local $folder
    Local $iAnswer = MsgBox(BitOR($MB_YESNO, $MB_SYSTEMMODAL), "Option", "Choose Yes for Folder Wiping or No for Single File Wiping")
    If $iAnswer = 7 Then
    	$WIPEfile_CC = FileOpenDialog("", @ScriptDir, "(*.*)")
    	if @error then Exit
    	Local $WIPEfile_C[2] = ['1',$WIPEfile_CC]
    ElseIf $iAnswer = 6 Then
    	$WIPEfile_CC = FileSelectFolder("", @ScriptDir)
    	if @error Then Exit
    	$WIPEfile_C = _RecursiveFileListToArray($WIPEfile_CC, '', 1)
    	$folder = 1
    EndIf
    
    
    For $i = 1 To UBound($WIPEfile_C) -1 Step 1
    	Local $WIPEfile_S = FileGetSize($WIPEfile_C[$i])
    	Local $WIPEfile_O = FileOpen($WIPEfile_C[$i], 2)
    	ConsoleWrite(UBound($WIPEfile_C) - 1 - $i & '~Files Left' & @CRLF & 'Current File~' & $WIPEfile_C[$i])
    	Local $WIPEfile_R, $count=0
    	For $is = 1 To $WIPEfile_S Step 1
    ;~ 		$count = $count +1
    ;~ 		if $count = 300 Then
    ;~ 			$WIPEfile_R = Random('0', '9', 1) & @CRLF
    ;~ 			$count = 0
    ;~ 		Else
    			$WIPEfile_R = Random('0', '9', 1)
    ;~ 		EndIf
    		FileWrite($WIPEfile_O, $WIPEfile_R)
    	Next
    	FileClose($WIPEfile_O)
    	ConsoleWrite(' -Wiped' & @CRLF)
    	FileDelete($WIPEfile_C[$i])
    Next
    
    
    if $folder = 1 Then
    	DirRemove(StringLeft($WIPEfile_C[1], StringInStr($WIPEfile_C[1], '\', 0, -1)), 1)
    EndIf
    
    
    ;Author: Oscar (www.autoit.de)
    ;https://autoit.de/index.php/Thread/12423-RecursiveFileListToArray-mit-StringRegExp/
    Func _RecursiveFileListToArray($sPath, $sPattern, $iFlag = 0, $iFormat = 1, $sDelim = @CRLF)
    	Local $hSearch, $sFile, $sReturn = ''
    	If StringRight($sPath, 1) <> '\' Then $sPath &= '\'
    	$hSearch = FileFindFirstFile($sPath & '*.*')
    	If @error Or $hSearch = -1 Then Return SetError(1, 0, $sReturn)
    	While True
    		$sFile = FileFindNextFile($hSearch)
    		If @error Then ExitLoop
    		If StringInStr(FileGetAttrib($sPath & $sFile), 'D') Then
    			If StringRegExp($sPath & $sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 2) Then $sReturn &= $sPath & $sFile & '\' & $sDelim
    			$sReturn &= _RecursiveFileListToArray($sPath & $sFile & '\', $sPattern, $iFlag, 0)
    			ContinueLoop
    		EndIf
    		If StringRegExp($sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 1) Then $sReturn &= $sPath & $sFile & $sDelim
    	WEnd
    	FileClose($hSearch)
    	If $iFormat Then Return StringSplit(StringTrimRight($sReturn, StringLen($sDelim)), $sDelim, $iFormat)
    	Return $sReturn
    EndFunc   ;==>_RecursiveFileListToArray
    Alles anzeigen
  • Gmail-Checker - Erlaubt oder nicht?

    • Candyland
    • 24. April 2017 um 16:35
    Zitat von NO1 :-)

    was du glaub' ich meinst, wird bei Gmail "Less Secure Apps" genannt.

    Absolut das ist das ich meine! Ich habe das bei einem Code gesehen der dort Keylog's hochladen wollte(ziehmlich witzig soetwas so offensichtlich bei einem email account hochzuladen), diese Option wurde dort beschrieben, ohne das geht es halt nicht.

    Allerdings habe ich das in den letzten vergangen jahren häufig beobachtet das Email acc's verwendet werden um log's zu speichern. Dass, das nicht auffliegt verwundert mich, ich erfuhr im gegenzug auch das dieser Email'S schnell gelöscht werden aufgrund eben dieser unerlaubten verwendung. Also warum wird diese Methode noch verwendet xD

  • und nochmals RunWait @ComSpec

    • Candyland
    • 24. April 2017 um 16:23

    Kleiner Tipp!
    teste das mal aus, jetzt wirst du's ganz sicher raffen :)

    AutoIt
    Local $CheckforAdmin = IsAdmin() ;<= 1 for Yes, 0 for No
    if $CheckforAdmin = 1 Then
    	$Check = 'Ya'
    Else
    	$Check = 'Nein'
    EndIf
    
    
    MsgBox(0,"","Ich Zeige dir jetzt einen Code der zu schnell ausgeführt wird um das Ergebnis zu betrachten." & @CRLF & "Klicke OK!")
    $BEFEHL = 'echo Mit stil in den Untergang. & echo Script hat Admin: ' & $Check
    ConsoleWrite($BEFEHL & @CRLF)
    RunWait(@ComSpec & ' /C ' & $BEFEHL, @ScriptDir, @SW_SHOW) ;<=) /C
    
    
    MsgBox(0,"","Na was stand dort?" & @CRLF & "Ist ja auch egal, jedenfalls werden wir jetzt" & @CRLF & "das /C nach @ComSpec zu /K machen & damit die Konsole für den weiteren gebrauch geöffnet behalten werden kann")
    $BEFEHL = 'echo Mit stil in den Untergang. & echo Script hat Admin: ' & $Check
    ConsoleWrite($BEFEHL & @CRLF)
    Run(@ComSpec & ' /K ' & $BEFEHL, '..', @SW_SHOW) ;<=) /K
    Sleep(2000)
    MsgBox(0,"","Und schon siehst du auch den Output wenn das mal nötig wird" & @CRLF & "Und jetzt noch was zu Alpines methode :3" & @CRLF & "Schließe das Fenster & klicke auf OK")
    
    
    $BEFEHL = 'echo Dieser Text soll hier stehen ja.' & ' >Sahne.txt' ;<=) ' >1.txt'
    ConsoleWrite($BEFEHL & @CRLF)
    RunWait(@ComSpec & ' /C ' & $BEFEHL, @ScriptDir, @SW_SHOW) ;<=) /C
    
    
    MsgBox(0,"","Easy Peazy, jetzt öffne mal im selben ordner wie von diesem Script die Sahne.txt" & @CRLF & "Das wars dann auch schon, schau dir das Script an & du wirst verstehen")
    Alles anzeigen
  • Gmail-Checker - Erlaubt oder nicht?

    • Candyland
    • 24. April 2017 um 16:02

    Klar alles legal, solange es dein gmail acc ist und oder du die rechte auf eine andere mail bekommen hast.
    Google ist da recht kulant, soweit ich weiß muss man allerdings die benutzungs solcher vereinfachungs programme zuerst freischalten irgendwo in den einstellungen(irgendwas von wegen externer login von unzureichend gesicherten apps erlauben).

  • Scite Speicherfehler

    • Candyland
    • 21. April 2017 um 19:01

    Alpines vorschlag mit der Datenrettung ist super. Allerdings denke ich dass, das script völlig hin ist. Also naja immerschön Backupen. Mit Tidy mache ich das gänzlich da Tidy immer ein Backup erstellt, welches dann im selbigen Ordner erstellt wird.

  • StringInStr - Position(en) gesuchten Inhalt in String abfangen (mehrfach)

    • Candyland
    • 21. April 2017 um 17:57

    Yoar gut meine Lösung wäre diese:

    AutoIt
    ;<Date&Ver&Aut) 21.04.2017 15:54 _ 0.1 _ Candyland
    ;<Task) Wo & wie häufig in einem String ein Wort vorkommt
    ;<Comment) Nicht Perfekt aber sollte aufzeigen in welche richtung es inetwa geht
    #include <file.au3>
    
    
    Local $Files[2] = [@ScriptDir & "\Words.txt", @ScriptDir & "\text.txt"]
    
    
    ;<==ScriptBegin==>
    Local $Words_O = FileOpen($Files[0])
    Local $Words_R = FileReadToArray($Words_O)
    FileClose($Words_O)
    
    
    Local $Search_RLines = _FileCountLines($Files[1])
    Local $Search_O = FileOpen($Files[1])
    
    
    Local $OCCURENCE, $count, $Position, $LookForWords, $READ_LINE, $STERNCHENS, $STERNCHENS_1, $CASESENSE = 0
    For $i = 1 to $Search_RLines Step 1
    
    
    	$READ_LINE = FileReadLine($Search_O, $i)
    	$count = 0
    	$Position = '|'
    
    
    	For $is = 0 To UBound($Words_R) - 1 Step 1
    
    
    		$OCCURENCE = 1
    
    
    		Do
    
    
    			$LookForWords = StringInStr($READ_LINE, $Words_R[$is], $CASESENSE, $OCCURENCE)
    
    
    			If $LookForWords > 0 Then
    
    
    				$count = $count + 1
    				$Position &= $LookForWords & '-' & $Words_R[$is] & '|'
    				$OCCURENCE = $OCCURENCE + 1
    
    
    				$STERNCHENS_1 = StringLen($Words_R[$is])
    				$STERNCHENS = ''
    				For $ist = 1 To $STERNCHENS_1 Step 1
    					$STERNCHENS &= '*'
    				Next
    				$READ_LINE = StringReplace($READ_LINE, $Words_R[$is], $STERNCHENS, $OCCURENCE, $CASESENSE)
    
    
    			EndIf
    
    
    		Until $LookForWords = 0
    
    
    	Next
    
    
    	If $count > 0 Then
    		ConsoleWrite('Line ' & $i & ' Banned Words @Position' & $Position & @CRLF)
    	Else
    		ConsoleWrite('Line ' & $i & ' has Zero Banned Words' & @CRLF)
    	EndIf
    
    
    Next
    FileClose($Search_O)
    ;<==/ScriptBegin==>
    Alles anzeigen

    Beispiel ist im Anhang.

    Dateien

    WordPositions.7z 1,8 kB – 255 Downloads

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™