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

Beiträge von i2c

  • ComboBox Auswahl mit Ini Section vergleichen Werte aus der Section in Listview ausgeben

    • i2c
    • 15. November 2013 um 11:07

    Hallo,
    naguerlich kann und wird dirhier jemand helfen. Ich werde es vom Handy aus im Moment sicher nicht sein aber....

    ... Koenntest du bitte bitte den Threadtitel etwas einkuerzen!

  • Dell ServieTag an URL anfügen

    • i2c
    • 5. November 2013 um 19:14

    Ich konnte den Link mit angehängtem Service-Tag manuell aufrufen und mir wurde die korrekte Supportseite (Latitude25irgendwas) ausgegeben. Ich konnte das selbe Ergebnis mit dem selben Servicce-Tag mit dem von dir geposteten Skript erzielen. Alina bestätigt die korrekte Funktionsweise ebenfalls.

    Ich denk jetzt mal in eine andere Richtung .... in deinem Standardbrowser ist nicht zufällig ein Keks von Dell hinterlegt, der unter umständen einen anderen Service-Tag beinhaltet und den Aufruf stört?

  • Datum minus eine Tag

    • i2c
    • 5. November 2013 um 11:41
    [autoit]

    StringFormat('%0.2d', @mday-1)

    [/autoit]


    Aufpassen mit dem 1ten des Monats.

  • "Patcher" lädt bestimmte Formate nicht

    • i2c
    • 4. November 2013 um 23:02

    Schonmal daran gedacht, das es nicht am Skript sondern vlt. am Server liegt? ;)

    Edit: Bevor gefragt wird ... es gibt diverse Direktiven, mit denen man Request auf bestimmte Dateiendungen abweisen kann. Als kleines Sicherheitsfeature bietet sich so etwas an, wenn man explizit den Zugriff auf .ini Dateien verbieten möchte. Man möchte ja nicht immer, das jeder in x-beliebige Konfigurationsdateien schauen kann ;).

    Solche DIrektiven lassen sich auch negieren. Das hat den Vorteil, das man explizit nur die Dateierweiterungen zulassen muss, die man auch wirklich nutzt und alle unbekannten (unerwünschten) damit natürlich automatisch gesperrt sind.

    Ist dein Server also so konfiguriert, das Zugriffe zum Beispiel nur auf .txt, .htm, .html, .jpeg, .bmp, .png als bekannte Dateitypen zugelassen sind, fallen alle anderen weg. Unter anderem auch .ini und .rvdata.

    Google -> ".htaccess FilesMatch"

  • Dell ServieTag an URL anfügen

    • i2c
    • 4. November 2013 um 18:15

    Das Problem versteh ich dennoch nicht. Auch aus dem Skript heraus wird der Link korrekt aufgerufen .

  • Dell ServieTag an URL anfügen

    • i2c
    • 4. November 2013 um 16:28

    Ich hab keinen Dell aber wenn ich http://support.dell.com/support/topics…vicetag=5RFDP01 aufrufe, dann lande ich auf der Supportseite für das passende Produkt.

    Kannst du mehr von deinem Skript zeigen? Wie ermittelst du den Service-Tag? Hast du ihn schonmal ausgegeben um zu sehen, ob er korrekt ermittelt wird?

  • Keine E-Mail Benachrichtigung 2

    • i2c
    • 2. November 2013 um 22:31

    Profil bearbeiten -> Einstellungen ->Kommunikation

    "Thema bei Antwort automatisch abonnieren" und "E-Mail-Benachrichtigung bei neuem Beitrag in Abonnements" markieren.

  • Zeilenabstand bei ListView verkleinern

    • i2c
    • 2. November 2013 um 14:03
    Spoiler anzeigen
    [autoit]

    #include <GuiListView.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    Global Const $ODT_LISTVIEW = 102
    Global Const $ODA_DRAWENTIRE = 0x1
    Global Const $ODS_SELECTED = 0x0001

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

    GUICreate("", 500, 500)

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

    GUIRegisterMsg($WM_MEASUREITEM, "WM_MEASUREITEM")
    GUIRegisterMsg($WM_DRAWITEM, "WM_DRAWITEM")

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

    $hListview = GUICtrlCreateListView("Spalte 1", 5, 5, 490, 490,BitOR($LVS_REPORT, $LVS_SHOWSELALWAYS, $LVS_OWNERDRAWFIXED))
    GUICtrlCreateListViewItem("Zeile 1 Ausgabe ==> OK", $hListview)
    GUICtrlCreateListViewItem("Zeile 2 Ausgabe ==> OK", $hListview)
    GUICtrlCreateListViewItem("Zeile 3 Ausgabe ==> OK", $hListview)
    GUICtrlSendMsg($hListview, $LVM_SETCOLUMNWIDTH, 0, $LVSCW_AUTOSIZE_USEHEADER)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $Msg = GUIGetMsg()
    Select
    Case $Msg = -3
    Exit
    EndSelect
    WEnd

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

    Func WM_MEASUREITEM($hWnd, $Msg, $wParam, $lParam)
    Local $tMEASUREITEMS = DllStructCreate("uint cType;uint cID;uint itmID;uint itmW;uint itmH;ulong_ptr itmData", $lParam)
    If DllStructGetData($tMEASUREITEMS, "cType") <> $ODT_LISTVIEW Then Return $GUI_RUNDEFMSG
    DllStructSetData($tMEASUREITEMS, "itmH", 30)
    Return 1
    EndFunc ;==>WM_MEASUREITEM

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

    Func WM_DRAWITEM($hWnd, $Msg, $wParam, $lParam)
    Local $tagDRAWITEMSTRUCT, $iBrushColor, $cID, $itmID, $itmAction, $itmState, $hItm, $hDC, $bSelected
    $tagDRAWITEMSTRUCT = DllStructCreate( _
    "uint cType;" & _
    "uint cID;" & _
    "uint itmID;" & _
    "uint itmAction;" & _
    "uint itmState;" & _
    "hwnd hItm;" & _
    "handle hDC;" & _
    "long itmRect[4];" & _
    "ulong_ptr itmData" _
    , $lParam)
    If DllStructGetData($tagDRAWITEMSTRUCT, "cType") <> $ODT_LISTVIEW Then Return $GUI_RUNDEFMSG
    $cID = DllStructGetData($tagDRAWITEMSTRUCT, "cID")
    $itmID = DllStructGetData($tagDRAWITEMSTRUCT, "itmID")
    $itmAction = DllStructGetData($tagDRAWITEMSTRUCT, "itmAction")
    $itmState = DllStructGetData($tagDRAWITEMSTRUCT, "itmState")
    $hItm = DllStructGetData($tagDRAWITEMSTRUCT, "hItm")
    $hDC = DllStructGetData($tagDRAWITEMSTRUCT, "hDC")
    $bSelected = BitAND($itmState, $ODS_SELECTED)
    Switch $cID ; will look for ControlID, not window handle.
    Case $hListview
    Switch $itmAction
    Case $ODA_DRAWENTIRE
    For $i = 0 To _GUICtrlListView_GetColumnCount($hListview) - 1
    Local $iSubItmText = _GUICtrlListView_GetItemText($hListview, $itmID, $i)
    Local $aSubItmRect = _GUICtrlListView_GetSubItemRect($hListview, $itmID, $i)
    Local $iSubItmRect = DllStructCreate("long[4]")
    DllStructSetData($iSubItmRect, 1, $aSubItmRect[0], 1)
    DllStructSetData($iSubItmRect, 1, $aSubItmRect[1], 2)
    DllStructSetData($iSubItmRect, 1, $aSubItmRect[2], 3)
    DllStructSetData($iSubItmRect, 1, $aSubItmRect[3], 4)
    DllCall("user32.dll", "int", "DrawTextW", "hwnd", $hDC, "wstr", $iSubItmText, "int", StringLen($iSubItmText), _
    "ptr", DllStructGetPtr($iSubItmRect), "int", $DT_LEFT)
    Next
    EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_DRAWITEM

    [/autoit]

    In Zeile 34 passt du die Zeilenhöhe an.

  • Zeilenabstand bei ListView verkleinern

    • i2c
    • 1. November 2013 um 20:15

    http://msdn.microsoft.com/en-us/library/…5(v=vs.85).aspx
    http://msdn.microsoft.com/en-us/library/…4(v=vs.85).aspx

    Spoiler anzeigen
    [autoit]

    Global Const $ODT_LISTVIEW = 102

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

    GUICreate("", 700, 300, 100, 100)
    .
    .
    .
    GUIRegisterMsg($WM_MEASUREITEM, "WM_MEASUREITEM")

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

    $list = GUICtrlCreateList("", 380,50, 300, 100)
    GUICtrlSetData($list,"Zeile 1 Ausgabe ==> OK")
    GUICtrlSetData($list,"Zeile 2 Ausgabe ==> OK")
    GUICtrlSetData($list,"Zeile 3 Ausgabe ==> OK")
    GUICtrlSetFont($list, 9, 600, 0, "MS Sans Serif")
    .
    .
    .
    GUISetState(@SW_SHOW)
    While 1
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    Select
    Case $msg = $button
    Exit
    EndSelect
    WEnd

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

    Func WM_MEASUREITEM($hWnd, $Msg, $wParam, $lParam)
    Local $tMEASUREITEMS = DllStructCreate("uint cType;uint cID;uint itmID;uint itmW;uint itmH;ulong_ptr itmData", $lParam)
    If DllStructGetData($tMEASUREITEMS, "cType") <> $ODT_LISTVIEW Then Return $GUI_RUNDEFMSG
    DllStructSetData($tMEASUREITEMS, "itmH", 10)
    Return 1
    EndFunc

    [/autoit]

    Ich hab grad kein AutoIt da :)

  • Wie Kann ich diesen Script im Hintergrund ausführen?

    • i2c
    • 13. Oktober 2013 um 18:47

    Das geht dann schon etwas weit in Richtung Spammbot, findest du nicht? Einen anderen Nutzen im versenden von Chatnachrichten im Hintergrund kann ich beim besten Willen nicht erkennen.

    Das solltest du dir meiner bescheidenen Meinung nach selbst erarbeiten.

  • CSS :hover Funktion

    • i2c
    • 12. Oktober 2013 um 15:20

    Und als kleine Randbemerkung - den a tag der aktuellen Seite in der Navi entfernen bzw. durch ein strong ersetzen. Links sollten nie auf sich selbst zeigen :)

  • Koda Formdesigner Frage!

    • i2c
    • 3. Oktober 2013 um 23:37

    Nicht so böse gemeint wie es evtl. ausieht.....http://deutsch.lingo4u.de/grammatik/satzbau

    Die passenden Tutorials zum Thema AutoIt findest du im Portal.

  • Meine Maus macht Breakdance

    • i2c
    • 3. Oktober 2013 um 12:13

    Jetzt, wo du etwas Übung im Öffnen und Reinigen von Computerperipherie hast, wird es eventuell mal Zeit auch deine Tastatur zu reinigen. Einige Tasten scheinen nicht richtig zu funktionieren. Das Problem wird offensichtlich von Beitrag zu Beitrag gravierender.

    Bevor man dich also gar nicht mehr versteht ....

  • XML auslesen

    • i2c
    • 1. Oktober 2013 um 10:33
    Zitat

    steht bei $aCustomers[i$][1] die 1 für den ersten Kunden?
    könnte ich mir bei diesem Array jetzt auch zb nur die Eine Nummer vom Kunden und dann Extra den Kunden dazu ausgeben, falls ich anders mit der Variable arbeiten möchte?

    $aCustomers[$i][1] ist die zweite Dimension des Array $aCustomers. In ihr befindet sich ein weiteres Array, das die einzelnen Pfade des Kunden hält. Schau dir mal den Output in der Konsole an. Ich hab das Gefühl, du kannst dir den AUfbau dieses Array nicht wirklich vorstellen.

    Spoiler anzeigen
    [autoit]

    #include <array.au3>
    #include <String.au3>

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

    $sXML = '<video>' & @CRLF & _
    '<Kunde>Klaus</kunde>' & @CRLF & _
    '<Objektnummer>12345</Objektnummer>' & @CRLF & _
    '<Objektnummer>54815</Objektnummer>' & @CRLF & _
    '</video>' & @CRLF & _
    '<video>' & @CRLF & _
    '<Kunde>Fritz</kunde>' & @CRLF & _
    '<Objektnummer>5677879</Objektnummer>' & @CRLF & _
    '</video>' & @CRLF & _
    '<video>' & @CRLF & _
    '<Kunde>Heinz</kunde>' & @CRLF & _
    '<Objektnummer>43567</Objektnummer>' & @CRLF & _
    '<Objektnummer>87234</Objektnummer>' & @CRLF & _
    '</video>' & @CRLF & _
    '<video>' & @CRLF & _
    '<Kunde>Peter</kunde>' & @CRLF & _
    '<Objektnummer>45678</Objektnummer>' & @CRLF & _
    '</video>'

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

    $aResult = StringRegExp($sXML, "<video>(?s)(.*?)</video>", 3, 1)
    ;_ArrayDisplay($aResult)

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

    Dim $aCustomers[1][2]

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

    For $i = 0 To UBound($aResult) - 1
    Dim $aCustomer[1]
    Dim $aPaths[1]
    $aCustomer = _StringBetween($aResult[$i], "<kunde>", "</kunde>")
    ReDim $aCustomers[UBound($aCustomers) + 1][2]
    $aCustomers[UBound($aCustomers) - 1][0] = $aCustomer[0]
    $aObjects = _StringBetween($aResult[$i], "<Objektnummer>", "</Objektnummer>")
    _ArrayConcatenate($aCustomer, $aObjects)
    ;_ArrayDisplay($aCustomer)
    For $j = 1 To UBound($aCustomer) - 1
    _ArrayAdd($aPaths, "/" & $aCustomer[0] & "/" & $aCustomer[$j])
    Next
    ;_ArrayDisplay($aPaths)
    $aCustomers[UBound($aCustomers) - 1][1] = $aPaths
    Next
    $outputMessage = ""
    For $i = 1 To UBound($aCustomers) - 1
    $aTmp = $aCustomers[$i][1]
    $outputMessage &= @CRLF & "[" & $i & "][0] -> " & $aCustomers[$i][0] & @CRLF
    $outputMessage &= "[" & $i & "][1] -> [0]" & @CRLF
    For $j = 1 To UBound($aTmp) - 1
    $outputMessage &= @TAB & "-> [" & $j & '] ' & $aTmp[$j] & @CRLF
    Next
    Next
    ConsoleWrite($outputMessage & @LF)

    [/autoit]


    Damit sollte auch klar werden, warum es zwei inneinander verschachtelte For-Schleifen sind. Die äussere durchläuft die erste Dimension von $aCustomers, die innere holt die dazugehörigen Informationen aus der 2ten Dimension.

    Zugreifen kannst du hier natürlich auch auf einzelne Kunden per _ArraySearch(). Die Kundennamen stehen ja gerade deshalb in der ersten Dimension von $aCustomers. Hast du den Kunden in der ersten DImension gefunden, kannst du an diesem Index natürlich auch die zweite Dimension durchsuchen, um eine bestimmte Nummer bzw. einen bestimmten Pfad zu finden.

    Zitat

    müsste ich bei "1 to UBound($aCustomers) - 1" nicht eigentlich hochzählen? Ich sage ihm doch das er von 1 bis "Größe des Arrays" zb 10 hochzählen soll aber das -1 würde ihn doch gleich am anfang von 1 auf 0 setzen oder?

    $i = 1 To Ubound(...) -1 zählt hoch. Die Zählrichtung und die grösse dr Schritte würde man mit dem "Step" Schlüsselwort bestimmen. Dazu schaust du dir bitte die Hilfe zu For-Schleifen an. UBound() ermittelt die Anzahl der Elemente in einem Array. Da der Index eines Arrays aber bei null beginnt, müssen wir von der Anzahl an Elementen eins abziehen um den Index des letzen Elements zu erhalten. Dazu bitte mal im Array-Tutorial von BugFix nachlesen: http://www.bug-fix.info/array_tut.htm

    Ich hoffe das dir das in irgendeiner Wese hilft. Mein Erklärbärmodus läuft momentan etwas instabil.

  • XML auslesen

    • i2c
    • 30. September 2013 um 21:17
    Spoiler anzeigen
    [autoit]

    #include <array.au3>
    #include <String.au3>

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

    $sXML = '<video>' & @CRLF & _
    '<Kunde>Klaus</kunde>' & @CRLF & _
    '<Objektnummer>12345</Objektnummer>' & @CRLF & _
    '<Objektnummer>54815</Objektnummer>' & @CRLF & _
    '</video>' & @CRLF & _
    '<video>' & @CRLF & _
    '<Kunde>Fritz</kunde>' & @CRLF & _
    '<Objektnummer>5677879</Objektnummer>' & @CRLF & _
    '</video>' & @CRLF & _
    '<video>' & @CRLF & _
    '<Kunde>Heinz</kunde>' & @CRLF & _
    '<Objektnummer>43567</Objektnummer>' & @CRLF & _
    '<Objektnummer>87234</Objektnummer>' & @CRLF & _
    '</video>' & @CRLF & _
    '<video>' & @CRLF & _
    '<Kunde>Peter</kunde>' & @CRLF & _
    '<Objektnummer>45678</Objektnummer>' & @CRLF & _
    '</video>'

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

    $aResult = StringRegExp($sXML, "<video>(?s)(.*?)</video>", 3, 1)
    ;_ArrayDisplay($aResult)

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

    Dim $aCustomers[1][2]

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

    For $i = 0 To UBound($aResult) - 1
    Dim $aCustomer[1]
    Dim $aPaths[1]
    $aCustomer = _StringBetween($aResult[$i], "<kunde>", "</kunde>")
    ReDim $aCustomers[UBound($aCustomers) + 1][2]
    $aCustomers[UBound($aCustomers) - 1][0] = $aCustomer[0]
    $aObjects = _StringBetween($aResult[$i], "<Objektnummer>", "</Objektnummer>")
    _ArrayConcatenate($aCustomer, $aObjects)
    ;_ArrayDisplay($aCustomer)
    For $j = 1 To UBound($aCustomer) - 1
    _ArrayAdd($aPaths, "/" & $aCustomer[0] & "/" & $aCustomer[$j])
    Next
    ;_ArrayDisplay($aPaths)
    $aCustomers[UBound($aCustomers) - 1][1] = $aPaths
    Next

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

    For $i = 1 To UBound($aCustomers) - 1 ;durchläuft das Array von Index 1 bis Ende
    $aTmp = $aCustomers[$i][1] ;schreibt das Array aus der Zweiten Dimension (Pfade des Kunden) am aktuellen Index in ein temporäres Array
    For $j = 1 To UBound($aTmp) - 1 ;durchläuft das temporäre Array von Index 1 bis Ende
    MsgBox(0, "", "Mach was mit " & $aTmp[$j]) ;Zugriff auf die einzelnen Pfade des Kunden
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • Tree in DB abspeichern und wieder auslesen

    • i2c
    • 28. September 2013 um 20:53
    Zitat

    Ich hab auch schon geschafft den Tree über ein Array auszulesen und dann in eine DB zu
    schreiben.


    Wenn du uns nicht zeigst, wie du die Daten speicherst, wie sollen wir dir dann sagen wie du sie wieder auskesen kannst?

    Datenbanktyp .... Datenbankstruktur ... irgendwelche Query???????

  • tab-getrenntes Textfile auslesen?

    • i2c
    • 27. September 2013 um 19:45

    Wenn ich jetzt erwähne, das PainTain diesen 4 Minuten vorher erstellten Post von water evtl. nicht gelesen hat, können wir das Thema damit beenden oder pushen wir diesen Uralt-Thread noch ein paar mal mit sinnlosen Beiträgen hoch?

  • Exe unter Win NT4

    • i2c
    • 27. September 2013 um 18:37

    Wollte er nicht. Sollte vielmehr als Quellenangabe dienen.

    Mir war ehrlich gesagt nicht bewusst, das überhaupt mal eine AutoIt Version kompatibel zu Windows Version vor 2000 war. Jetzt weiss ich's :)

  • Exe unter Win NT4

    • i2c
    • 27. September 2013 um 17:38
    Zitat

    AutoIt has been designed to work on Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008/2008 R2, Windows 7, Windows 8. With no annoying runtime libraries required

    http://www.autoitscript.com/site/autoit/downloads/

  • Name, ID und PW in eine .ini speichern und in ListView zeigen(aktuallisiert)

    • i2c
    • 27. September 2013 um 16:56

    Ich versteh nicht ganz, was du da miteinander vergleichen willst.
    Lagere den Teil des Codes, der deine Listview füllt in eine Funktion aus und ruf diese Funktion jedes Mal auf, nachdem über das GUI ein neuer Eintrag angelegt wurde. Dann ist die ListView immer aktuell.

    Ausserdem würde ich dazu übergehen, den Seitennamen als Sektionsnamen in der ini zu verwenden. IniReadSectionNames() .... IniReadSection() ....

    Code
    [Autoit]
    id=benutzername
    pass=streng_geheim

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™