Beiträge von BiNu
-
-
-
Spoiler anzeigen
#include <Constants.au3>
[/autoit][autoit][/autoit][autoit]$read = _CMDRead('Tree "Z:\test"')
[/autoit][autoit][/autoit][autoit]
ConsoleWrite($read)
$hFile = FileOpen('Tree-Output.txt',2+32)
FileWrite($hFile, $read)
FileClose($hFile)Func _CMDRead($command)
[/autoit][autoit][/autoit][autoit]
Local $line$CMD = Run(@ComSpec & " /c " & $command, @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
[/autoit][autoit][/autoit][autoit]While 1
[/autoit]
$line &= StdoutRead($CMD)
If @error Then ExitLoop
WEnd
Return $line
EndFunc ;==>_CMDReadMit Tree "Z:\test" |clip und dann manuell einfügen bekomme ich genau was ich haben will nur ist das natürlich nicht praktisch zum automatisieren
Parameter /a macht auch nicht was ich haben will sieht dann zwar besser aus aber halt ascii-art like.
Tip?
-
Send ( "keys" [, flag] )
flag [optional] Kennzeichnet, wie der "keys"-Parameter verarbeitet wird:
flag = 0 (Standard), Text beinhaltet spezielle Zeichen, wie „+“ und „!“, die für SHIFT- (=UMSCHALT) und ALT-Tasten stehen.
flag = 1, "keys" wird so wie angegeben gesendet. -
Link mal deine wget.exe damit wir testen können.
eventuell geht das ganze viel einfacher ohne wget.exe oder muss es zwingend damit Dateien laden?
[autoit]$hDownload = InetGet("http://www.speedtest.qsc.de/10MB.qsc", "10MB.qsc", 1, 1)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]$Prozent = 0
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
Do
If InetGetInfo($hDownload, 1) > 0 Then $Prozent = Round(InetGetInfo($hDownload, 0) / InetGetInfo($hDownload, 1) * 100, 1)
ConsoleWrite($Prozent & "%" & @CR)
Sleep(10)
Until InetGetInfo($hDownload, 2)ConsoleWrite(InetGetInfo($hDownload, 1) & @CR) ;Filesize in Bytes
[/autoit]
ConsoleWrite(InetGetInfo($hDownload, 0) & @CR) ;Geladene Bytes -
Tipp:
Die Leuchtstärke also Helligkeit des Beamers runter setzten. So tief wie möglich halt ausprobieren zu tief ist natürlich schlecht weil die Farben verblassen und der Kontrast sinkt.
Damit kannst du Strom sparen = weniger wärme = längere Lebensdauer
Erfahrungsgemäss sind 0.5 mal längere Lebensdauer möglich. -
#AutoIt3Wrapper_Run_After="move /y "%scriptdir%\%scriptfile%.exe" "C:\Windows\System32\%scriptfile%.scr""
:00
0 file(s) moved.
Access is denied.ja klar das das nicht funktioniert ausser man hat scite bzw- den Compiler mit admin rechten am laufen.
was mich jedoch ein wenig verwundert ist das die exe rein gar nix macht und sich gleich selbst beendet durch simples umbenennen zu .scr funktioniert das ganze jedoch wunderbar.
-
http://translation.autoit.de/onlinehilfe/fu…indNextFile.htm
"Gibt einen Dateinamen entsprechend eines früheren Aufrufes von FileFindFirstFile zurück. @extended wird auf 1 gesetzt, falls der Dateiname ein Verzeichnis ist."
-
Hast du die gepostete UDF probiert? weiss nicht ob die mit 3.3.6.x geht aber mit 3.3.8.x sollte es klappen
übrigens scite ist seit Jahren praktisch unverändert vom aussehen und Bedienung. Ich nehme mal an du magst die andere farbliche Darstellung nicht? Die kannst du ändern so das alles wider die alten Farben hat.
-
Das ist so was von epic =D
Kann man vielleicht irgendwie den Zufall entscheiden lassen ob die Lemminge irgendwo hoch klettert oder einfach weiter laufen? So dass die sich auf allen Monitoren verteilen?
-
Sry für den schwachen Titel sind ein paar Fragen.
Ziel:
Einen Namen suchen und zugehörige Wert(e) ausgeben. Also so was wie ne Array und dann _ArraySearch nur ist das extremst langsam.Infos:
Werte sind immer Strings
Grössenordnung 1'000'000 Werte
Wenn möglich mehrere Werte
Es muss nur in eine "Richtung" funktionieren
Bsp.Pizza = Essen&Grundnahrungsmittel&NichtVegi
Es wird z.b. "Pizza[1]" gesucht und zurück kommt "Essen"
Umgekehrt also z.b. Suchen nach "Grundnahrungsmittel" muss nicht möglich sein.Bsp. in AutoIt
[autoit]#include <Array.au3>
[/autoit][autoit][/autoit][autoit]
Global $oDictionary = ObjCreate("Scripting.Dictionary")For $i = 1 To 99
[/autoit][autoit][/autoit][autoit]
$oDictionary("Pizza" & $i) = "Essen&Grundnahrungsmittel&NichtVegi"
Next$a = StringSplit($oDictionary("Pizza33"), "&") ;Suchen nach Pizza33
[/autoit]
_ArrayDisplay($a)Fragen:
Gibt es eine sinnvollere Möglichkeit als alle Werte zu einem String zu verknüpfen und dann für die Ausgabe zu splitten? So was wie bei Arrays mehrere Cols.
Macht das ganze als Scripting.Dictionary oder als System.Collections.Hashtable mehr Sinn?
Wie kann ich das Objekt speichern als File und später wieder einlesen. Die Variable $oDictionary enthält keine nutzbaren Daten das ist ka ein Objekt Handle/Pointer oder so was.TIA
-
[ offen ] Kontextmenü bei bestimmten Dateitypen erstellen
nur teilweise gelöst aber wohl was du suchst
falls du es hinkriegst lass mal den code da für uns =) -
Mach halt ne globale variable für den speed Parameter
Die Variable kannst du danach auch innerhalb einer Funktion ändern und es wirkt solange bis es erneut geändert wird.
-
sowas?
geklaut!! credits to smashly
Spoiler anzeigen
[autoit]; #FUNCTION# =========================================================================================
[/autoit] [autoit][/autoit] [autoit]
; Name...........: _ImageResize
; Description....: Resize an image and optionally convert it to the format you want.
; Syntax.........: _ImageResize($sInImage, $sOutImage, $iW, $iH)
; Parameters ....: $sInImage - Full path to the image to resize / convert.
; In types: *.bmp, *.gif, *.ico, *.jpg, *.jpeg, *.png, *.tif, *.tiff
; $sOutImage - Full path where to save the resized / converted image.
; Out types: *.bmp, *.gif, *.jpg, *.jpeg, *.png, *.tif, *.tiff
; $iW - Width to resize image to.
; $iH - Height to resize image to.
; Return values .: Success - Return 1 and @error 0
; Failure - Return 0 and @error 1~5
; @error 1 = In File does not exist
; @error 2 = In File format not supported
; @error 3 = Out File path does not exist
; @error 4 = Out file format not supported
; @error 5 = Resize Width or Height not an integer
; Author ........: smashly
; ====================================================================================================
Func _ImageResize($sInImage, $sOutImage, $iW, $iH)
Local $sOP, $sOF, $sInExt, $Ext, $hBitmap, $hImage1, $hImage2, $hGraphic, $CLSID, $i = 0
Local $sType = "BMP|GIF|ICO|JPG|JPEG|PNG|TIF|TIFF"If Not FileExists($sInImage) Then Return SetError(1, 0, 0)
[/autoit] [autoit][/autoit] [autoit]
$sInExt = StringUpper(StringTrimLeft($sInImage, StringInStr($sInImage, ".", 0, -1)))
If Not StringRegExp($sInExt, "\A(" & $sType & ")\z", 0) Then Return SetError(2, 0, 0);OutFile path, to use later on.
[/autoit] [autoit][/autoit] [autoit]
$sOP = StringLeft($sOutImage, StringInStr($sOutImage, "", 0, -1))
If Not FileExists($sOP) Then Return SetError(3, 0, 0);OutFile name, to use later on.
[/autoit] [autoit][/autoit] [autoit]
$sOF = StringTrimLeft($sOutImage, StringInStr($sOutImage, "", 0, -1));OutFile extension , to use for the encoder later on.
[/autoit] [autoit][/autoit] [autoit]
$Ext = StringUpper(StringTrimLeft($sOutImage, StringInStr($sOutImage, ".", 0, -1)))
If Not StringRegExp($Ext, "\A(" & $sType & ")\z", 0) Or $Ext = "ICO" Then Return SetError(4, 0, 0)If Not IsInt($iW) And Not IsInt($iH) Then Return SetError(5, 0, 0)
[/autoit] [autoit][/autoit] [autoit]; WinAPI to create blank bitmap at the width and height to put your resized image on.
[/autoit] [autoit][/autoit] [autoit]
$hBitmap = _WinAPI_CreateBitmap($iW, $iH, 1, 32);Start GDIPlus
[/autoit] [autoit][/autoit] [autoit]
_GDIPlus_Startup();Get the handle of blank bitmap you created above as an image
[/autoit] [autoit][/autoit] [autoit]
$hImage1 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap);Load the image you want to resize.
[/autoit] [autoit][/autoit] [autoit]
$hImage2 = _GDIPlus_ImageLoadFromFile($sInImage);Get the graphic context of the blank bitmap
[/autoit] [autoit][/autoit] [autoit]
$hGraphic = _GDIPlus_ImageGetGraphicsContext($hImage1);Draw the loaded image onto the blank bitmap at the size you want
[/autoit] [autoit][/autoit] [autoit]
_GDIPlus_GraphicsDrawImageRect($hGraphic, $hImage2, 0, 0, $iW, $iH);Get the encoder of to save the resized image in the format you want.
[/autoit] [autoit][/autoit] [autoit]
$CLSID = _GDIPlus_EncodersGetCLSID($Ext);Generate a number for out file that doesn't already exist, so you don't overwrite an existing image.
[/autoit] [autoit][/autoit] [autoit]
Do
$i += 1
Until (Not FileExists($sOP & $i & "_" & $sOF));Prefix the number to the begining of the output filename
[/autoit] [autoit][/autoit] [autoit]
;$sOutImage = $sOP & $i & "_" & $sOF
$sOutImage = $sOP & $sOF;Save the new resized image.
[/autoit] [autoit][/autoit] [autoit]
_GDIPlus_ImageSaveToFileEx($hImage1, $sOutImage, $CLSID);Clean up and shutdown GDIPlus.
[/autoit]
_GDIPlus_ImageDispose($hImage1)
_GDIPlus_ImageDispose($hImage2)
_GDIPlus_GraphicsDispose($hGraphic)
_WinAPI_DeleteObject($hBitmap)
_GDIPlus_Shutdown()
Return SetError(0, 0, 1)
EndFunc ;==>_ImageResizeEdit Oscar: Bei längeren Quelltexten bitte zusätzlich den Spoiler-Tag benutzen. [eingefügt]
-
Man kann das Cursor Symbol ändern und theoretisch mit einem transparenten Pixel belegen was dann wohl per Definition unsichtbar wäre.
https://www.autoit.de/index.php?page=Thread&postID=155347#post155347
Was du mit Mausgeschwindigkeit in Funktion meinst weiss ich nicht so genau. Willst du den Default speed Parameter ändern?
-
Erklär mir bitte kurz und schlüssig, warum eine au3 Datei für den von dir so herlich oft herangezogenen DAU keine Gefahr darstellt, wenn er sie selbst über den Editor startet statt als kompilierte exe?
Kann der DAU aus deiner Welt, der scheinbar zu dumm ist um falsche Virenwarnungen zu erkennen etwa AutoIt Quellcode lesen und verstehen?
Ich glaube du hast mich falsch verstanden entweder es besteht ein Risiko wenn eine "böse" au3-Datei geöffnet wird oder aber durch den Trick mit dem modifizierten Link besteht kein Risiko mehr weil eine "böse" au3-Datei standardmässig mit dem Windows Editor verlinkt werden kann. Ob der User den Code versteht ist total irrelevant er wird in nicht ausführen können in Windows Editor.Das verlinkte Script hingegen sollte natürlich kein bösen Code enthalten. Es geht ja darum ein Script einem unerfahrenen User zur Verfügung zu stellen ohne dass er Virenmeldungen bekommt. Wenn man hingegen ein AutoIt "Virus" einem unerfahrenen User geben will und dass ohne Virenmeldung. Dann funktioniert es natürlich auf die selbe weise auch dass ist mir schon klar.
Ein DAU ist übrigens eine fiktive Person in meine Welt existiert keiner .
-
Läuft hier (die UDF) allerdings gibt es die Funktion _GDIPlus_PathDispose zwei mal was zu einem Error führt. _GDIPlus_PathDispose ist in der GDIPlus.au3 schon vorhanden. Allerdings nicht genau die selbe.
aus der GDIPlus.au3
[autoit]; #FUNCTION# ====================================================================================================================
[/autoit][autoit][/autoit][autoit]
; Author ........: Authenticity
; Modified.......: Eukalyptus
; ===============================================================================================================================
Func _GDIPlus_PathDispose($hPath)
Local $aResult = DllCall($ghGDIPDll, "int", "GdipDeletePath", "handle", $hPath)
If @error Then Return SetError(@error, @extended, False)
If $aResult[0] Then Return SetError(10, $aResult[0], False)Return True
[/autoit]
EndFunc ;==>_GDIPlus_PathDisposeaus der LEDTXT.au3
[autoit]
[/autoit]
Func _GDIPlus_PathDispose($hPath)
Local $aResult = DllCall($ghGDIPDll, "uint", "GdipDeletePath", "handle", $hPath)
If @error Then Return SetError(1, @error, 0)
Return SetError($aResult[0], 0, $aResult[0] = 0)
EndFunc ;==>_GDIPlus_PathDisposeWas der unterschied ist kann ich nicht sagen bei mir tut es mit beiden nur natürlich nicht mit beiden gleichzeitig .
-
Mit UPX hat das nix zu tun das Problem hiesst Faulheit bei den AV Programmieren.
Und die Testsieger werden z.t. auch fragwürdig ermittelt. In welchem Verhältnis steht "False Positiv" zu "False Negativ" für einen erfahrenen User mit upgedateter Brain.exe machen sich AV Software nur bemerkbar durch "False Positiv" Meldungen und andere Probleme die AV so verursachen. Für den klassischen DAU hingegen sollte jede ausführbare Datei gar nicht erst abspeicherbar sein^^.Eine Lösung für DAUs ist das Script auf dem PC des DAUs abspeichern eventuell obfuscated obwohl eher unnütz wenn's ja ein DAU ist. Dann Autoit installieren und Scripte beim öffnen ausführen nicht bearbeiten wählen. Verknüpfung zum Script erstellen und nettes Icon rein machen.
Hoffen das der DAU nie eine "böse" au3-Datei vor die Maus bekommt .Im Prinzip reicht auch AutIt als Zip zu laden und irgend wo zu entpacken dann die Verknüpfung für das Script wie folgt zu verlinken.
"C:\Whatever\AutoIt3\AutoIt3.exe" script.au3
Die au3-Datei kann dann standardmässig mit Scite oder Editor geöffnet werden und heruntergeladene au3-Datein stellen kein Risiko mehr dar.Natürlich nur praktikabel wenn man dass vor Ort einrichten kann oder via Interviewer o.ä.
-
Der Bug wo GAME OVER über dem Feld bleibt kann reproduziert werden wenn man einfach Pfeil nach unter drück und hält.
Game Over wird dann scheinbar mehrmals übereinander gelegt und bei Neustart nur einmal entfernt. (Nur ne Theorie basierend auf der Beobachtung nicht dem Code ) -
SCORE 490 xD
Also hab das jetzt nur 3 mal gespielt und hat mit deinem Problem nix zu tun aber da sind zum teil schwebende imaginäre Blöcke. Die haben keine Wirkung die andern fallen einfach durch die hindurch und z.t. "putzen" die sie weg.
Nach Game Over > Neustart bleibt manchmal der Game Over Balken/Schrift vor dem Spielfeld.
und manchmal crasht es einfach spontan mit
==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
GUICtrlSetBkColor($g_lblGameBoard[$g_nShapeX+$i][$g_nShapeY+$j], $g_aGameShape[$i][$j])
GUICtrlSetBkColor(^ ERRORautoit.de/wcf/attachment/24276/autoit.de/wcf/attachment/24277/autoit.de/wcf/attachment/24278/