also bei mir klappt werder das eine, noch das andere.
das programm erstellt eine ini, da steht aber net mal das icon drin, was ich frei gewählt habe.
trage ich alles entsprechend per hand in die ini, ändert sich auch nix =(
also bei mir klappt werder das eine, noch das andere.
das programm erstellt eine ini, da steht aber net mal das icon drin, was ich frei gewählt habe.
trage ich alles entsprechend per hand in die ini, ändert sich auch nix =(
am liebsten wäre es mir, wenn alles automatisch ablaufen würde.
falls mehrere .ico enthalten sind, einfach das erste nehmen (oder das letzte, oder random, ist wurscht).
hast du eine idee/funktion?
Hiho,
ich habe vielen ordner, in denen jeweils .ico datein sind. diese hätte ich gerne als ordnerbild.
manuell geht das umständlich über:
rechte maus auf den ordner, eigenschafte, anpassen, anderes symbol, auswählen, ok, ok
das ganze ist jedoch manuell recht umständlich, als script sicherlich auch. gibt es in windows irgendwie eine funktion, die man per autoit nutzen könnte, um ein programm zu entwickeln, dass dies automatisch macht?
so ist natürlich noch einfacher *g* thx
Hallo,
leider kriege ich es irgendwie nicht hin.
ich möchte eigentlich nur eine einfache schleife machen, die mir sämtliche $CmdLines aneinander reiht, damit ich später per stringreplace ein batch-file generieren kann.
kann mir jmd helfen?
weiß grad nicht recht, was du meinst ... nen unterschied würde es nicht machen.
zumindest, weil ich oben deklariert habe, das entweder -f oder -d geht
Case $CmdLine[1] = "-del"
$ff = _ArraySearch($CmdLine, "-f")
If $ff <> -1 Then $file = $CmdLine[$ff+1]
$fd = _ArraySearch($CmdLine, "-d")
If $fd <> -1 Then $dir = $CmdLine[$fd+1]
If $dir <> "" And $file <> "" Then
_FileCreate(@scriptdir & "\n-OR-d-Switch-allowed.ERROR")
Exit
EndIf
aber was mir noch fehlt ist, was ich auch nicht hinbekomme, dass er ordner mit leerzeichen löscht.
sobald ich das so eingebe, passiert eigentlich nix mehr: $Folder =_FileListToArray(@ScriptDir, '"' & $dir & '"')
aber wieso ?
so, habs doch noch hinbekommen, zwar gmixxt, aber "nur" auf die eine oder andere art, geht es wohl net
#include <File.au3>
[/autoit] [autoit][/autoit] [autoit]$ErrorFlag = 0
$file = ""
$dir = "Neuer*"
If $file <> "" And $dir <> "" Then Exit
_Del($file, $dir)
Func _Del($file, $dir)
If $file <> "" Then
If FileExists($file) Then
$FileDelete = FileDelete($file)
If $FileDelete = 0 Then _FileCreate(@scriptdir & '\Could-not-Remove-File(s)-[' & $file & '].ERROR')
Else
_FileCreate(@scriptdir & '\No-[' & $file & '].File(s)-Found.ERROR')
EndIf
ElseIf $dir <> "" Then
$Folder =_FileListToArray(@ScriptDir, $dir)
If @Error Or $Folder[0] <= 0 Then
_FileCreate(@scriptdir & '\No-[' & $dir & ']-Folder(s)-Found.ERROR')
Exit
EndIf
For $i = 1 To $Folder[0]
$DirRemove = DirRemove($Folder[$i], 1)
If $DirRemove = 0 Then $ErrorFlag = 1
Next
If $ErrorFlag = 1 Then
_FileCreate(@scriptdir & '\No-[' & $dir & ']-Folder(s)-Found.ERROR')
$ErrorFlag = 0
EndIf
#cs
If FileExists($dir) Then
$DirRemove = DirRemove($dir, 1)
If $DirRemove = 0 Then _FileCreate(@scriptdir & '\Could-not-Remove-Dir(s)-[' & $dir & '].ERROR')
Else
_FileCreate(@scriptdir & '\No-[' & $dir & ']-Dir(s)-Found.ERROR')
EndIf
#ce
Else
Exit
EndIf
EndFunc
irgendwie funzt das über mit den umlauten nicht, oder wie muss ich das machen?
würde nicht runasset mit taskkill funktionieren?
quasi das taskkill vom gleichen user aufgerufen wird, der dann berechtigt ist, den prozess zu schließen?
es soll eine cmd-funktion werden
per parameter soll dann zw file (-f) und dir (-d) unterschieden werden.
entweder wird der komplette datei-/ordnername angegeben, oder wie gesagt, es werden wildcards genutzt.
das ganze (zumindest laut meinem script) hat sich auf das scriptdir beschränkt.
im fehlerfall soll datei ausgeben ausgegeben werden, die dann z.B. aussagt, dass keine datei gefunden wurde, oder die datei nicht gelöscht werden konnte.
mein scriptansatz oben klappt ja auch schon halb, was sich auf Files löschen beschränkt, nur dirs will es iwie nicht löschen.
aber das muss doch iwie gehen, würde ungern auf cmd umsteigen
hallo, ich würde gerne eine funktion bauen, mit der man entweder files oder ordner löschen kann.
um die gefahr zu verkleinern, sind wildcards erlaubt und zu nutzen, so dass der user diese selber angeben muss und sie nicht bereits im script enthalten sind
(bsp: FileExists("*" & $file & "*")
so weit so gut. files löschen klappt auch wunderbar, mit oder ohne wildcard, jedoch komm ich mit den ordnern (DirRemove) nicht klar.
wenn ich den namen komplett angebe, funktioniert es, mit wildcards jedoch nicht ... und was mich verwundert ist, dass nicht mal eine der fehlermeldungen erscheint.
es geht auch nicht, wenn ich anführungszeichen drumrum setze (DirRemove('"' & $dir & '"', 1) .... warum ?
#include <File.au3>
[/autoit] [autoit][/autoit] [autoit]$file = ""
$dir = "Neuer O*"
If $file <> "" And $dir <> "" Then Exit
_Del($file, $dir)
Func _Del($file, $dir)
If $file <> "" Then
If FileExists($file) Then
$FileDelete = FileDelete($file)
If $FileDelete = 0 Then _FileCreate(@scriptdir & '\Could-not-Remove-File(s)-[' & $file & '].ERROR')
Else
_FileCreate(@scriptdir & '\No-[' & $file & '].File(s)-Found.ERROR')
EndIf
ElseIf $dir <> "" Then
If FileExists($dir) Then
$DirRemove = DirRemove($dir, 1)
If $DirRemove = 0 Then _FileCreate(@scriptdir & '\Could-not-Remove-Dir(s)-[' & $dir & '].ERROR')
Else
_FileCreate(@scriptdir & '\No-[' & $dir & ']-Dir(s)-Found.ERROR')
EndIf
Else
Exit
EndIf
EndFunc
warum machst du bei include immer ="" ??? (ka wofür das gut sein soll)
und die leerzeichen vllt auch, sonst sucht er ganz andere include dateien
lass das mal weg
hiho,
ich bin mir ziemlich sicher das es sowas gibt, leider bin ich mir nicht sicher.
ich würde gerne, dass, sobald das script einen fehler findet, es sofort beendet wird (damit keine lästigen popmsgs von autoit selber erscheinen).
wie mach ich das am besten? mit adlibenable???
hiho,
ich bin es nochmal.
nachdem ich dies nun gestern getestet habe, habe ich wohl auch verstanden, was du gemeint hast bugfix =)
wenn die fenster neu "berechnet" werden, ist die kennzeichnung, welches nun on top ist, hinüber.
vllt das man die erfassten fenster in ner ini-datei hinterlegt?
oder gibt es noch andere ideen?
hi bugfix,
vielen dank für die hilfe. das sieht sehr gut aus, so wie ich es mir vorgestellt habe.
das mit dem akiven fenster herausfinden könnte man doch über "checked" im traymenü rausfinden (wenn man davon ausgeht, dass nur diese fenster ON TOP sind und über das traymenü gesetzt wurden) ...
jedoch bleibt das problem des users. wir arbeiten mit 19", bzw 22" monitoren ... da kann man auch mal mehrere fenster "sinnvoll" on top setzen.
aber big thx, habe ich heute abend was zu tun +g*
lass dein winwaitactive weg und arbeite mit controlsend (bzw den IE_Functions, sofern nötig).
denke das prob liegt daran, zudem ist "send" ziemlich gefährlich, sofern die seite später nicht mehr aktiv ist, sendet autoit die zeichen wahllos an windows
$var = WinList()
[/autoit] [autoit][/autoit] [autoit]For $i = 1 to $var[0][0]
; Only display visble windows that have a title
If $var[$i][0] <> "" AND IsVisible($var[$i][1]) Then
$ProcessName = _ProcessGetName(WinGetProcess($var[$i][0]))
TrayCreateItem($ProcessName)
EndIf
Next
Func IsVisible($handle)
If BitAnd( WinGetState($handle), 2 ) Then
Return 1
Else
Return 0
EndIf
EndFunc
[/autoit]das müsste da rein ... doch dazu müsste noch, dass die TrayItems ne Variable bekommen, damit ich diese nachher ansprechen kann.
ja genau, danke ... das würde schonmal das eine "problem" lösen ...
aber wie bekomme ich nun die aktiven fenster ins traymenü?
und dass sich das auch aktualisiert ...