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

Beiträge von x0r

  • Ini: Alle Sectionen nach Wert durchsuchen

    • x0r
    • 24. März 2015 um 10:46

    in so einem Moment denk ich mir: Komm her und machs doch einfach besser ;)

  • Ini: Alle Sectionen nach Wert durchsuchen

    • x0r
    • 24. März 2015 um 10:20

    User.dll => user_id=user_name

    Hat den einfachen Sinn, wenn einer der Mitarbeiter seine ID bei anderen Namen einfügt, kann er die Stempelzeiten des jeweiligen sehen. Um da Manipulationen vorzubeugen, nenn ich die ini in dll und setz damit vorraus, dass die Leute zu "doof" sind, um dlls mit Textdateien zu öffnen ;)

  • Ini: Alle Sectionen nach Wert durchsuchen

    • x0r
    • 24. März 2015 um 08:10

    Hi,

    meine inis sind teilweise als *.dll gespeichert, macht gar keinen Unterschied, arbeite einfach so, als wäre es eine normale ini.

    Fügst halt einfach jeweils beim ein- und auslesen ein Leerzeichen ein bzw nimmst es weg mit

    [autoit]

    StringTrimLeft()

    [/autoit]

    oder

    [autoit]

    StringTrimRight()

    [/autoit]

    .

    So würds ich jedenfalls machen :)

    Gruß,
    x0r

  • Umlaute in Msgbox

    • x0r
    • 23. März 2015 um 13:27

    Andy:

    [autoit]

    $Meldung[0] = BinaryToString($Meldung[0], 4);UTF8

    [/autoit]

    Hättest du mir das nicht schon vor 3 Jahren mitteilen können? :D

  • Umlaute in Msgbox

    • x0r
    • 23. März 2015 um 13:21

    _HTML.au3 ist bei mir INet.au3

    z.b.:

    [autoit]


    #include <inet.au3>
    #include <String.au3>

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

    Local $sHTML = _INetGetSource("http://www.zks-abfall.de/DE/Home/homepage__node.html?__nnn=true")

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

    Sleep(1000)

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

    Local $Meldung = _StringBetween($sHTML, '<p class="MsoNormal">', '</p>'); Störmeldung auslesen

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

    for $i = 0 to UBound($Meldung)-1
    $Meldung[$i] = StringReplace($Meldung[$i], "ä", "ä")
    $Meldung[$i] = StringReplace($Meldung[$i], "ö", "ö")
    Next

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

    ConsoleWrite("Meldung: " & $Meldung[0] & @CRLF)

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

    MsgBox(64, "ZKS Meldung:", $Meldung[0])

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Problem | Inhalt der Inpubox per E-Mail versenden

    • x0r
    • 16. März 2015 um 14:27

    Hi,

    bissl spät, aber besser als nie :D

    Sowas hab ich mir mal für die Firma hier intern gebaut, hat wunderbar funktioniert:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    $Gui = GUICreate("Send E-Mail", 576, 494, 192, 114, -1, $WS_EX_ACCEPTFILES )
    $Label1 = GUICtrlCreateLabel("Von:", 16, 16, 26, 17)
    $von = GUICtrlCreateInput(StringReplace(@UserName,"_",".") & "@blubb.com", 48, 8, 433, 21)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $an = GUICtrlCreateInput(StringReplace(@UserName,"_",".") & "@blubb.com", 48, 32, 433, 21)
    $Label2 = GUICtrlCreateLabel("An:", 16, 40, 20, 17)
    $sub = GUICtrlCreateInput("", 48, 136, 513, 21)
    $Label3 = GUICtrlCreateLabel("Betreff:", 8, 144, 38, 17)
    $Label4 = GUICtrlCreateLabel("Text:", 8, 208, 28, 17)
    $text = GUICtrlCreateEdit("", 48, 208, 513, 273)
    $send = GUICtrlCreateButton("Senden", 488, 8, 75, 45, $WS_GROUP)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $clear = GUICtrlCreateButton("Löschen", 488, 72, 75, 45, $WS_GROUP)
    $Label5 = GUICtrlCreateLabel("CC:", 16, 80, 21, 17)
    $Label6 = GUICtrlCreateLabel("BCC:", 16, 104, 28, 17)
    $cc = GUICtrlCreateInput("", 48, 72, 433, 21)
    $bcc = GUICtrlCreateInput("", 48, 96, 433, 21)
    $Label7 = GUICtrlCreateLabel("Anhang:", 0, 184, 44, 17)
    $anhang = GUICtrlCreateInput("", 48, 176, 513, 21)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED)
    GUISetState(@SW_SHOW)

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

    dim $mail, $blubb = 1

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $send
    GUICtrlSetState($send,$GUI_DISABLE)
    sendit()
    Case $clear
    GUICtrlSetState($send,$GUI_DISABLE)
    GUICtrlSetData($an,"")
    ;GUICtrlSetData($von,"")
    GUICtrlSetData($cc,"")
    GUICtrlSetData($bcc,"")
    GUICtrlSetData($sub,"")
    GUICtrlSetData($text,"")
    $blubb = 1
    EndSwitch

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

    if GUICtrlRead($an) <> "" and GUICtrlRead($von) <> "" and $blubb = 1 Then
    GUICtrlSetState($send,$GUI_ENABLE)
    $blubb = 0
    EndIf
    WEnd

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

    func sendit()

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

    $mail = ObjCreate("CDO.Message")

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

    With $mail

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

    $mail.From = GUICtrlRead($von)
    $mail.To = GUICtrlRead($an)
    $mail.Subject = GUICtrlRead($sub)

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

    $asdf = GUICtrlRead($text)

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

    $mail.HTMLBody = $asdf

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

    ;if GUICtrlRead($anhang) <> "" Then $mail.AddAttachment = GUICtrlRead($anhang)

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

    $mail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    $mail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "192.168.10.232"
    $mail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    $mail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 0

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

    $mail.Configuration.Fields.Update

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

    $mail.Send

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

    EndWith

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

    MsgBox(64,"Erfolg","Email gesendet.",1)
    GUICtrlSetState($send,$GUI_ENABLE)

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

    EndFunc

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

    Damit konntest du sogar den "Absender" fälschen (nicht im Quelltext der Nachricht!) :D

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • x0r
    • 16. März 2015 um 11:53

    Ab dem 14.03.2015 verbiete ich es, meinen Player als Basis für einen neuen Player zu verwenden, der dann ohne meine Erlaubnis veröffentlicht wird.

    Junge... Dann kompilier das Ding und behalt den Source für dich, so toll kann das Teil gar nicht sein, wenn schon so ein Satz drunter steht. Die Alternative wäre, etwas weniger "Fishing for compliments" zu betreiben und es erst gar nicht zu veröffentlichen.

    €dit:
    Q.E.D. (siehe Anhang)

  • unerklärliches Verhalten von Msgbox

    • x0r
    • 16. März 2015 um 08:22

    "Cleanup is a command line utility that deletes files older than a given age." < Ach sowas gibts? Ich hatte mir mal selbst sowas gebaut, für das SQL-Backup. "Lösche alle Dateien älter als 21 Tage"..

    Jedenfalls habs auch ich mal getestet, aber nicht mit ner echten CmdLine, sondern nur mit Array:

    [autoit]


    dim $CmdLines[3]

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

    $CmdLines[0] = 2
    $CmdLines[1] = "C:\Users\blablabla\AppData\Roaming\HeidiSQL"
    $CmdLines[2] = "C:\Users\blablabla\AppData\Roaming\HeidiSQL\12-23-45-1234567890"

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

    $mld = "Das bestehende Benutzerverzeichnis wurde umbenannt in:" & @CRLF & _
    " " & CHR(34) & $CmdLines[1] & CHR(34) & @CRLF & @CRLF & @CRLF & _
    "xxx wird jetzt neu gestartet, dabei wird automatisch ein neues xxx-Benutzerverzeichnis:" & @CRLF & @CRLF & _
    CHR(34) & $CmdLines[2] & CHR(34) & @CRLF & "erstellt." & @CRLF & _
    @CRLF & @CRLF & @CRLF & _
    "Hinweis:" & @CRLF

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

    Msgbox(64, "xxx wird neu gestartet", $mld)

    [/autoit]

    Aber ich glaube mich zu erinnern, dass ich mal ein ähnliches Problem hatte - ist leider nur schon ein paar Jahre her :pinch:

  • hoher CPU Verbrauch

    • x0r
    • 13. März 2015 um 09:13

    Thinclients, sau lahme Verbindung + Terminal Server mit Windows Server 2008 R2 Enterprise - noch Fragen?

    ...und ja, ein Loop zerballert mein Profil ;)

  • hoher CPU Verbrauch

    • x0r
    • 13. März 2015 um 08:11

    also wenn ich hier in der Firma das hier verwende:

    [autoit]

    While 1
    Wend

    [/autoit]

    Dann dauerts nicht lang und mein Profil befindet sich in einem nicht beendbaren Loop - und das ist gaaaaaanz schlecht 8)

    "Hallo Admin, kannst du mein Profil resetten? Habe mal wieder einen Loop!" - "Du bist doch a Depp!" :thumbup:

  • ALTGR per send senden?

    • x0r
    • 12. März 2015 um 13:47

    hm, das einzige, was ich mit solchen kombis benutzt hab, waren **** oder gametrainer ;)

  • ALTGR per send senden?

    • x0r
    • 12. März 2015 um 13:44

    da passiert doch gar nix, für was brauchste das denn?

  • ALTGR per send senden?

    • x0r
    • 12. März 2015 um 12:49

    Hi,

    es ginge auch:

    [autoit]

    send("^!m")

    [/autoit]

    Gruß,
    x0r

  • TreeView per Klick auslesen

    • x0r
    • 15. Mai 2014 um 20:04

    Das sieht doch schon mal sehr vielversprechend aus, vielen Dank! :thumbup:

  • TreeView per Klick auslesen

    • x0r
    • 15. Mai 2014 um 19:16

    Hi ihrs :)

    Ich hab mir ne kleine GUI gebaut mit TreeView und einer InputBox:

    Spoiler anzeigen
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <TreeViewConstants.au3>
    #include <WindowsConstants.au3>
    #include <GUITreeView.au3>

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

    $GUI = GUICreate("GUI", 384, 109, 192, 114)
    $Tree = GUICtrlCreateTreeView(8, 8, 129, 81, BitOR($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_DISABLEDRAGDROP, $TVS_SHOWSELALWAYS), $WS_EX_CLIENTEDGE)
    $last = GUICtrlCreateInput("", 232, 8, 121, 21)
    GUISetState(@SW_SHOW)

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

    $first = GUICtrlCreateTreeViewItem("test 1-1", $Tree)
    $second = GUICtrlCreateTreeViewItem("test 2-1", $Tree)
    $second1 = GUICtrlCreateTreeViewItem("test line 2-2", $second)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]

    Jetz möcht ich, dass mir der jeweilige Name (z.b. test 2-1) beim Anklicken (Markieren) in die Inputbox übertragen wird, geht das?

    €dit: Hinzufügen sollte ich, dass ich ziemlich viele Items im Treeview hab, die alle mit einem Array eingefügt werden. Habe also keine einfaches $item1, $item2 usw...

    Danke & Grüße,
    x0r

  • UEZ hat seinen 5. Foren Geburtstag.

    • x0r
    • 26. November 2013 um 01:06

    hätt ers nicht als geb-datum eingetragen, wärs niemandem aufgefallen :whistling:

  • Zugriff auf Zeichen im String

    • x0r
    • 25. November 2013 um 11:17

    in wiefern zeitaufwändig?

    kannst dir ja eine eigene funktion bauen, in etwa:

    string($str,$cnt)
    string("test",2) = e

    is doch kein problem ;)

  • Buchmanagment

    • x0r
    • 25. November 2013 um 08:27

    Hi,

    wurd hier zwar schon oft erwähnt, aber ich würds auch mit MySQL lösen.

    Der Vorteil: Du hast keine unnötigen Files rumfliegen ;)

    Die ID würd ich aber als "autoincrement" (und als "Primary Key") deklarieren , des weiteren könntest du die Daten abfragen und ggf einen Parser dafür basteln, der dir die Daten in ein Web-gängiges Format umwandelt (für Webseiten-Übersicht (dann ggf mit Apache (is nich so schwer wies klingt, hab ich auch schon hinbekommen :D))).

    €dit: "Parser" für die, die mit PHP oder sonstigem nix anfangen können (ich z.b. :D)

    Ich hätte sogar schon eine Idee dafür, aber ist nicht mein Projekt :)

    Grüße,
    x0r

  • Neuling oO

    • x0r
    • 19. November 2013 um 11:00

    Hoi!

    Son Teil fürs Berichtsheft hatte ich mir auch mal gebaut, konntest variable Infos eintragen und auch "Random" generieren lassen ;)

    Pro Seite ca 2 Sekunden (mit korrektem Datum, Unterschrift drunter einfügen und drucken!)

    Meine Mit-Azubis haben sich drum geprügelt :D

    Leider find ichs nicht mehr, hat Chefchen vermutlich gelöscht :thumbup:

    Gruß,
    x0r

  • Hintergrund wechseln per Tastendruck

    • x0r
    • 15. November 2013 um 08:30

    Hi,

    hab mir was zusammen gebastelt (größenteils aus fremden Funktionen).

    Beim Starten wechselts einmal das Hintergrundbild (z.b. für Autostart) und bei drücken von Strg+Y wechselts ihn ebenfalls (das Windows-eigene Random nervt :) ).

    Im Scriptordner einen Ordner "wallpapers" anlegen und dort alle Bilder einfügen, die man möchte:

    Spoiler anzeigen
    [autoit]

    #include <file.au3>

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

    HotKeySet("^y", "dochange")
    HotKeySet("", "rand")

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

    Global $img_size, $sz, $rnd, $rand = 0

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

    dochange()

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

    While 1
    Sleep(100)
    WEnd

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

    Func dochange()
    Local $path = @ScriptDir & "\wallpapers"
    Global $ary = _FileListToArray($path)
    Global $oldrnd = IniRead(@ScriptDir & "\wallpapers.ini", "wp", "oldnum", "")

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

    donum()

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

    $img_size = _GetJpegSize($path & "" & $ary[$rnd])
    If $img_size[0] < 1600 Or $img_size[1] < 1000 Then
    $sz = 2
    Else
    $sz = 3
    EndIf

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

    _ChangeWallpaper($path & "" & $ary[$rnd], $sz)
    EndFunc ;==>dochange

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

    Func donum()
    $rnd = $oldrnd + 1
    If $rnd = $ary[0] + 1 Then $rnd = 1

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

    IniWrite(@ScriptDir & "\wallpapers.ini", "wp", "oldnum", $rnd)
    EndFunc ;==>donum

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

    Func _ChangeWallpaper($sFile, $iType) ; Changes the wallpaper to $sFile using $iType as:
    Switch $iType
    ;1 Tiled
    Case 1
    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'TileWallpaper', 'reg_sz', '1')
    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'WallpaperStyle', 'reg_sz', '0')
    ;2 Centered
    Case 2
    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'TileWallpaper', 'reg_sz', '0')
    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'WallpaperStyle', 'reg_sz', '0')
    ;3 Stretched
    Case 3
    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'TileWallpaper', 'reg_sz', '0')
    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'WallpaperStyle', 'reg_sz', '2')
    EndSwitch

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

    RegWrite('HKEY_CURRENT_USER\Control Panel\Desktop', 'Wallpaper', 'reg_sz', $sFile)

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

    DllCall("User32.dll", "int", "SystemParametersInfo", "int", 20, "int", 0, "str", $sFile, "int", 0)

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

    Return 0
    EndFunc ;==>_ChangeWallpaper

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

    Func _GetJpegSize($file)
    Local $size[2]
    Local $fs, $pos = 3

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

    If Not _FileReadAtOffsetHEX($file, 1, 2) = "FFD8" Then
    SetError(1); Not Jpeg
    Return ""
    EndIf

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

    $fs = FileGetSize($file)

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

    While $pos < $fs
    $data = _FileReadAtOffsetHEX($file, $pos, 4)
    If StringLeft($data, 2) = "FF" Then; Valid segment start
    If StringInStr("C0 C2 CA C1 C3 C5 C6 C7 C9 CB CD CE CF", StringMid($data, 3, 2)) Then; Segment with size data
    $seg = _FileReadAtOffsetHEX($file, $pos + 5, 4)
    $size[1] = Dec(StringLeft($seg, 4))
    $size[0] = Dec(StringRight($seg, 4))
    Return ($size)
    Else
    $pos += Dec(StringRight($data, 4)) + 2
    EndIf
    Else
    ExitLoop
    EndIf
    WEnd
    SetError(2); Segment not found
    Return ("")
    EndFunc ;==>_GetJpegSize

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

    Func _FileReadAtOffsetHEX($file, $offset, $bytes)
    Local $tfile = FileOpen($file, 0)
    Local $tstr = ""
    FileRead($tfile, $offset - 1)
    For $i = $offset To $offset + $bytes - 1
    $tstr &= Hex(Asc(FileRead($tfile, 1)), 2)
    Next
    FileClose($tfile)
    Return ($tstr)
    EndFunc ;==>_FileReadAtOffsetHEX

    [/autoit]

    Viel Spass damit,
    x0r

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™