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

Beiträge von BugFix

  • Auto IT - Pfad-Angaben

    • BugFix
    • 21. Juni 2007 um 13:04

    Ich verstehe nicht, wozu eine kpl. Datei in die Zwischenablage kopiert werden soll.
    Es reicht doch der Pfad, alles andere kann dann doch in weiteren Schritten folgen.

  • _FileChangeDir

    • BugFix
    • 20. Juni 2007 um 23:08

    Hi,
    ich war mal so frei, deine Syntaxstruktur anzupassen.
    Sonst kann man sich da schlecht reinlesen. ;)

    Spoiler anzeigen
    [autoit]

    Func _FileChangeDir($lFilePath)
    Local $er = FileChangeDir($lFilePath)
    If $er = 0 Then; Pfad konnte nicht vom Standard FileChangeDir geändert werden
    Local $i, $lVolLetter
    Local $lPos = StringInStr($lFilePath, ":")
    If $lPos > 1 Then
    Local $lVolName = StringLeft($lFilePath, $lPos)
    Local $fPath = StringMid($lFilePath, $lPos+1)
    Local $var = DriveGetDrive("all")
    If NOT @error Then
    For $i = 1 to $var[0]
    If (DriveGetLabel($var[$i]) & ":") == $lVolName Then
    $lVolLetter = $var[$i]
    Exitloop
    EndIf
    Next
    If $lVolLetter <> "" Then
    $er = FileChangeDir($lVolLetter & $fPath)
    If $er = 1 Then
    Return("1"); Arbeitsverzeichnis erfolgreich geändert
    Else
    Return("0"); Fehler im Dateipfad
    EndIf
    Else
    Return("0"); kein Volume mit diesem Namen gefunden
    EndIf
    EndIf
    Else
    Return("0"); ungültiger Volumename
    EndIf
    Else
    Return("1"); Arbeitsverzeichnis erfolgreich geändert (Standard FileChangeDir)
    EndIf
    EndFunc

    [/autoit]
  • GuiCtrlCreateList-Frage(n)

    • BugFix
    • 19. Juni 2007 um 22:45

    Die Syntax ist korrekt, sollte gehen.

    Laß dir doch mal vor der Schleife $var ausgeben:
    _ArrayDisplay($var)
    Dann kannst du sicher sein, dass auch Daten übergeben werden.

  • Glühstrumpf Alina!

    • BugFix
    • 19. Juni 2007 um 22:10

    Auch von mir:

    til lykke med fødselsdagen :D

  • GuiCtrlCreateList-Frage(n)

    • BugFix
    • 19. Juni 2007 um 21:17

    Ich hatte für die Arbeit mit Listbox mal ein Bsp. mit Code-Ausgabe erstellt.
    Vielleicht nützt dir das was.
    FAQ

  • Alle Dateien auflisten - Fehler wenn Ordner leer

    • BugFix
    • 18. Juni 2007 um 19:43
    Zitat

    _ArrayInsert($FileList, $j + $i, $tmpdir & $tmp[$j])
    _ArrayInsert($FileList, $j + $i, $tmpdir & ^ ERROR


    Bedeutet, dass $tmp kein Array ist (klar, wenn leerer Ordner). Da du es als Array ansprichst entsteht der Fehler.
    Also solche Situationen abfangen, indem du vorher prüfst ob die Variable ein Array ist:

    [autoit]

    If IsArray($tmp) Then
    _ArrayInsert($FileList, $j + $i, $tmpdir & $tmp[$j])
    Else
    ; Fehler setzen oder MsgBox
    EndIf

    [/autoit]
  • wichtige Nachricht.... in e-Mail-Postfach

    • BugFix
    • 18. Juni 2007 um 19:35

    Hmm, habe weder 'ne eMail bekommen, noch nervende Popups (allerdings nutze ich auch Adblock :D ).
    Seltsame Dinge, die da geschehen...

  • Script springt zurück, oder was ist falsch?

    • BugFix
    • 18. Juni 2007 um 19:07

    Hi,

    hab noch 'ne Ergänzung.
    So wird das Datum geprüft und ggf. angepaßt falls die Zielzeit kleiner als die aktuelle Zeit ist.

    [autoit]

    #include <Date.au3>

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

    $ShutDownTime = '18:10'
    If $ShutDownTime < @HOUR & ':' & @MIN Then
    $now = @YEAR & '/' & @MON & '/' & @MDAY+1
    Else
    $now = @YEAR & '/' & @MON & '/' & @MDAY
    EndIf

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

    $min = _DateDiff('n', _NowCalc(), $now & ' ' & $ShutDownTime )
    $h = Floor($min/60)
    $m = $min - $h*60
    $h_m = StringFormat("%02u" & ":" & "%02u", $h, $m)

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

    MsgBox(0,'',"verbleibende Zeit: " & $h_m )

    [/autoit]
  • Quiz

    • BugFix
    • 18. Juni 2007 um 18:30

    Puh, harter Brocken.

    Ich werf einfach mal rein, was mir einfällt. In Kombination mit den Ideen der andren wirds ja vielleicht was. :D

    1. muscle / body / schwarzenegger
    2. stairway (to heaven ?)
    3. lone tree
    4. wild boy
    5. thirst / to quench / to have one over the eight :rofl:

    Viel Spaß noch in Schweden. Bring doch ein paar hübsche Mädels mit. ;)

  • Script springt zurück, oder was ist falsch?

    • BugFix
    • 18. Juni 2007 um 10:04
    [autoit]

    #include <Date.au3>

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

    $ShutDownTime = '17:30' ; per InputBox
    $min = _DateDiff('n', _NowCalc(), _NowCalcDate( ) & ' ' & $ShutDownTime )
    $h = Floor($min/60)
    $m = $min - $h*60
    $h_m = $h & ':' & $m
    MsgBox(0,'',"verbleibende Zeit: " & $h_m)

    [/autoit]
  • Zahl wird nicht neu geladen

    • BugFix
    • 17. Juni 2007 um 22:24

    Schreiben in eine bestimmte Zeile? Ganz einfach, hier aus der Hilfe:

    [autoit]

    #include <File.au3>
    ;Example: Write to line 3 of c:\test.txt REPLACING line 3
    _FileWriteToLine("c:\test.txt", 3, "my replacement for line 3", 1)
    ;Example: Write to line 3 of c:\test.txt NOT REPLACING line 3
    _FileWriteToLine("c:\test.txt", 3, "my insertion", 0)

    [/autoit]
  • Denkfejler ?

    • BugFix
    • 17. Juni 2007 um 19:30

    Sag mal, liegt das am Wetter?
    Ist mir auch in einigen anderen Threads aufgefallen, dass die Emotionen ziemlich schnell hochkochen. :D

    Es geht doch überhaupt nicht um Schuldzuweisungen.
    Du hast alles zu FTP durchgelesen, und die in den Bsp. verwendeten Funktionen sind dir rückhaltlos klar? :rolleyes:

  • Horizontal Scroll in Listbox - tuts nicht

    • BugFix
    • 17. Juni 2007 um 18:40

    Hi, Danke Bernd das wars.

  • Denkfejler ?

    • BugFix
    • 17. Juni 2007 um 16:21

    @WoW-Unit

    Also so wie ich das bis jetzt mitbekommen habe, hast du kaum Programmierkenntnisse.
    Daher meine Frage: Warum willst du ein FTP-Upload Programm erstellen, wenn du schon nach wenigen Schritten bemerkst, dass dir dafür z.Zt. noch die Voraussetzungen fehlen?

    Ich kann durchaus die Forenmitglieder verstehen, die dann leicht gereizt reagieren.

    Stelle die Bsp. aus der Hilfe nach, erweitere diese. Kombiniere mit anderen Funktionen. Dabei lernst du die Basics.

    Abfragen, Schleifen - bevor du das einsetzt und dann an der Umsetzung scheiterst, sollte dir klar sein, wie es funktioniert.

    Ich wollte dich hiermit nicht entmutigen, aber dir sollte klar sein, dass die Grundlagen der Programmierung nicht in ein paar Tagen zu erlernen sind.
    Bleib dran und gib nicht auf, versuche zuerst immer selbst einen Ansatz zu finden. Kommst du dann nicht mehr weiter, helfen wir gern.

  • variable in GUI

    • BugFix
    • 17. Juni 2007 um 10:53

    Das kann man schlecht verallgemeinern, kommt immer sehr auf den Einzelfall an, also vom Inhalt / Aufbau der Site, die du abfragen möchtest.

    Sind die gesuchten Daten tatsächlich direkt im Quellcode, holst du dir diesen einfach mit:

    [autoit]

    #include <INet.au3>
    $source = _INetGetSource ( $s_URL )

    [/autoit]

    Dann mußt du sehen, wie sich der gesuchte Text sicher herausfiltern läßt. ( _StringBetween() / StringRegExp() )

    Falls es so nicht machbar ist verwende die <IE.au3>. Hier kann man jetzt aber gar keine allgemeinen Tipps geben. Jetzt muß man genau schauen, wo der gesuchte Inhalt zu finden ist.

  • Auto(It)-Updater

    • BugFix
    • 16. Juni 2007 um 22:54
    Zitat

    Wie kann man das Ganze jetzt automatisieren, also wenn Scite gestartet wird prüfen ob eine Internetverbindung besteht und dann das Update starten...


    [autoit]

    $var = Ping("www.autoit.de")
    If @error = 0 Then
    MsgBox(0, '', 'Verbindung besteht')
    Else
    MsgBox(0, '', 'keine Verbindung')
    Endif

    [/autoit]
  • Array2DInsert

    • BugFix
    • 16. Juni 2007 um 17:02

    Hi,
    um meine Array Funktionen zu komplettieren:

    _Array2DInsert( )

    - analog zu _ArrayInsert( ) aber für 1D-Arrays und 2D-Arrays
    - fügt ein neues Arrayelement an benannter Position ein
    - Anzahl der Elemente in der 2-ten Dimension nicht limitiert (nur durch Autoit selbst)


    Edit:
    Hab es jetzt noch so erweitert, dass es mit 1D und 2D -Arrays arbeitet

    Spoiler anzeigen
    [autoit]

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;
    ; Function _Array2DInsert(ByRef $avArray, $iElement [, $sValue=''])
    ;
    ; Description Insert an Array element on a given position
    ; Works with any occurences in 2nd Dimension
    ; Works also with 1D-Array
    ;
    ; Parameter $avArray Given Array
    ; $iElement 0-based Array Index, to insert new Element
    ; optional $sValue Value of new Element, parts must be seperate with '|'
    ;
    ; Return Succes the given Array with new Element
    ; Failure 0 and set @error
    ; @error = 1 given array is not array
    ; @error = 2 given parts of Element too less/much
    ; @error = 3 $iElement larger then Ubound
    ;
    ; Author BugFix ([email='bugfix@autoit.de'][/email])
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    Func _Array2DInsert(ByRef $avArray, $iElement, $sValue='')
    If ( Not IsArray($avArray) ) Then
    SetError(1)
    Return 0
    EndIf
    Local $UBound2nd = UBound($avArray,2)
    If @error = 2 Then
    Local $arTMP[UBound($avArray)+1]
    If $iElement > UBound($avArray) Then
    SetError(3)
    Return 0
    EndIf
    For $i = 0 To UBound($arTMP)-1
    If $i < $iElement Then
    $arTMP[$i] = $avArray[$i]
    ElseIf $i = $iElement Then
    If $i < UBound($avArray) Then
    $arTMP[$i] = $sValue
    $arTMP[$i+1] = $avArray[$i]
    Else
    $arTMP[$i] = $sValue
    EndIf
    ElseIf ($i > $iElement) And ($i < UBound($avArray))Then
    $arTMP[$i+1] = $avArray[$i]
    EndIf
    Next
    Else
    Local $arTMP[UBound($avArray)+1][$UBound2nd], $arValue
    If $sValue = '' Then
    For $i = 0 To $UBound2nd-2
    $sValue &= '|'
    Next
    EndIf
    $arValue = StringSplit($sValue, '|')
    If $arValue[0] <> $UBound2nd Then
    SetError(2)
    Return 0
    EndIf
    If $iElement > UBound($avArray) Then
    SetError(3)
    Return 0
    EndIf
    For $i = 0 To UBound($arTMP)-1
    If $i < $iElement Then
    For $k = 0 To $UBound2nd-1
    $arTMP[$i][$k] = $avArray[$i][$k]
    Next
    ElseIf $i = $iElement Then
    If $i < UBound($avArray) Then
    For $k = 0 To $UBound2nd-1
    $arTMP[$i][$k] = $arValue[$k+1]
    $arTMP[$i+1][$k] = $avArray[$i][$k]
    Next
    Else
    For $k = 0 To $UBound2nd-1
    $arTMP[$i][$k] = $arValue[$k+1]
    Next
    EndIf
    ElseIf ($i > $iElement) And ($i < UBound($avArray))Then
    For $k = 0 To $UBound2nd-1
    $arTMP[$i+1][$k] = $avArray[$i][$k]
    Next
    EndIf
    Next
    EndIf
    $avArray = $arTMP
    EndFunc ;==>_Array2DInsert

    [/autoit]

    Dateien

    _Array2DInsert.au3 2,55 kB – 474 Downloads
  • Horizontal Scroll in Listbox - tuts nicht

    • BugFix
    • 16. Juni 2007 um 11:16

    ;)
    Hatte ich vergessen zu erwähnen, diese Variante habe ich auch schon durch. Mit demselben Ergebnis.

  • Horizontal Scroll in Listbox - tuts nicht

    • BugFix
    • 16. Juni 2007 um 10:56

    Hi,
    habe eine ganz simple Listbox. Da die Einträge wechseln und unterschiedlich lang sind wollte ich den Style "$WS_HSCROLL" verwenden. Leider tut sich dabei nix.
    Definiere ich den Style in der Ctrl-Erstellung passiert gar nix.
    Erstelle ich erst das Ctrl und setze dann den Style, habe ich zwar eine Scrollbar, die scrollt aber nicht.
    Und GUICtrlRecvMsg() arbeitet ohne Fehlermeldung aber auch ohne Wirkung.

    Mehr fällt mir eigentlich nicht ein um den Style zu aktivieren.
    Habt ihr noch Ideen oder findet hierbei 'nen Fehler ?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt("GUIOnEventMode", 1)

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

    Dim $txt1 = 'blablablablablablablablablablablabla'
    Dim $txt2 = 'laberlaberlaberlaberlaberlaberlaber'

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

    $GUI = GUICreate("", 200, 200, -1, -1)
    GUISetOnEvent($GUI_EVENT_CLOSE, "CloseSettings")

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

    ;~ $list = GUICtrlCreateList('', 20, 20, 160, 160, $WS_HSCROLL) ; Scrollbar erscheint nicht

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

    $list = GUICtrlCreateList('', 20, 20, 160, 160)
    GUICtrlSetStyle($list, $WS_HSCROLL) ; Scrollbar erscheint aber scrollen geht nicht
    ;~ $scroll = GUICtrlRecvMsg($list, $WS_HSCROLL,1,0) ; bringt keinen Fehler aber ohne jede Wirkung

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

    GUISetState(@SW_SHOW)
    GUICtrlSetData(-1, $txt1 & '|' & $txt2)

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

    While 1
    Sleep(100)
    WEnd

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

    Func CloseSettings()
    Exit
    EndFunc

    [/autoit]
  • Problem mit Hilfedateien

    • BugFix
    • 15. Juni 2007 um 18:14

    Danke Bernd für deine Bemühungen. Leider ohne Erfolg.
    Genau das gleiche Bild wie vorher.
    Vielleicht ist das noch von Interesse:
    Das Hilfe-Fenster erscheint und die linke Hälfte (Inhaltsverzeichnis) enthält Daten. Die rechte Hälft ist leer.

    Nur ich versteh echt nicht den Zusammenhang:
    Rufe ich die Autoit Hilfe per Doppelklick auf, verschwindet sie wieder.
    Bin ich in Scite und rufe über F1 die Hilfe funktioniert es. Es wird doch aber in beiden Fällen die 'hh.exe' gestartet. ?( ?(

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™