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

  • Ich suche einen Befehl für AutoIt

    • Micha_he
    • 31. März 2016 um 13:34

    Meinst Du hierhin ?

    control.exe /name Microsoft.DefaultPrograms /page pageFileAssoc

    oder hierher:

    control.exe /name Microsoft.DefaultPrograms /page pageDefaultProgram

    Quelle: https://msdn.microsoft.com/en-us/library/…DefaultPrograms

  • Winwows10, *.exe als angemeldeter User als Admin starten

    • Micha_he
    • 21. März 2016 um 09:09
    AutoIt
    #RequireAdmin
    #include <AutoItConstants.au3>
    ;#include <Constants.au3>
    
    
    Global $data
    Global $sFilename = @ScriptDir & "\resultat.txt"
    
    
    $DefragPath = " /c Defrag D: /A"
    $pid = Run(@ComSpec & $DefragPath, @SystemDir, @SW_HIDE, $STDIN_CHILD + $STDOUT_CHILD); Stdout
    Do
        $data &= StdOutRead($pid)
    Until @error
    $file = FileOpen($sFilename, 2)
    FileWrite($file, $data)
    FileClose($file)
    sleep(1000)
    ShellExecute($sFilename)
    Exit
    Alles anzeigen

    Zeile 2-3 musste ich bei mir austauschen, wahrscheinlich nutzt die aktuellste AutoIt-Version ein anderes Include
    Zeile 6+13+17 ShellExecute funktioniert nicht mit dem FileHandle

    Und wichtig: Muss auf einem 64bit-Windows auch mit x64 kompiliert ausgeführt werden. Scheinbar gibt es auf einem x64-System kein 32bit Defrag.exe.

  • CPU effektiver bei Script Ausführung einsetzten

    • Micha_he
    • 29. Februar 2016 um 14:51
    AutoIt
    ElseIf $i = $int*1.00 then

    und mir erschließt sich auch nicht der Grund, warum man einen festen Integerwert unendlich mal mit 1.00 multipliziert ?

  • CPU effektiver bei Script Ausführung einsetzten

    • Micha_he
    • 29. Februar 2016 um 14:34

    Ohne auf die grundlegende Arbeit der Funktion einzugehen, würde ich schätzen/raten das die Aktualisierung der GUI (GUICtrlSetData) mehr Zeit benötigt wie der restliche Teil !

    Ggf. würde ich die Progressbar nur aktualisieren, wenn sich der zu setzende Wert geändert hat.
    z.B.:

    AutoIt
    $new_perc = Int($perc * $i)
    If $new_perc <> $old_perc Then
    	GUICtrlSetData($pb_Progress,....)
    	$old_perc = $new_perc
    EndIf

    Statt 10Mio Änderungen nur noch 100 !

    Anschließend würde ich mir die 10Mio mal durchlaufende, ziemlich komplexe If...ElseIf-Anweisung anschauen. Die wird bei jedem Durchlauf geprüft und ich könnte mit vorstellen, das die mehrfache Prüfung der If-Anweisung doch schon etwas an Zeit verbraucht...

  • Datensicherung

    • Micha_he
    • 24. Februar 2016 um 13:14

    ohne mir das Script näher angesehen zu haben würde ich die Zeile wie folgt ändern, um Leerzeichen verarbeiten zu können:

    AutoIt
    $RoboCopy = RunWait('robocopy "' & $file1 & '" "' & $ziel & '" /FP /S /E /COPY:DAT /ZB /R:0 /W:0', "")
  • StringSplit Problem

    • Micha_he
    • 18. Februar 2016 um 08:06

    Weil das Array $var1 bei Eingabe eines kürzeren Codes keine 9 Felder hat, du sie aber in den Zeilen 13-21 einer neuen Variable zuweisen willst. Warum auch immer... ???

    So vielleicht... (ungetestet)

    Spoiler anzeigen
    AutoIt
    HotKeySet("{ESC}", "Terminate")
    
    
    Func Terminate()
        Exit
    EndFunc
    
    
    
    
    
    
    $Input = InputBox("Arbeitspositionen", "Bitte gib den Code für die Arbeitspositionen an", "", "", -1, -1, 0, 0)
    
    
    $var1 = StringSplit($Input,"")
    
    
    For $i = 1 To $var[0]
    	If $var1[$i] = 0 Then ShellExecuteWait ("nix" & $i & ".au3")
    	If $var1[$i] = 1 Then ShellExecuteWait ("5min" & $i & ".au3" )
    	If $var1[$i] = 2 Then ShellExecuteWait ("istsoll" & $i & ".au3" )
    	Sleep (300)
    Next
    Alles anzeigen
  • LOG Datei auslesen

    • Micha_he
    • 16. Februar 2016 um 07:48

    Readfile und Openfile sind umgekehrt anzuwenden, ansonsten funktioniert es so.... :D

  • run funktioniert nicht immer....

    • Micha_he
    • 20. Januar 2016 um 17:47

    Möglicherweise Leerzeichen im Pfad/Programm ?

  • #RequireAdmin bei unattened istallation von Veeam Endpoint Backup

    • Micha_he
    • 19. Januar 2016 um 09:30

    Kompiliertes 'Startsetup.exe' muss in die Gruppenrichtlinie (Computerkonfiguration\Windows-Einstellungen\Scripts\Starten) als Startscript, im gleichen Ordner muss die 'Install.ini' liegen. Nun könnte man die INI mit nem Texteditor bearbeiten, was aber nicht so komfortabel ist.

    Daher:
    In den gleichen Ordner muss auch der 'Editor_Startsetup' und 'Default_Befehle.ini'. Dieser Editor bearbeitet dann die 'Install.ini'.
    Im Quellcode des Editors ist mindestens in Zeile 46 die OU der Computer in der Domäne anzugeben.

    Wie gesagt, wurde schon eine ganze Weile nichts mehr an dem Programm geändert. Wäre wahrscheinlich einiges zu verbessern.

    Hier der Quellcode:

    Edit (20.01.2016): Fehler im Editor korrigiert.

    Dateien

    Startsetup.zip 243,2 kB – 407 Downloads
  • #RequireAdmin bei unattened istallation von Veeam Endpoint Backup

    • Micha_he
    • 18. Januar 2016 um 17:39

    Meine Frage bezog sich darauf, das eine Silent-Installation (inkl. #RequireAdmin) als Startscript per Domänen-Gruppenrichtlinie bei uns schon seit Jahren einwandfrei seinen Dienst tut.

    Durchzuführende Intallationen trägt ein (AutoIt-)Editor in eine INI, wobei die Zielrechner aus dem AD gelesen werden. Das eigentliche (AutoIt-)Startscript der Gruppenrichtlinie sucht nach Installationen für den aktuellen Rechner, führt diese noch unter dem Benutzer 'SYSTEM' lokal aus und schreib den Rückgabewert in ein Logfile. Alles ohne UAC-Nachfrage ! Während des Setup kann zwar keine MsgBox verwendet werden, aber der Benutzer bekommt eine Splash-Meldung zu sehen, was gerade abläuft.

    Notwendig sind nur Lesenrecht für die Domänencomputer auf der Freigabe wo die Setup's liegen und Schreibzugriff auf dem Logfile- und INI-Ordner (hier zum entfernen der gerade laufenden Installation).

    In der INI kann ein Admin sehen was noch aussteht (Rechner wurde noch nicht neu gestartet) und im Log welche Setup's gelaufen sind und mit welchem Ergebnis.

    Alles ohne teure Spezial-Software....

  • #RequireAdmin bei unattened istallation von Veeam Endpoint Backup

    • Micha_he
    • 18. Januar 2016 um 07:55

    Sprichst Du von einer Installation in der Domäne oder Einzel-AP ?

  • Standard-Zeit zwischen den Befehlen? (statt sleep)

    • Micha_he
    • 13. Januar 2016 um 13:55

    Für jeden Befehl - Glaube ich nicht.

    Für "Taste senden" und "Mouseklick's" siehe:

    AutoIt
    Opt("MouseClickDelay", xxx)
    Opt("SendKeyDelay", xxx)
  • Fehler bei include zip.au3

    • Micha_he
    • 4. Dezember 2015 um 14:27

    Test von _zip_count(), _zip_list() und _zip_unzipall() mit einem dafür erstellten einfachen (ohne Unterverzeichnisse) ZIP-Archives, zeigten unter Win7 x64 keine Probleme !

  • Fehler bei include zip.au3

    • Micha_he
    • 4. Dezember 2015 um 13:35

    Schau mal im englischen Forum unter: KLICK

    Dort hat die UDF auch bereits ein _ am Anfang des Dateinamens, woran man meist erkennen kann, das sie keine Standard-UDF des AutoIt-Paketes ist.

  • Fehler bei include zip.au3

    • Micha_he
    • 4. Dezember 2015 um 11:42

    Du weist aber schon (ich frage nur nach, auf Grund Deiner geringen Beitragsanzahl), das die Funktion _Zip_UnzipAll() wahrscheinlich in der Datei 'Zip.au3' definiert sein wird und das Du diese Datei 'Zip.au3' im AutoIt-Include-Ordner oder dem aktuellen Script-Verzeichnis zur Verfügung stellen musst !?

  • PartyPlayer

    • Micha_he
    • 30. November 2015 um 19:18

    Konnte beim ersten Test keine Auffälligkeiten feststellen. Externe USB-Sounkarte funktionierte einwandfrei.

    Ggf. wäre es noch von Vorteil, wenn man den Ort der Konfigurationsdateien festlegen könnte (für portablen Einsatz auf dem Stick).
    Z.B. wenn lokal im Ordner welche gefunden werden, das diesen Ordner nutzen, o.ä.

    Ansonsten: Sieht Top aus !!!

  • Intranet Java Anwendung starten

    • Micha_he
    • 17. Oktober 2015 um 14:40

    Java-Webstart heißt die Lösung.

    Findet sich als 'javaws.exe' nach der Installation von Java, in dessen Programordner.
    Dem brauchst Du meines Wissens nach, nur die JNLP-Datei (u.U. vorher downloaden) als Parameter übergeben...

  • Runwait, Probleme mit Darstellung von Anführungszeichen im String

    • Micha_he
    • 28. September 2015 um 16:08

    Sollte doch nicht kompliziert sein...

    AutoIt
    RunWait('"' & $pfad & '\PDFXCview.exe" /printto "' & $printer & '" "' & $source & '\' & $pdffile & '"')
  • Read file -> return Zeilennummer

    • Micha_he
    • 27. September 2015 um 20:04
    Zitat von horphi

    EIne Frage hab ich noch:

    Kann ich auch festlegen, ab welcher Zeile gesucht werden soll?

    Klar, mit etwas mehr Aufwand:

    AutoIt
    $sFile = FileOpenDialog("Datei ?", @ScriptDir, "Alle (*.*)")
    $sSearch = InputBox("Suchstring ?","Geben Sie den zu suchenden Text ein:")
    $iFromLine = InputBox("Ab Zeile ?","Geben Sie die Startzeile ein:", 1)
    $FileData = FileRead($sFile)
    $iStartPos = StringInStr($FileData, @LF, 0, $iFromLine - 1) + 1
    $sFound = StringLeft($FileData, StringInStr($FileData, $sSearch, 0, 1, $iStartPos))
    $sOut = StringReplace($sFound, @LF, "")
    Msgbox(0,"Ausgabe", "Gefunden in Zeile: " & @extended + 1)
  • Read file -> return Zeilennummer

    • Micha_he
    • 25. September 2015 um 08:59

    Meine Lösung:

    AutoIt
    $sFile = FileOpenDialog("Datei ?", @ScriptDir, "Alle (*.*)")
    $sSearch = InputBox("Suchstring ?","Geben Sie den zu suchenden Text ein:")
    
    
    $FileData = FileRead($sFile)
    $sFound = StringLeft($FileData, StringInStr($FileData, $sSearch))
    $sOut = StringReplace($sFound, @LF, "")
    
    
    Msgbox(0,"",@extended + 1)

    Edit: Zeilentrenner in @LF geändert. Ist dann auch Linux kompatibel.

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™