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

Beiträge von Oscar

  • Vorlage für ein Malprogramm mit AutoIt

    • Oscar
    • 1. Mai 2015 um 19:45

    Ich habe den Anhang jetzt neu hochgeladen! Siehe Post #1.

  • Forum Problemsammlung

    • Oscar
    • 30. April 2015 um 17:16

    Ich denke, dass das größte Problem die fehlenden Informationen über den Ist-Zustand sind.
    Die meisten User werden wohl noch irgendwelche Backups ihrer Scripte auf der eigenen Festplatte besitzen, aber die große Frage ist ja, ob es sich lohnt, bereits jetzt alles nochmal wieder hochzuladen oder kommt noch ein "Rollback" der Forensoftware auf einen alten Stand?
    Die meisten Probleme beim neu hochladen wird es wohl bei den Anhängen zu den Posts in "Hilfe und Unterstützung" geben. Da weiß man ja oft gar nicht ob und an welcher Stelle irgendwelche Scripte gepostet wurden.
    Zudem waren diese Hilfe-Scripte (zumindest bei mir) oft nur temporäre lokale Dateien, von denen ich kein Backup mehr besitze.
    Ein Verlust dieser ganzen Anhänge wäre somit quasi ein Neuanfang (die Suchfunktion wäre erfolg-/nutzlos für alle Ergebnisse vor der Umstellung).

    Ich kann durchaus verstehen, dass diese ganze Umstellung ziemlich viele Nerven gekostet hat und möglicherweise immer noch kostet, weil das nicht so reibungslos ablieft, wie man sich das wünschen würde.
    Ich kann auch verstehen, dass Gun-Food nicht seine ganze Freizeit ausschließlich mit dem wieder geradebiegen der Forumsoftware verbringen möchte.
    Es wäre aber schön, wenn es ab und zu Informationen über den momentanen Stand der Dinge geben würde.

  • Weihnachtsscripting-Challenge

    • Oscar
    • 30. April 2015 um 16:48

    Und ich denke, Du solltest vor dem antworten mal auf das Datum des Threads schauen.

  • Scritp bendet sich bzw. die Ergebnis GUI erscheint nicht (mehr)

    • Oscar
    • 16. April 2015 um 16:06

    Auszug aus der AutoIt-Hilfe zu v3.3.10.0 :

    Zitat

    _StringEncrypt() documentation has been removed. The function is still present in String.au3, but may be removed at a later date. Scripts should be updated to use the Crypt functions instead.Look at _Crypt_EncryptData() for an example of an alternative _StringEncrypt.

  • FTP Datei herunterladen

    • Oscar
    • 14. April 2015 um 11:30
    Zitat von Stiefel94

    Zu deinem zweiten Script (_DownloadWithProgress), wird da eine Progressbar angezeigt?

    Edit:

    @Oscar Ich habe nun beide Scripte von dir ohne Änderungen getestet. Aber sie laden leider beide die Datei nicht herunter. Das erste Skript zeigt mir nur den ToolTip an der Maus mit ( 0 / 0 KB) und das andere hängt sich bei der Ausführung in der GUI auf.

    Bei mir lädt er bei beiden die Datei runter und speichert sie im Scriptverzeichnis.
    Welche AutoIt-Version benutzt Du?
    Befindet sich das Script möglicherweise in einem schreibgeschützen Verzeichnis?

  • FTP Datei herunterladen

    • Oscar
    • 13. April 2015 um 19:03

    Oder Du benutzt meine UDF "_DownloadWithProgress" (siehe Anhang! Die Datei muss sich im Scriptverzeichnis befinden):

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

    #include '_DownloadWithProgress.au3'

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

    Global $sURL = 'ftp://ftp.adobe.com/pub/adobe/reader/win/11.x/11.0.00/de_DE/AdbeRdr11000_de_DE.msi'
    Global $sDownloadDir = @ScriptDir
    _DownloadWithProgress($sURL, $sDownloadDir)

    [/autoit]
  • FTP Datei herunterladen

    • Oscar
    • 13. April 2015 um 17:45

    Die zweite Frage zuerst: Ja, Du hast Fehler gemacht! Es fehlt #include <FTPEx.au3> und Du musst die Variable $FileNAME auch mit einem Dateinamen füllen und die Handles solltest Du auch wieder schließen!
    Aber um auch die erste Frage zu beantworten: Ja, es geht auch anders/leichter. Siehe hier:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <InetConstants.au3>
    #include <Misc.au3>
    #include <WinAPIMisc.au3>

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

    $sFilePath = @ScriptDir & '\AdbeRdr11000_de_DE.msi'
    $sInetPath = 'ftp://ftp.adobe.com/pub/adobe/reader/win/11.x/11.0.00/de_DE/AdbeRdr11000_de_DE.msi'
    $hDownload = InetGet($sInetPath, $sFilePath, $INET_FORCERELOAD, $INET_DOWNLOADBACKGROUND)
    $hDLL = DllOpen("user32.dll")
    $iTimer = TimerInit()
    Do
    If TimerDiff($iTimer) > 250 Then
    $iTimer = TimerInit()
    ToolTip(_WinAPI_StrFormatKBSize(InetGetInfo($hDownload, $INET_DOWNLOADREAD)) & ' / ' & _WinAPI_StrFormatKBSize(InetGetInfo($hDownload, $INET_DOWNLOADSIZE)))
    EndIf
    Sleep(10)
    If _IsPressed('1B', $hDLL) Then ExitLoop
    Until InetGetInfo($hDownload, $INET_DOWNLOADCOMPLETE)
    DllClose($hDLL)
    InetClose($hDownload)

    [/autoit]
  • FileMove. Wo liegt der Fehler ?

    • Oscar
    • 13. April 2015 um 13:49

    Versuch das mal mit Errorhandling:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    $sSourcePath = @ScriptDir & '\'
    $sDestinationPath = @ScriptDir & '\neu\'
    $hSearch = FileFindFirstFile($sSourcePath & '*.txt')
    If $hSearch = -1 Then Exit MsgBox(0, 'FileFindFirstFile', 'Fehler! Keine Datei gefunden!')
    $sFilename = FileFindNextFile($hSearch)
    If @error Then Exit MsgBox(0, 'FileFindNextFile', 'Fehler! Keine (weitere) Datei gefunden!')
    ConsoleWrite($sFilename & @CR)
    FileClose($hSearch)
    FileMove($sSourcePath & $sFilename, $sDestinationPath)

    [/autoit]
  • Labelausgabedatei

    • Oscar
    • 8. April 2015 um 07:18

    Wenn wirklich alle Daten so sind, wie in dem Beispiel, dann geht es so:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <Array.au3>
    $sFile = FileRead(@ScriptDir & '\from.txt')
    $aData = StringRegExp($sFile, '(\d{2}\.\d{2}\.\d{4}).+(\d{7}).+(\d{3})', 3)
    ;~ _ArrayDisplay($aData)
    $sOut = ''
    For $i = 0 To UBound($aData) - 1 Step 3
    $sOut &= $aData[$i] & @CRLF
    $sOut &= $aData[$i + 1] & @CRLF
    $sOut &= $aData[$i + 2] & @CRLF & @CRLF
    Next
    $hFile = FileOpen(@ScriptDir & '\ausgabe.csv', 2)
    If $hFile <> -1 Then
    FileWrite($hFile, $sOut)
    FileClose($hFile)
    EndIf

    [/autoit]

    Wenn die Zahlen aber nicht immer 7stellig / 3stellig sind, dann vielleicht lieber so:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <Array.au3>
    $sFile = FileRead(@ScriptDir & '\from.txt')
    $aData = StringSplit($sFile, @CRLF, 3)
    ;~ _ArrayDisplay($aData)
    Global $sOut = '', $aTmp
    For $sLine In $aData
    If $sLine <> '' Then
    $aTmp = StringSplit($sLine, '|', 2)
    $sOut &= $aTmp[0] & @CRLF
    $sOut &= $aTmp[2] & @CRLF
    $sOut &= $aTmp[3] & @CRLF & @CRLF
    EndIf
    Next
    $hFile = FileOpen(@ScriptDir & '\ausgabe.csv', 2)
    If $hFile <> -1 Then
    FileWrite($hFile, $sOut)
    FileClose($hFile)
    EndIf

    [/autoit]
  • Labelausgabedatei

    • Oscar
    • 7. April 2015 um 17:17

    Ich denke, das sollte kein großes Problem darstellen. Kannst Du mal eine Beispieldatei hochladen?

  • Galgenraten-Spiel (FullHD)

    • Oscar
    • 3. April 2015 um 11:59

    Durch die Forumsumstellung sind die Anhänge abhanden gekommen.
    Ich habe das mal neu hochgeladen (Post#1).

  • Forum Problemsammlung

    • Oscar
    • 2. April 2015 um 18:18

    Alle Beiträge sind doppelt vorhanden (einmal mit Text und den Antworten und einmal ohne Text)!
    Einige Beiträge habe ich gelöscht, weil ich dachte, dass es sich um fehlerhafte Beiträge handelt, aber das ist bei allen Beiträgen so.

  • BASS UDF / DLL: Equalizer mit Filtern; Stör-Geräusche meiden

    • Oscar
    • 27. März 2015 um 16:35

    Über den Sinn/Unsinn bestimmte (Bass-)Frequenzbereiche anzuheben kann man wohl ausgiebig streiten. ;)
    Wenn überhaupt würde es wohl in Form einer Dynamikkompression am Sinnvollsten sein. Also die lauten Passagen nicht anheben bzw. absenken und nur die leisen Passagen entsprechend anheben, um ein übersteuern (Clipping) zu verhindern.
    Ob sich das aber mit AutoIt und BASS realisieren lässt, weiss ich nicht.

  • String suchen

    • Oscar
    • 22. März 2015 um 16:44

    Es geht nicht darum, dass ich Dich anmeckern will, sondern darum, dass Du nicht gleich schreibst was Du eigentlich vorhast.
    Du verrennst Dich in Deinen Lösungsweg (der im übrigen nicht mal funktioniert) und dabei gibt es viel einfachere Möglichkeiten.
    Zuerst mal:
    Die Homepage, die Du da aufgetrieben hast, generiert die Uhrzeit per Javascript. Javascript ist aber eine Scriptsprache, die auf dem Clientrechner läuft.
    Demzufolge ist das nicht die "Atomuhrzeit", sondern die Uhrzeit auf Deinem Rechner. Windows gleicht zwar standardmäßig die interne Uhrzeit mit einem NTP-Server ab, aber da kann es schonmal zu kleinen Abweichungen kommen.
    Willst Du sehen wie groß die Abweichungen sind, wäre es einfacher sich die korrekte Uhrzeit selbst von einem NTP-Server zu holen.
    Hier mal ein Script dafür:

    Spoiler anzeigen
    [autoit]


    #include <Date.au3>
    $time = _TimeSync()
    MsgBox(0, '', 'Rechnerzeit:' & @TAB & _NowCalc() & @CRLF & 'Atomzeit: ' & @TAB & $time)

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

    ;**************************************************************************************************
    ; Ab hier beginnen die Funktionen, zum holen der Zeit aus dem Internet (Quelle: http://www.autoitscript.com/forum/)
    ;**************************************************************************************************
    Func _TimeSync()
    Local $ntpServer = '1.de.pool.ntp.org'
    UDPStartup()
    Dim $socket = UDPOpen(TCPNameToIP($ntpServer), 123)
    If @error <> 0 Then Return SetError(1)
    Local $status = UDPSend($socket, MakePacket('1b0e010000000000000000004c4f434ccb1eea7b866665cb00000000000000000000000000000000cb1eea7b866665cb'))
    ;~ Local $status = UDPSend($socket, MakePacket('1b0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'))
    If $status = 0 Then Return SetError(1)
    Local $data = '', $a = TimerInit() ; Timer setzen, damit im Fehlerfall die Schleife abgebrochen wird
    While $data = ''
    $data = UDPRecv($socket, 100)
    Sleep(100)
    If TimerDiff($a) > 1000 Then ExitLoop ; Wenn Timer > 1sek. (Fehler), dann Schleife verlassen
    WEnd
    If $data <> '' Then
    UDPShutdown()
    Local $unsignedHexValue = StringMid($data, 83, 8); Extract time from packet. Disregards the fractional second.
    Local $value = UnsignedHexToDec($unsignedHexValue)
    Local $TZinfo = _Date_Time_GetTimeZoneInformation()
    Local $TZoffset = -(UnsignedToLong($TZinfo[1]) + (UnsignedToLong($TZinfo[4]) * ($TZinfo[0] < 2)) + (UnsignedToLong($TZinfo[7]) * ($TZinfo[0] = 2)))
    Local $UTC = _DateAdd('s', $value, '1900/01/01 00:00:00')
    Return _DateAdd('n', $TZoffset, $UTC)
    EndIf
    SetError(1)
    EndFunc ;==>_TimeSync
    ;**************************************************************************************************
    Func MakePacket($d)
    Local $p = ''
    While $d
    $p &= Chr(Dec(StringLeft($d, 2)))
    $d = StringTrimLeft($d, 2)
    WEnd
    Return $p
    EndFunc ;==>MakePacket
    ;**************************************************************************************************
    Func UnsignedHexToDec($n)
    Local $ones = StringRight($n, 1)
    $n = StringTrimRight($n, 1)
    Return Dec($n) * 16 + Dec($ones)
    EndFunc ;==>UnsignedHexToDec
    ;**************************************************************************************************
    ; http://support.microsoft.com/kb/189323
    ; Gibt Die Zahl mit Vorzeichen zurück.
    ; Bei Fehler (kleiner 0 oder größer MAXINT_4) wird der übergebene Wert zurückgegeben und @error auf 1 gesetzt.
    Func UnsignedToLong($value)
    Local Const $OFFSET_4 = 4294967296
    Local Const $MAXINT_4 = 2147483647
    If $value < 0 Or $value >= $OFFSET_4 Then Return SetError(1, 0, $value) ;' Overflow
    If $value <= $MAXINT_4 Then
    Return $value
    Else
    Return $value - $OFFSET_4
    EndIf
    EndFunc ;==>UnsignedToLong
    ;**************************************************************************************************

    [/autoit]
  • Mit Autoit msg.exe ausführen! (Nachricht im Netzwerk versenden)

    • Oscar
    • 21. März 2015 um 11:53
    Zitat von paul2255

    Edit:
    Wenn ich das dann mit autoit ausführe, schreibt er mir dann in CMD-Fenster das er den befehl msg nicht kennt!?


    Kann es sein, dass Du das Programm nachträglich irgendwohin installiert hast?
    Such doch mal auf Deiner Platte danach und schreib, wo sich das Programm befindet (Pfad).

  • _Word_DocFindReplace Probleme

    • Oscar
    • 21. März 2015 um 08:25

    Natürlich liegt es am Pfad:

    [autoit]

    "C:\Users\@UserName\Desktop\Neuer Ordner\BestellformularVorlage"

    [/autoit]


    Du kannst nicht einfach das Macro "@UserName" in den String einfügen.
    Entweder musst Du den String mit "&" zusammensetzen:

    [autoit]


    $string = "C:\Users\" & @UserName & "\Desktop\Neuer Ordner\BestellformularVorlage"
    ConsoleWrite($string & @CR)

    [/autoit]


    oder die AutoIt-Option "ExpandVarStrings" auf "1" setzen:

    [autoit]


    Opt("ExpandVarStrings", 1)
    $string = "C:\Users\@UserName@\Desktop\Neuer Ordner\BestellformularVorlage"
    ConsoleWrite($string & @CR)

    [/autoit]


    im letzteren Fall musst Du aber nach dem Macro noch ein "@" setzen.

  • Mit Autoit msg.exe ausführen! (Nachricht im Netzwerk versenden)

    • Oscar
    • 21. März 2015 um 08:14

    Das Programm ("msg.exe") gibt es in der Home Premium Version von Win7 gar nicht: http://windows-hilfe-forum.de/f32/unter-wind…-1083/#post5403

  • Script interne Kommentare per Buttonklick anzeigen lassen?

    • Oscar
    • 20. März 2015 um 19:00

    Ja, ok! Kompiliert geht's nicht, aber wenn Du das Script mit einbindest ("#AutoIt3Wrapper_Res_SaveSource=y"), dann geht es schon:

    Spoiler anzeigen
    [autoit]


    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Res_SaveSource=y
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs Changelog:
    + Version 1.0.00 bis 1.0.12
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad

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

    + Version 1.0.13 bis 1.0.26
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad

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

    + Version 1.0.27 bis 1.0.38
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad

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

    + Version 1.0.39 bis 1.0.43
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad
    #ce

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

    Global $sChangelog = StringRegExpReplace(FileRead(@ScriptFullPath), '(?i)(?s).*?#cs(.+?)#ce.+', '$1')
    MsgBox(0, 'Changelog', $sChangelog)

    [/autoit]
  • Script interne Kommentare per Buttonklick anzeigen lassen?

    • Oscar
    • 20. März 2015 um 18:36

    Ja, das ist möglich:

    Spoiler anzeigen
    [autoit]


    #cs Changelog:
    + Version 1.0.00 bis 1.0.12
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad

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

    + Version 1.0.13 bis 1.0.26
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad

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

    + Version 1.0.27 bis 1.0.38
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad

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

    + Version 1.0.39 bis 1.0.43
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - afclkjafcla löasfpaosfdnw asoidu
    - adad jksdjasfda wedada92 a
    - asfdacajfztai aofdaiwrqn
    - acalfsd apfda9wer qwpfd9aqwn awdp9awd asdajfdaö
    - asfcaf adalksdha aspfdouad
    #ce

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

    Global $sChangelog = StringRegExpReplace(FileRead(@ScriptFullPath), '(?i)(?s).*?#cs(.+?)#ce.+', '$1')
    MsgBox(0, 'Changelog', $sChangelog)

    [/autoit]
  • Mit Autoit msg.exe ausführen! (Nachricht im Netzwerk versenden)

    • Oscar
    • 20. März 2015 um 17:15

    Nee funzt nicht! Bitte um Script!

    Edit:
    Achso, es geht gar nicht um ein eigenes Script, sondern um "msg.exe" von MicroSoft. :rolleyes:
    Aber was soll an "funzt nicht..." eine Fehlerbeschreibung sein? ?(

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™