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. Micha_he

Beiträge von Micha_he

  • Event Log Tool

    • Micha_he
    • 6. Januar 2010 um 17:25
    Zitat von SEuBo


    Du solltest den Code schon auf die neue AutoIt Version 3.3.2.0 anpassen. Da gibts nämlich kein AdlibEnable mehr.

    Nicht alle können es sich erlauben, ständig auf die neuste Version zu aktualisieren.

    Wenn man zwei, drei größere "Projekte" am Laufen hat, ist es manchmal angebracht die Umstellung etwas zu verschieben.

    Lieder ändern sich immer wieder die Funktionsnamen von einer zur anderen Version und ein Updatetool, wo man einfach sein Script durchschickt, gibt es ja meines Wissen nach nicht. Also muss man halt dann die Funktionen von Hand anpassen und das dauert halt manchmal. Bei mir läuft deswegen z.Zt. auch noch die 3.3.0.0.

  • GetMonitor-Funktion testen

    • Micha_he
    • 5. Januar 2010 um 12:17

    So einen festen "PixelPerInch"-Wert gibt es doch nicht.

    Der ist bei Röhrenmonitoren von der Lochmaske und bei modernen LCD's vom physikalischen Aufbau des Panels abhängig.
    Es gibt ja LCD's mit ein und derselben Pixelzahl, aber in verschiedenen Größen !

  • CLI Parameter auslesen

    • Micha_he
    • 4. Januar 2010 um 21:03

    Du solltest vielleicht einmal die AutoIt-Hilfe lesen.

    Hier ein Tip: StdOutRead

  • aus einer textdatei drittletzte Zeile lesen

    • Micha_he
    • 2. Januar 2010 um 19:54

    Also erklären kann ich das auch nicht besser als Du. War schon verständlich ;)

    Oder sollte man Dir bei irgendetwas helfen ? Dann solltest Du mal genau schreiben, was Du möchtest.

  • RAR Verstecker

    • Micha_he
    • 2. Januar 2010 um 11:25

    Das Programm als RAR-Verschlüsseler zu bezeichnen, ist aber schon etwas hoch gegriffen.
    Ich würde eher sagen es versucht eine RAR-Datei zu verstecken !

  • Organize Includes

    • Micha_he
    • 2. Januar 2010 um 00:14
    Zitat von Oscar

    Ich weiß jetzt nicht, ob Xeno vorhat, das Tool universell nutzbar zu machen, aber wenn Dir vielleicht mein kleines Script ausreicht:

    Das ist nicht mit OI zu vergleichen, da es viel weniger Funktionen bietet, aber ein schnelles einfügen (per Clipboard) der benötigten Includes funktioniert.
    Das Tool lässt sich per Commandozeile aufrufen. Zum Beispiel: ClipPutIncludes -beta -s "Scriptfile.au3"

    Nicht schlecht. Ist zwar etwas "sprachlos" Dein Script (die ConsoleWrite-Ausgaben sehe ich ja nicht) aber es tun seinen Zweck.

    Nur hatte ich immer Programmabbrüche mit Deiner Version, wenn es im Script nichts zu includen gab. Das Array war halt nicht vorhanden.
    Aber den Fehler mal abgefangen. Hier die aktualisierte (Zeile 71ff) Version:

    ClipPutIncludes
    [autoit]

    #NoTrayIcon
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Change2CUI=y
    #AutoIt3Wrapper_Res_Description=ClipPutIncludes
    #AutoIt3Wrapper_Res_Fileversion=1.0.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=by Oscar (http://www.autoit.de)
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

    [/autoit] [autoit][/autoit] [autoit]

    #Region ;**** Includes created by ClipPutIncludes ****
    #include <Array.au3>
    #include <File.au3>
    #EndRegion ;**** Includes created by ClipPutIncludes ****

    [/autoit] [autoit][/autoit] [autoit]

    Global $sTitle = 'ClipPutIncludes v1.0'

    [/autoit] [autoit][/autoit] [autoit]

    Global $sRegKey = 'HKEY_LOCAL_MACHINE64\SOFTWARE\', $sStablePath, $sStableError, $sBetaPath, $sBetaError
    If @OSArch <> 'X86' Then $sRegKey &= 'Wow6432Node\'
    $sStablePath = RegRead($sRegKey & 'AutoIt v3\AutoIt', 'InstallDir')
    $sStableError = @error
    $sBetaPath = RegRead($sRegKey & 'AutoIt v3\AutoIt', 'betaInstallDir')
    $sBetaError = @error

    [/autoit] [autoit][/autoit] [autoit]

    Global $oDictStable = ObjCreate('Scripting.Dictionary')
    Global $oDictBeta = ObjCreate('Scripting.Dictionary')
    If Not IsObj($oDictStable) Or Not IsObj($oDictBeta) Then Exit ConsoleWrite("ERROR! Can't create Scripting.Dictionary!" & @CRLF)

    [/autoit] [autoit][/autoit] [autoit]

    Global $iTimeDiff, $iTimer1, $iTimer2, $aRequired, $sOut
    Global $sSourcePath, $sUseAutoItVersion = 'stable'

    [/autoit] [autoit][/autoit] [autoit]

    If $CmdLine[0] = 0 Then
    $sSourcePath = FileOpenDialog($sTitle, @WorkingDir & '\', 'AutoIt-Script (*.au3)', 3)
    If @error Then Exit ConsoleWrite('ERROR! Scriptfile not found!' & @CRLF)
    Else
    For $i = 1 To $CmdLine[0]
    If $CmdLine[$i] = '-stable' Then $sUseAutoItVersion = 'stable'
    If $CmdLine[$i] = '-beta' Then $sUseAutoItVersion = 'beta'
    If $CmdLine[$i] = '-s' And $CmdLine[0] > $i Then $sSourcePath = $CmdLine[$i + 1]
    Next
    If $sSourcePath = '' Then
    $sSourcePath = FileOpenDialog($sTitle, @WorkingDir & '\', 'AutoIt-Script (*.au3)', 3)
    If @error Then Exit ConsoleWrite('ERROR! Scriptfile not found!' & @CRLF)
    EndIf
    If Not FileExists($sSourcePath) Then Exit ConsoleWrite('ERROR! Scriptfile not exists!' & @CRLF)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $iTimer1 = TimerInit()
    ConsoleWrite('# Start: Read Includes' & @CRLF)
    Switch $sUseAutoItVersion
    Case 'stable'
    If $sStableError Then Exit ConsoleWrite('ERROR! AutoIt (stable) not installed!' & @CRLF)
    _GetIncludeFuncsAndVars($sStablePath & '\Include', $oDictStable)
    Case 'beta'
    If $sBetaError Then Exit ConsoleWrite('ERROR! AutoIt (beta) not installed!' & @CRLF)
    _GetIncludeFuncsAndVars($sBetaPath & '\Include', $oDictBeta)
    EndSwitch
    $iTimeDiff = Int(TimerDiff($iTimer1))
    ConsoleWrite('# Read Includes complete: ' & $iTimeDiff & ' ms' & @CRLF)

    [/autoit] [autoit][/autoit] [autoit]

    $iTimer2 = TimerInit()
    ConsoleWrite('# Start: Analyse Script' & @CRLF)
    Switch $sUseAutoItVersion
    Case 'stable'
    $aRequired = _GetRequiredIncludes($sSourcePath, $oDictStable)
    If @error = 2 Then Exit ConsoleWrite("ERROR! Can't open Scriptfile!" & @CRLF)
    Case 'beta'
    $aRequired = _GetRequiredIncludes($sSourcePath, $oDictBeta)
    If @error = 2 Then Exit ConsoleWrite("ERROR! Can't open Scriptfile!" & @CRLF)
    EndSwitch
    ConsoleWrite('# Analyse Script complete: ' & Int(TimerDiff($iTimer2)) & ' ms' & @CRLF)
    ConsoleWrite('# Totaltime: ' & Int(TimerDiff($iTimer1)) & ' ms' & @CRLF)
    If IsArray($aRequired) Then
    $aRequired = _ArrayUnique($aRequired)
    ConsoleWrite('# Copy includes to Clipboard!' & @CRLF)
    $sOut = '#Region ;**** Includes created by ClipPutIncludes ****' & @CRLF
    For $i = 1 To $aRequired[0]
    $sOut &= $aRequired[$i] & @CRLF
    Next
    $sOut &= '#EndRegion ;**** Includes created by ClipPutIncludes ****' & @CRLF
    ClipPut($sOut)
    Else
    ConsoleWrite('# No required includes found !' & @CRLF)
    EndIf
    ConsoleWrite('# Ready.' & @CRLF)
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    Func _GetIncludeFuncsAndVars($sPath, ByRef $oDict)
    If Not IsObj($oDict) Then Return SetError(1, 0, 0)
    Local $aIncludeFiles, $aAll[1][2], $sFile, $aTmp, $iCount
    $aIncludeFiles = _FileListToArray($sPath, '*.au3', 1)
    If @error Then Return SetError(2, 0, 0)
    For $i = 1 To $aIncludeFiles[0]
    $sFile = FileRead($sPath & '\' & $aIncludeFiles[$i])
    $aTmp = StringRegExp($sFile, '(?s)(?:Global|Global Const) (\$.+?)(?:\;|\,|\h)', 3)
    If IsArray($aTmp) Then
    For $j = 0 To UBound($aTmp) - 1
    If Not $oDict.Exists($aTmp[$j]) Then $oDict.add($aTmp[$j], $aIncludeFiles[$i])
    Next
    EndIf
    $aTmp = StringRegExp($sFile, '(?s)\vFunc (.+?)\h*\(', 3)
    If IsArray($aTmp) Then
    For $j = 0 To UBound($aTmp) - 1
    If Not $oDict.Exists($aTmp[$j]) Then $oDict.add($aTmp[$j], $aIncludeFiles[$i])
    Next
    EndIf
    Next
    EndFunc ;==>_GetIncludeFuncsAndVars

    [/autoit] [autoit][/autoit] [autoit]

    Func _GetRequiredIncludes($sScriptPath, ByRef $oDict)
    If Not IsObj($oDict) Then Return SetError(1, 0, 0)
    Local $sFile, $sOut
    $sFile = FileRead($sScriptPath)
    If @error Then Return SetError(2, 0, 0)
    For $strKey In $oDict.Keys
    If StringRegExp($sFile, StringReplace($strKey, '$', '\$')) Then
    ConsoleWrite(StringFormat(' %-40s -> %-40s', $strKey, $oDict.Item($strKey)) & @CR)
    $sOut &= '#include <' & $oDict.Item($strKey) & '>' & '|'
    EndIf
    Next
    If $sOut = '' Then Return
    Return StringSplit(StringTrimRight($sOut, 1), '|', 2)
    EndFunc ;==>_GetRequiredIncludes

    [/autoit]
  • RegistrySchlüssel für Installation

    • Micha_he
    • 1. Januar 2010 um 23:44

    In "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\".

  • Parameterübergabe

    • Micha_he
    • 1. Januar 2010 um 23:42

    Sollte aber vom Prinzip und mal abgesehen vom restlichen Programm funktionieren.

    Unter Umständen findet es das "load.exe" im aktuellen Arbeitsverzeichnis nicht. Gib es mal mit kompletten Pfad ein oder setzt das Arbeitsverzeichnis mittels "FileChangeDir()" auf den Ordner, worin sich das "load.exe" befindet.

  • Organize Includes

    • Micha_he
    • 1. Januar 2010 um 14:27

    Ich nutze zum Schreiben von AutoIt-Quellcode den Crimson-Editor.

    Ist es auch möglich, "Organize Includes" ohne SciTE zu nutzen ?
    Commandline-Parameter habe ich keine gefunden und eine Oberfläche öffnet sich bei Start per Doppelklick nicht.

    Besten Dank
    micha_he

  • We aRe oNe - Webradioplayer

    • Micha_he
    • 30. Dezember 2009 um 15:59

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Scheint unter WinXP noch nicht soll toll zu funktionieren ! Kein AERO-Effekt sichtbar !
    Oder geht der Player erst ab Vista ?

    Bilder

    • Fehler.jpg
      • 6,64 kB
      • 250 × 145
  • Einige Fragen

    • Micha_he
    • 30. Dezember 2009 um 15:48
    Zitat von Helveticus

    Ist denn autoit auch stabil? Also ich meine, dass die Skritpe auch wirklich ausgeführt werden und perfekt laufen.

    Programme und Scripte sind immer so stabil wie der Ersteller sie programmiert.

    Es wird auch unter AutoIt instabile Programme/Scripte geben, wobei dies meist an
    der schlechten Programmierung des Autors liegt. Diese Problem wirst Du aber auch
    mit C nicht ändern ;)

  • We aRe oNe - Webradioplayer

    • Micha_he
    • 29. Dezember 2009 um 22:06

    Ich kann auch nirgends eine "aero.au3" finden !

    Und fremde EXE-Datei führe ich "nur so zum Spaß" grundsätzlich nicht aus.

    Gruß
    micha_he

  • Script auf Remotemaschine gibt Inaktiv zurück

    • Micha_he
    • 29. Dezember 2009 um 21:58

    Ich würde mal behaupten:

    - keine Anmeldung
    - also kein Desktop
    - also auch kein Fenster
    - wie soll also WinActivate ein Fenster auf einem nicht vorhanden Desktop aktivieren ?
    - wie soll also Send etwas an ein nicht vorhandes/aktives Fenster, auf einem nicht vorhandenen Dekstop senden ?

    Gruß
    micha_he

  • Dateien löschen die älter als 90 Tage sind

    • Micha_he
    • 28. Dezember 2009 um 15:11

    Oscar :

    Zitat

    kann man ab AutoIt-Version 3.3.2.0 jetzt so schreiben:

    Das mag sein. Ich habe das Script nur aus den Unmengen von älteren Ideen und Umsetzungen herausgegraben und dabei nicht auf die Aktualität geachtet.

    Zitat

    Die Idee mit dem löschen des leeren Verzeichnisses hatte ich auch erst, aber dann dachte ich, eigentlich will man doch nur die alten Dateien loswerden, nicht die Ordnerstruktur.

    Das ist natürlich auch richtig. Aber wie Du vielleicht aus den Default-Verzeichnissen erkannt hast, dient(e) das Script zum Aufräumen von Ordner. Unter anderem von Ordner auf denen User Ihrer Spielereien ausgelebt haben :D

  • Dateien löschen die älter als 90 Tage sind

    • Micha_he
    • 28. Dezember 2009 um 13:09

    dann will ich aber auch noch "DAODelete" vorstellen :

    Spoiler anzeigen
    [autoit]

    ; Programmname: DOADelete.au3
    ; Version: 1.01
    ; geschrieben von: micha_he
    ; geschrieben am: 07.07.2007
    ;
    ; Beschreibung:
    ;
    ; Das Programm dient dazu Ordner und Dateien die ein gewisses
    ; Alter erreicht haben, zu löschen.
    ;
    ; Der Programmaufruf lautet wie folgt:
    ;
    ; DOADelete.exe [Alter in Tagen (optional)] [Ordner 1 (optional)] [Ordner X (optional)]

    [/autoit] [autoit][/autoit] [autoit]

    AutoItSetOption ("MustDeclareVars",1)

    [/autoit] [autoit][/autoit] [autoit]

    #include <date.au3>
    Dim $i, $Ordner, $Alter, $AnzahlPfade

    [/autoit] [autoit][/autoit] [autoit]

    If $CmdLine[0] > 0 Then
    If Number($CmdLine[1]) > 0 Then
    $alter = $CmdLine[1]
    Else
    $alter = 1
    EndIf
    Else
    $alter = 1
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $CmdLine[0] > 1 Then
    $AnzahlPfade = $CmdLine[0] - 1
    Dim $Pfad[$AnzahlPfade]
    For $i = 0 to $AnzahlPfade - 1
    $pfad[$i] = $CmdLine[$i + 2]
    Next
    Else
    $AnzahlPfade = 7
    Dim $pfad[$AnzahlPfade]
    $pfad[0] = @userprofiledir & "\Netzwerkumgebung\"
    $pfad[1] = @userprofiledir & "\Temporary Internet Files\"
    $pfad[2] = @userprofiledir & "\Local Settings\Temp\"
    $pfad[3] = @userprofiledir & "\Lokale Einstellungen\Temp\"
    $pfad[4] = @userprofiledir & "\Lokale Einstellungen\Temporary Internet Files\"
    $pfad[5] = @windowsdir & "\Temp\"
    $pfad[6] = @windowsdir & "\Temporary Internet Files\"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    for $i = 0 to $AnzahlPfade - 1
    $ordner = $pfad[$i]
    _DateiLoeschenRekursiv($ordner,$alter)
    next

    [/autoit] [autoit][/autoit] [autoit]

    ; Ende Hauptprogramm

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Hier beginnt die Löschfunktion "_DateiLoeschenRekursiv()"
    Func _DateiLoeschenRekursiv($ordner, $alter)
    Dim $dat, $datcalc, $datdiff, $search, $search2, $file
    If StringRight($ordner,1) <> "\" Then $ordner &= "\"
    $search = FileFindFirstFile($ordner & "*.*")
    While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
    If StringInStr(FileGetAttrib($ordner & $file),"D") > 0 Then
    _DateiLoeschenRekursiv($ordner & $file & "\", $alter)
    $search2 = FileFindFirstFile($ordner & $file & "\*.*")
    If @error = 1 then
    FileClose($search2)
    FileSetAttrib ($ordner & $file,"-RSH")
    DirRemove($ordner & $file)
    EndIf
    Else
    $dat = FileGetTime($ordner & $file,0,1)
    $datcalc = StringMid($dat,1,4) & "/" & StringMid($dat,5,2) & "/" & StringMid($dat,7,2) & " " & StringMid($dat,9,2) & ":" & StringMid($dat,11,2) & ":" & StringMid($dat,13,2)
    $datdiff = _DateDiff("D",$datcalc,_NowCalc())
    If $datdiff >= $alter then
    FileSetAttrib ($ordner & $file,"-RSH")
    FileDelete($ordner & $file)
    EndIf
    Endif
    Wend
    FileClose($search)
    Endfunc
    ; Ende der Funktion

    [/autoit]
  • Noteside - Notizen

    • Micha_he
    • 24. Dezember 2009 um 22:33

    Ich habe es mir auch mal (kurz) angesehen, ob es etwas ist, was ich unbedingt benutzen sollte.
    ....
    ich steige da aber auch nicht durch. Muss leider "ubuntu" Recht geben.

    Und in Deiner "Kurzanleitung" beim Programmstart: "Fragen" wird mit "a" geschrieben.

    Gruß
    micha_he

  • Links öffnen

    • Micha_he
    • 19. Dezember 2009 um 14:10

    Ich bin zwar etwas zu spät, habe aber auch eine Lösung mit dem IE:

    Spoiler anzeigen
    [autoit]

    #include <IE.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Dim $site[11] = ["http://www.bankergame.de/certificate/28c…2ab84bff3d1f1a6","http://www.bankergame.de/certificate/772ad75fc13e5dffc47c79dc9","http://www.bankergame.de/certificate/d023292ca54b64f79c1fd0c9f","http://www.bankergame.de/certificate/59490e1b0cadeb930715628a3","http://www.bankergame.de/certificate/0983e6caec8067ae0a1134067","http://www.bankergame.de/certificate/f69d202d0fedbc63bf1d0668b","http://www.bankergame.de/certificate/09c1fbac023e97db1a3486050","http://www.bankergame.de/certificate/4d4e7431540d7326b9dd868ee","http://www.bankergame.de/certificate/fe8feab4ab1b12342451c0f12","http://www.bankergame.de/certificate/d5843e576073b8d73ffc0ba59","http://www.bankergame.de/certificate/b840c1c1c335fa8360859232e"]

    [/autoit] [autoit][/autoit] [autoit]

    $oIE = _IECreate ("about:blank")
    For $i=0 To UBound($site)-1
    _IENavigate ($oIE, $site[$i])
    Sleep(5000)
    Next

    [/autoit]
  • Links öffnen

    • Micha_he
    • 19. Dezember 2009 um 13:56

    1. Dim fehlte
    2. " vor dem 1. Objekt und nach dem letzten Objekt fehlte

    und dann sieht es so aus:

    Spoiler anzeigen
    [autoit]

    Sleep(4000)

    [/autoit] [autoit][/autoit] [autoit]

    Dim $site[11] = ["http://www.bankergame.de/certificate/28c…2ab84bff3d1f1a6","http://www.bankergame.de/certificate/772ad75fc13e5dffc47c79dc9","http://www.bankergame.de/certificate/d023292ca54b64f79c1fd0c9f","http://www.bankergame.de/certificate/59490e1b0cadeb930715628a3","http://www.bankergame.de/certificate/0983e6caec8067ae0a1134067","http://www.bankergame.de/certificate/f69d202d0fedbc63bf1d0668b","http://www.bankergame.de/certificate/09c1fbac023e97db1a3486050","http://www.bankergame.de/certificate/4d4e7431540d7326b9dd868ee","http://www.bankergame.de/certificate/fe8feab4ab1b12342451c0f12","http://www.bankergame.de/certificate/d5843e576073b8d73ffc0ba59","http://www.bankergame.de/certificate/b840c1c1c335fa8360859232e"]

    [/autoit] [autoit][/autoit] [autoit]

    For $i=0 To UBound($site)-1
    ShellExecute($site[$i])
    Next

    [/autoit]
  • [spiel] Autoit.de kann nicht bis 100 zählen

    • Micha_he
    • 19. Dezember 2009 um 00:01

    gizfnüfdnuierd

    Edit: Eh, das war zeitgleich ! Das zählt doch noch, oder ?

  • [spiel] Autoit.de kann nicht bis 100 zählen

    • Micha_he
    • 18. Dezember 2009 um 23:45

    38

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™