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

Beiträge von sc4ry

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 26. Juni 2007 um 10:18

    hmm, sieht soweit eigentlich ganz gut aus, aber nicht ganz, was ich suche.
    jedoch bringt mich das auf eine neue idee.

    und zwar in spalte 1 den dateinamen und in spalte 2 den pfad.
    aber um ne scrollleiste komm ich nicht drumrum.

    ich versuch mich mal dran *g*

    PS: nee, dass ist alles nicht das wahre ... kann man nicht einfach nen hozizontalen scrollbalken integrieren?

    PPS: dank hilfe vom engl. board hats geklappt, hier die lösung

    [autoit]


    $toollist = GUICtrlCreateList("", 80, 20, 210, 190, $WS_HSCROLL + $LBS_DISABLENOSCROLL)
    _GUICtrlListSetHorizontalExtent ($toollist, 500)

    [/autoit]
  • mp3 player kaputt?!

    • sc4ry
    • 26. Juni 2007 um 09:08

    haste denn mal versucht, den stick einfach neu zu formatieren?
    wenn er danach nicht richtig geht, müsste man mal weiter gucken.

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 25. Juni 2007 um 17:41

    also dass mit der kürzen nur für die anzeige hört sich eigentlich sehr gut an.
    wenn da jeweils nur die exe stehen würde, würde ja locker reichen.

    code kommt auch

    Spoiler anzeigen
    [autoit]


    #include <guiconstants.au3>
    #include <array.au3>
    #include <GuiList.au3>
    #include <GUIAdvance.au3>

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

    Global $flag2

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

    ;tool-gui
    $guitool = GUICreate("Tool-Settings", 300, 250, -1, -1, -1, $WS_EX_ACCEPTFILES)
    WinSetTrans($guitool, "", 240)
    $ok3 = GUICtrlCreateButton("&Ok", 20, 220, 70)
    $cancel3 = GUICtrlCreateButton("&Cancel", 220, 220, 70)
    $add = GUICtrlCreateButton("&Add", 10, 20, 60)
    GUICtrlSetTip($add, "Here you can browse for a tool (or something else) you want to start")
    $remove = GUICtrlCreateButton("&Remove", 10, 50, 60)
    GUICtrlSetTip($remove, "Remove the seleted item")
    $toollist = GUICtrlCreateList("", 80, 20, 210, 190, $LBS_DISABLENOSCROLL)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED )

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

    GUISetState(@SW_show, $guitool)

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

    While 1
    $msg = GUIGetMsg(1)
    Select
    ;Tool-Gui Buttons
    ;Ok
    case $msg[0] = $ok3 And $msg[1] = $guitool
    $alltext = _GUICtrlListGetAllText($toollist)
    If $alltext[0] > "0" Then
    $RunOwnTools = IniWrite(@scriptdir & "\" & $ini, "Run after Start", "Own Tools", "1")
    For $i = 1 to $alltext[0]
    IniWrite(@scriptdir & "\" & $ini, "Run own tools after Start", $i, $alltext[$i])
    Next
    Else
    $RunOwnTools = IniWrite(@scriptdir & "\" & $ini, "Run after Start", "Own Tools", "0")
    EndIf
    GUISetState(@SW_HIDE, $guitool)
    ;Add Tool
    case $msg[0] = $add And $msg[1] = $guitool
    $file1 = FileOpenDialog("Open File", "", "Alle (*.*)" , 1 + 2)
    GUICtrlSetData($toollist, $file1)
    ;Remove ToolTip
    case $msg[0] = $remove And $msg[1] = $guitool
    _GUICtrlListDeleteItem($toollist,_GUICtrlListFindString($toollist,GUICtrlRead($toollist)))
    ;Drag'n'Drop
    Case $msg[0]=$GUI_event_dropped And $msg[1] = $guitool
    for $i=_GUICtrlListCount($toollist) To 0 step -1
    if _GUICtrlListFindString($toollist,@GUI_DragFile)=-1 Then
    _GUICtrlListAddItem($toollist,@GUI_DragFile)
    EndIf
    Next
    EndSelect
    WEnd

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

    Edit Mega: Spoiler

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 25. Juni 2007 um 17:24

    die pfade werden anschließend aus der liste in eine ini geschrieben, also kann ich sie nicht abschneiden.
    und die box rießig groß zu machen, bringt auch nix, da die pfade noch 100 mal länger sein können *g*

    kann man nicht einfach nen tooltip anzeigen lassen?
    aber mir fällt grad ein (wie peinlich), man kann ja manuell scrollbalken einbauen ... vllt sollte ich das mal probieren =)

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 25. Juni 2007 um 16:57

    hey, ich hab noch ne frage bzgl GuiCtrlCreateList:

    und zwar kann ich dort ja nun Dateien samt pfad adden, was aber teilweise ganz schön lang sein kann.
    aber das fenster ist nicht groß genug, um den komplette pfad samt datei anzeigen zu können, und da die anzeige das names immer vorne beginnt, weiss man nicht, um was für ein programm es sich handelt.

    ich find in den styles leider nix ... ich suche entweder einen horizontalen scrollbalken, oder, dass die einträge als TIP angezeigt werden, wie bei treeview.

    gibt es da was?

  • Frage zu Buttons

    • sc4ry
    • 25. Juni 2007 um 12:24

    ich bin immer wieder überrascht, was es nicht allles irgendwo in autoit schon gibt. ich geh immer davon aus, dass ich/man noch alles selber irgendwie machen müsste =)

  • Frage zu Buttons

    • sc4ry
    • 25. Juni 2007 um 10:51

    hey,

    vielen dank euch beiden, werde es gleich mal austesten.
    aber hatte mich schon bissel gewundert ... weil bei den styles hatte ich schon geguckt, aber nicht bei buttons, sondern eher bein input *g*

    thx =)

    PS: klappt beides wunderbar ... das war ja einfach *g*

  • Frage zu Buttons

    • sc4ry
    • 24. Juni 2007 um 16:35

    Hey,

    habe 2 fragen zum thema "buttons" (im weiteren sinne *g*)

    1.

    in einer inputbox in einem gui können sachen eingetragen und durch einen klick auf "add" zu einer liste hinzugefügt werden. wie kann ich der inputbox sagen, dass, sofern {Enter} gedrückt wird, der button "add", bzw seine funktion (hinzufügen zur liste) ausgeführt wird?

    2.

    beim ersten aufruf eines programmes wird ein gui gestartet und eine ini angelegt. bei einem klick auf "ok" werden weitere einträge in die ini geschrieben, ein klick auf "cancel" löscht die ini-datei (da der user das tool anscheinend nicht benötigt). bei jedem weiteren aufruf des programmes, wird kein gui angezeigt (sofern die ini existiert). nun ist es aber möglich, um die einstellungen zu editieren, per cmd das gui mit allen einstellungen aufzurufen, um diese zu ändern. ABER, wenn der user nur seine einstellungen einsehen will und sich entscheidet, diese doch nicht zu ändern, klickt er auf "cancel". nun wird aber die ini datei gelöscht, was aber nicht passieren darf.

    wie kann ich sagen, dass der button "cancel" beim normalen aufruf, die ini löscht, aber bei einem aufruf über die cmd (wenn $CmdLine[2] = "-edit") nur das programm beendet und die ini bestehen lässt?

    hoffe das es verständlich ist ... code hab ich grad nicht zu hand, da ich den stick @ home vergessen habe, wo es drauf ist *g*

  • Anzeige die das Script nicht stoppt

    • sc4ry
    • 22. Juni 2007 um 16:00

    ja, aber wie?

    also ich habe nicht die fenstertitel der programme, die gestartet werden, da die leute alles starten können, was sie wollen. da liegt mein prob

  • Anzeige die das Script nicht stoppt

    • sc4ry
    • 22. Juni 2007 um 15:38

    hey,

    dazu noch eine frage.
    ich starte verschiedene programme, die frei ausgewählt werden können.
    nachdem alle programme gestartet wurden, lasse ich ein splashtexton anzeigen, dass das tool fertig ist. jedoch kommt das splash, nachdem die programme gestartet wurden, d.h. ja aber noch nicht, dass dieser auch aktiv und bereit sind.

    kann man einbauen, dass er warten soll, bis alle fenster aktiv sind, bevor das splash angezeigt wird?

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

    If $notify = "2" Then
    SplashTextOn("", $script & " is ready now", 250, 30, -1, -1, 0 + 1 + 32, "", "", 1000)
    Sleep(8000)
    SplashOff()
    ElseIf $notify = "1" Then
    GUIDelete($ProgressGui)
    Else
    EndIf

    [/autoit]
  • Anzeige die das Script nicht stoppt

    • sc4ry
    • 22. Juni 2007 um 14:08

    dank euch beiden, dass schaut schonmal sehr gut aus, damit kann ich arbeiten *hehe*

    thx =)

  • Anzeige die das Script nicht stoppt

    • sc4ry
    • 22. Juni 2007 um 11:52

    Hallo,

    ich wollte eine option ins script einbauen, die anzeigt, dass das script gerade arbeitet. am liebsten wäre mir ein prozessbalken, der die ganze zeit durchs bild huscht (keine prozentuale anzeige) ... aber solange, bist alle aktionen beendet sind.

    wenn ich aber den prozessbalken starte, bleibt der rest des scriptes hängen ...

    gibt es eine möglichkeit den so zu bauen, dass das script weiterläuft?

    das gleiche prob besteht auch bei splashtexton ... nach meiner erfahrung zZ kann ich im mom nur einen tooltip verwenden während das script weiterläuft.

  • Hidden Text

    • sc4ry
    • 21. Juni 2007 um 15:46

    aso *g*

    ja, code kann ich auch bieten =)
    hab jetzt nur mal den schnipsel rausgepickt, wo es um dieses thema hier geht.

    vorher werden nur daten aus einer ini gelesen und, je nachdem was in der ini steht, werden aufgaben ausgeführt (oder halt nicht - fenster schließen & tools öffnen, alles nacheinander)

    [autoit]


    If $info = 1 Then
    $HDInfoSize = InetGetSize("http://xxx-info.de.xxxgroup.net/hdinfo/msg/msg_DUS_loc.htm")
    IniWrite(@scriptdir & "\" & $ini, "Close Windows after Start", "HDInfo-Size", $HDInfoSize)
    If $HDInfoSize = $OldSize Then
    WinKill("HDInfo2k")
    ProcessClose("HDINFO2k.exe")
    Else
    EndIf

    [/autoit]
  • Hidden Text

    • sc4ry
    • 21. Juni 2007 um 15:05

    hat keiner einen tip, wie man das prob noch umgehen kann?

    eine idee die mir noch gekommen ist, den komplette code, der dieses fenster schließen soll, in ein weiteres programm zu stecken.
    das wird dann als erstes ausgeführt, checkt für sich alleine wie groß die datei ist und schließt das fenster (oder halt nicht), während das hauptprogramm weiter seine aufgaben erledigt.

    dann sollten ungefähr beide zur selben zeit fertig sein *g*

    dass sollte auch gehen ... nur schön wäre es natürlich, alle kompakt zu haben.

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 21. Juni 2007 um 15:03

    hey,

    hatte vllt doch wahrnehmungsstörungen, ist funzte tatsächlich (am nächsten tag *g*)

    jetzt arbeite ich noch daran, dass er nicht mit fehlermeldung abbricht, weil die ini existiert aber die inisection nicht, da das gui nur ein bruchteil eines scriptes ist.
    aber das werd ich schaffen, mir fehlt es grad nur an der nötigen zeit.

    also, problem gelöst, vielen dank =)

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 19. Juni 2007 um 22:27

    thx euch beiden.
    bugfix, werd mir das morgen mal genau angucken, aber ...

    @eddy, ... das ist genau das, was ich wollte. geile sache. vielen vielen dank euch beiden.
    aber ein verständnisprob hab ich noch, bzgl des d&d ... irgendwie (ok, hab schon paar bier weg), aber was hast du geändert??? (habe meine blick auf die styles fixiert)???

    hatte eigentlich schon mit dem ein oder anderen abgeschlossen, desto überraschter bin ich, dass beides genau so klappt, wie ich wollte *freu*dank*freu*

    PS: mir fällt gerade ein, dass, sofern ich das script über die cmd aufrufe, alle einträge aus der ini, auch in der "list" angezeigt werden sollen. wie mache ich das?

    [autoit]

    $var = IniReadSection ( $ini, "Run after Start")
    For $i = 1 To $var[0][0]
    GUICtrlSetData($toollist, $var[$i][1])
    Next

    [/autoit]


    scheint nicht zu gehen???

  • GuiCtrlCreateList-Frage(n)

    • sc4ry
    • 19. Juni 2007 um 16:45

    Hiho,

    ich mal wieder. habe ein Script geschrieben, in dem man 5 Programme/ Dateien seiner Wahl starten kann. Da man aber nie genau sagen kann, wieviele solcher Sachen jmd braucht, wollte ich das erweitern.

    Dazu dachte ich mir, mach ich Gui...List, in das man seine Programme adden kann.

    Frage 1:
    gibt es eine möglichkeit, wie bei gui..input, files per drag&drop hinzuzufügen? (original übernommen von der inputbox geht es nicht)?

    Frage 2:
    wie schaffe ich es, einen button remove zu erstellen, der aber jeweils nur das aktuell makierte "tool" aus der liste entfernt?

    Frage 3:

    Spoiler anzeigen


    alle programme müssten anschließend in einer ini gespeichert werden, aber wie genau? ich müsste eine schleife durchlaufen, die, solange eine zeile in der liste nicht leer ist, die einzelnen dateien, fortlaufend nummeriert, in die ini schreibt oO

    Frage 4:

    Spoiler anzeigen


    das gleiche müsste dann beim start des programmes passieren. eine schleife wird durchlaufen und liest ein tool nach dem anderen aus der ini. könnte man aber sicher von Frage 3 umbauen.

    script sieht zZ so aus (funzt aber halt noch net alles *g*):

    PS: updated --- frage 3 hab ich rausgefunden (dank engl. forum)
    PS: updated² --- frage 4 auch erledigt

    Spoiler anzeigen
    [autoit]


    #include <guiconstants.au3>
    #include <array.au3>
    #include <GuiList.au3>

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

    $script = "S.T.A.R.T.E.R"
    $ini = ($script & "-Settings.ini")

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

    If FileExists($ini) then
    $var = IniReadSection ( $ini, "Run after Start")
    For $i = 1 To $var[0][0]
    Run(@ComSpec & ' /c "' & $var[$i][1] & '"', "", @SW_HIDE)
    Next
    Else
    ;create tool-gui
    $guitool = GUICreate("Tool-Settings", 300, 250, -1, -1, -1, $WS_EX_ACCEPTFILES)
    WinSetTrans($guitool, "", 240)
    $ok3 = GUICtrlCreateButton("&Ok", 20, 220, 70)
    $cancel3 = GUICtrlCreateButton("&Cancel", 220, 220, 70)
    $toollist = GUICtrlCreateList("", 80, 20, 210, 190)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED )
    $add = GUICtrlCreateButton("&Add", 10, 20, 60)
    GUICtrlSetTip($add, "Here you can browse for a tool (or something else) you want to start")
    $remove = GUICtrlCreateButton("&Remove", 10, 50, 60)
    GUICtrlSetTip($remove, "Remove the seleted item")

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

    GUISetState(@SW_SHOW, $guitool)

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

    While 1
    $msg = GUIGetMsg(1)
    Select
    case $msg[0] = $gui_event_close And $msg[1] = $guitool
    Exit
    Case $msg[0] = $cancel3 And $msg[1] = $guitool
    Exit
    case $msg[0] = $add And $msg[1] = $guitool
    $file1 = FileOpenDialog("Open File", "", "Alle (*.*)" , 1 + 2)
    GUICtrlSetData($toollist, $file1)
    case $msg[0] = $remove And $msg[1] = $guitool
    $remove = GUICtrlRead($toollist)
    GUICtrlSetData($toollist, $remove)
    case $msg[0] = $ok3 And $msg[1] = $guitool
    $alltext = _GUICtrlListGetAllText($toollist)
    For $i = 1 to $alltext[0]
    IniWrite(@scriptdir & "\" & $ini, "Run after Start", $i, $alltext[$i])
    Next
    Exit
    EndSelect
    WEnd
    EndIf

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

    Func _GUICtrlListGetAllText($listbox)
    Dim $listinfo, $returntext
    $listinfo = _GUICtrlListGetInfo($listbox)
    Dim $returntext[$listinfo + 1]
    $returntext[0] = $listinfo
    If $listinfo = 0 Then
    Return $returntext
    EndIf
    For $i = 0 to ($returntext[0] - 1)
    $returntext[$i + 1] = _GUICtrlListGetText($listbox, $i)
    Next
    Return $returntext
    EndFunc

    [/autoit]
  • Frage zu _StringEncrypt

    • sc4ry
    • 19. Juni 2007 um 15:47

    aber dann habe ich ja wieder den obfuscated code.
    dann seh ich ja trotzdem nicht, was "übersetzt" wurde und was nicht?
    ich bräuchte was, dass mir den obfuscated code zurückübersetzt. wobei so ein tool natürlich blöd wäre, da das ganze dann noch weniger sinn hätte.

    aber nur so könnte ich sehen, ob die includes drin sind.

    aber ob ich die includes einfüge oder nicht (unobfuscated), ein gewisser teil um script läuft anscheinend immer nicht.

    PS: aber trotzdem thx für den tip, hab mich schon immer gefragt, wo ich ein tool herbekomme, dass das macht *g*

  • Frage zu _StringEncrypt

    • sc4ry
    • 19. Juni 2007 um 15:38

    ist vllt ne blöde frage, aber wie oder womit?

  • Frage zu _StringEncrypt

    • sc4ry
    • 19. Juni 2007 um 15:14

    jain ... im normalen script ist sie enthalten.
    das script läuft auch komplett ohne probleme, nur nach dem obfuscaten halt nichtmehr.

    das script fängt normale so an

    Spoiler anzeigen
    [autoit]

    ;Settings
    #NoTrayIcon
    #include <guiconstants.au3>
    #include <string.au3>
    #include <IE.au3>
    #include <Misc.au3>

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

    $script = "S.T.A.R.T.E.R"
    $ini = ($script & "-Settings.ini")

    [/autoit]

    sieht nach dem obfuscaten dann so aus

    Spoiler anzeigen
    [autoit]

    #NoTrayIcon
    global $SA400090444D=A220000534D("532E542E412E522E542E452E52"),$SA3E00B00D07=A220000534D("2D53657474696E67732E696E69"),$SA1B00D02D53=A220000534D("40557365724E616D65"),$SA4B00E04753=A220000534D("40436F6D70757465724E616D65"),$SA4700F02D25=A220000534D("40536372697074446972"),$SA3A10003D28=A220000534D("30"),$SA5F10105003=A220000534D("30"),$SA2510203B1A=A220000534D("40736372697074646972"),$SA1710305404=A220000534D("5C"),$SA0920205B42=A220000534D("57696E646F777320686572756E74657266616872656E"),$SA2120303706=A220000534D("73687574646F776E2E657865")
    $A5E00800103 = $SA400090444D
    $A5F00A03E06 =($A5E00800103 & $SA3E00B00D07)
    $A3A00C05418 = Execute($SA1B00D02D53) & Execute($SA4B00E04753) & Execute($SA4700F02D25)

    [/autoit]

    danach geht es nicht.
    include ich jetzt nochmal die dateien, scheint es erstmal zu laufen ... aber gibt es dann nicht teile, die nicht obfuscated worden? ist das schlimm?

    PS: noch ne frage. so wie der code jetzt aussieht, kann ein mensch damit nichts anfangen, aber wie intepretiert autoit das jetzt richtig? das sind keine zufallswerte, oder? also könnte man sie doch theoretisch, mit viel arbeit, wieder in den ursprung zurückversetzen, oder?

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™