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

Beiträge von autoBert

  • Or Probleme...

    • autoBert
    • 21. Oktober 2009 um 14:10

    Hallo Schnitzel,

    Zitat von Schnitzel

    ich denke nicht dass es das gleiche ist wie mit den not, da wir ja ein oder haben

    man müsste dein Or durch ein And ersetzten dass es das gleiche ist oder nicht?

    bei subzero007:
    wenn ordner1 oder ordner2 nicht existiert dann create listview ansonsten fileopen

    bei dir:
    wenn ordner1 oder ordner2 existiert dann fileopen ansonsten create listview

    da is n großer unterschied.
    bei ihm macht er n listviewelement wenn einer der beiden nicht existiert
    bei dir macht er n listviewelement nur dann wenn nicht existieren

    aber wie gsagt man muss nur das Or durch And ersetzten und dann passts

    Alles anzeigen

    dass es nicht das gleiche ist, dem stimme ich voll und ganz zu.
    Ich muss aber nach diesem Eröffnungspost:

    Zitat von subzero007

    Was mache ich falsch Kriege immer nur Syntax fehler:
    Was will ich machen prüfe ob datei in pfad 1 oder in pfad 2 wenn nein GUICtrlCreateListViewItem

    und wenn datei enthalten mit else weitermachen ....


    davon ausgehen, dass er genau die von mir gepostete Lösung sucht deshalb auch

    Zitat von AutoBert

    wenn ich dich richtig verstanden habe willst du falls sich die Datei weder im Suchpfad1 noch im Suchpfad 2 enthalten ist ein ListViewItem anlegen, ansonsten möchtest du die Datei öffnen. Hier die Logik dazu:

    subzero007, vielleicht kannst du ja das Problem noch einmal genauer erklären

    mfg (Auto)Bert

  • Or Probleme...

    • autoBert
    • 21. Oktober 2009 um 13:37

    Hallo subzero007,

    versuch es doch einfach einmal so (siehe auch meinen vorhergehenden Post):

    Spoiler anzeigen
    [autoit]

    Func _befuelle_lv_liste()
    ;### Befülle Listview Liste aus Inhalten einer 26 - spaltigen csv Datei
    ;### Suchkriterium Hostname aus dem Listview $ListViewText [1] (noch zu überprüfen!!!!), gffs. musst Du den Hostnamen anders bestimmen
    ;### CSV Daten:
    ;### 7. Spalte Besitzer
    ;### 17. Spalte Hostname
    ;### 26. Spalte Last Logon
    _GUICtrlListView_DeleteAllItems($Liste)

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

    Local $arfile
    Local $file = '\\server\share\log\CI.csv'
    _FileReadToArray($file, $arfile)
    ;_ArrayDisplay($arfile)
    Local $icount = _GUICtrlListView_GetItemCount($ListViewhost)
    For $j = 0 To $icount - 1
    ;$ListViewText = _GUICtrlListView_GetItemTextArray($ListViewhost, $i)

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

    $ListViewText = _GUICtrlListView_GetItemText($ListViewhost, $j)

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

    For $i = 1 To UBound($arfile) - 1 ; 1. Element ist Beschreibung der csv Daten
    $temp = StringSplit($arfile[$i], ";")
    If $temp[17] = $ListViewText Then ; Wenn der Hostname mit dem Hostnamen aus dem 1. Listview übereinstimmt (das musst Du noch kontrollieren)
    $IP = _QueryDNS($ListViewText)
    Ping($ListViewText, 100) ; Host anpingen
    If Not @error Then $STATus = 'ON'
    Ping($ListViewText, 100) ; Host anpingen
    If @error Then $STATus = 'Offline'

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

    If (FileExists("\\server\share\log1\" & $ListViewText & ".log")) Or (FileExists("\\server\share\log2\" & $ListViewText & ".log")) Then
    $file = FileOpen("\\server\share\log3\" & $ListViewText & ".log", 0)
    While 1
    ;
    ;
    $Text = ""
    $line = FileReadLine($file)
    If @error = -1 Then ExitLoop
    $Text = StringReplace($line, "USERNAME=", "")
    If @extended > 0 Then ;GUICtrlCreateListViewItem($ListViewText[1]&'|'&$text, $Liste)
    ; _ADGetLastLoginDate($Text)

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

    If $Text = "" Then
    GUICtrlCreateListViewItem($temp[17] & "|" & "|" & $Text & "|" & $temp[7] & "|" & $IP & "|" & $STATus, $Liste)
    EndIf

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

    $result1 = _ADObjectExists($Text)
    If $result1 = 1 Then
    $result = _ADGetLastLoginDate($Text)
    If $result1 = 0 Then
    $result = ''
    EndIf
    $result = StringRegExpReplace($result, "(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})", "$4:$5:$6 $3.$2.$1")

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

    GUICtrlCreateListViewItem($temp[17] & "|" & $Text & "|" & $result & '|' & $temp[7] & "|" & $IP & "|" & $STATus, $Liste)
    EndIf
    EndIf
    WEnd

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

    FileClose($file)

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

    Else
    GUICtrlCreateListViewItem($temp[17] & "||" & $Text & "|" & $temp[7] & "|" & $IP & "|" & $STATus, $Liste)
    EndIf ;
    ;$file = FileOpen("\\emea.corpdir.net\e068\Admin\ClientService\Client_INI\SWScan2\" & $ListViewText & ".swscan", 0)
    ;Zeilen des Textes einlesen bis EOF
    ; dann befülle 2.ten listview mit Hostnamen, Last Logon Name und Besitzer
    EndIf
    Next
    Next
    EndFunc ;==>_befuelle_lv_liste

    [/autoit]

    Testen kann ich es leider nicht selber, da es ja nur ein aus dem Zusammenhang (fehlende Variblendeklaration etc) gerissen ist,

    mfg (Auto)Bert

  • Or Probleme...

    • autoBert
    • 21. Oktober 2009 um 13:13

    Hallo subzero007,

    wenn ich dich richtig verstanden habe willst du falls sich die Datei weder im Suchpfad1 noch im Suchpfad 2 enthalten ist ein ListViewItem anlegen, ansonsten möchtest du die Datei öffnen. Hier die Logik dazu:

    [autoit]

    If (FileExists("\\server\share\log1\" & $ListViewText & ".log")) Or (FileExists("\\server\share\log2\" & $ListViewText & ".log")) Then
    $file = FileOpen("\\server\share\log3\" & $ListViewText & ".log", 0)
    Else
    GUICtrlCreateListViewItem($temp[17] & "||" & $Text & "|" & $temp[7] & "|" & $IP & "|" & $STATus, $Liste)
    EndIf

    [/autoit]

    mfg (Auto)Bert

  • unbestimmte Zeilenanzahl in txt datei

    • autoBert
    • 21. Oktober 2009 um 04:36

    Hallo EmEx,

    schau dir die Hilfe zu _FileReadToArray an, damit kannst du es am einfachsten realisieren,

    mfg (Auto)Bert

  • Style Problem

    • autoBert
    • 21. Oktober 2009 um 03:23

    Hallo simon,

    Zitat von simon

    Dann erscheint zwar mein scrollbar an der seite aber ganz klein(das ding zum ziehen) aber wenn ich daran runterzeihe (runterscrolle) springt es nach dem loslassen wieder nach oben
    Obwohl der GUI Inhalt weiter nach unten geht
    die gui inhalte habe ich mit for und next erstellt es sind lauter label und buttons.

    Das Hauptproblem ist doch gelöst. Das Skript mit WM_VScroll habe ich in [gelöst] Fenster mit Vertikalen Scroll? gefunden.
    Du kannst dir aber auch einmal die Hilfe zu _GUIScrollBars_Init anschauen, vielleicht hilft dir das ja weiter.

    mfg (Auto)Bert

  • Wie kann ich das verbessern ??????????

    • autoBert
    • 21. Oktober 2009 um 01:01

    Hallo systemtrader01,

    Zitat von systemtrader01

    Hallo an alle wie kann ich denn den Code so abändern das ein User
    keinen einfluss mehr hat bzw das program nicht gestört werden kann,
    wenn jemand zum beispiel mit der Maus rumfuchtelt??????????

    schau dir einmal die Hilfe zu BlockInput an,

    zu verschiedenen Auflösungen: MouseClick ist Koordinaten abhängig, diese können sich je nach Browsereinstellung und/oder Auflösung ändern

    mfg (Auto)Bert

  • Script funktioniert nicht mehr.

    • autoBert
    • 20. Oktober 2009 um 23:30

    Hallo slash,

    hier ein abgeändertes Skript:

    Spoiler anzeigen
    [autoit]

    #include <GUIconstants.au3>
    #include <Guiedit.au3>
    #include <inet.au3>
    #include <string.au3>
    #include <array.au3>

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

    FileDelete(@TempDir & "\ytbg.jpg")
    FileDelete(@TempDir & "\ytbtn.jpg")
    FileDelete(@TempDir & "\ytsplash.jpg")
    FileDelete(@TempDir & "\ytflv.exe")

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

    FileInstall(@ScriptDir & "\ytbg.jpg", @TempDir & "\ytbg.jpg")
    FileInstall(@ScriptDir & "\ytbtn.jpg", @TempDir & "\ytbtn.jpg")
    FileInstall(@ScriptDir & "\ytsplash.jpg", @TempDir & "\ytsplash.jpg")
    FileInstall(@ScriptDir & "\ytflv.exe", @TempDir & "\ytflv.exe")

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

    $destination = @TempDir & "\ytsplash.jpg"

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

    SplashImageOn("", $destination, 398, 41)
    Sleep(3000)
    SplashOff()

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

    GUICreate("YouTube 2 MP3 Converter by Slash", 398, 340)
    GUICtrlCreatePic(@TempDir & "\ytbg.jpg", 0, 0, 398, 340)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $lurl = GUICtrlCreateLabel("Url:", 0, 41)
    GUICtrlSetBkColor($lurl, 0xFFFFFF)
    $URL = GUICtrlCreateInput("", 20, 41, 378)
    $dl_AND = GUICtrlCreatePic(@TempDir & "\ytbtn.jpg", 0, 62, 398, 41)
    GUICtrlSetCursor(-1, 0)
    $Console = GUICtrlCreateEdit("", 0, 100, 398, 220, BitOR($GUI_SS_DEFAULT_EDIT, $ES_READONLY))
    $progress = GUICtrlCreateProgress(0, 320, 398, 20)
    GUICtrlSetBkColor($Console, "0xFFFFFF") ; Set background color of output field
    GUICtrlSetColor($Console, "0xff0000") ; Set font color of output field
    GUISetState()
    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $dl_AND
    _Start()
    EndSwitch
    WEnd
    Func _Start()
    $lastest = 0
    ;~ Local
    $you_url = GUICtrlRead($URL)
    If Not StringInStr($you_url, "youtube.com") Then Return MsgBox(0, "Fehler!", "Dieser Link ist kein Gültiger Youtube Link!")
    add("Url zum Downloaden:" & $you_url)
    ;~ First get the v= parameter
    For $1 = 1 To StringLen($you_url)
    If StringMid($you_url, $1, 2) = "v=" Then
    $url_1 = StringMid($you_url, $1 + 2)
    ExitLoop
    EndIf
    Next
    If StringInStr($url_1, "&") Then
    ;~ MsgBox(0,"NEW","")
    For $1 = 1 To StringLen($url_1)
    If StringMid($url_1, $1, 1) = "&" Then
    $url_1 = StringMid($url_1, 1, $1 - 1)
    EndIf
    Next
    EndIf

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

    ;~ MsgBox(0,0,$url_1&@CR&$you_url)
    $download = "http://www.youtube.com/get_video?video_id=" & $url_1 & "&t="
    $source = _INetGetSource("http://www.youtube.com/api2_rest?method=youtube.videos.get_video_token&video_id=" & $url_1)
    ;~ ConsoleWrite($source & @CRLF)
    $between = _StringBetween($source, '<t>', '</t>')
    $download &= $between[0]
    add("Link zur FLV Datei:" & $download)
    $size = InetGetSize($download) / 1024 / 1024
    $calculateperc = InetGetSize($download) / 100
    add("Downloaden..")
    $name = _StringBetween(_INetGetSource($you_url), '<meta name="title" content="', '">')
    $name = StringReplace(StringReplace($name[0], "'", ""), "´", "")
    ;~ MsgBox(0,0,$name&@CRLF& @ScriptDir&"\"&$name&".flv")
    GUICtrlSetData($progress, 0)
    InetGet($download, @ScriptDir & "\" & $name & ".flv", 1, 1)
    While @InetGetActive
    $get = @InetGetBytesRead
    For $1 = 0 To 100
    If $get > $calculateperc * $1 And $get < $calculateperc * ($1 + 1) Then
    If $lastest = $1 - 1 Then
    GUICtrlSetData($progress, $1)
    $lastest = $1
    EndIf
    EndIf
    Next
    Sleep(10)
    WEnd
    If @InetGetBytesRead > -1 Then ; <======== nur wenn kein Downloadfehler
    GUICtrlSetData($progress, 100)
    add("Download abgeschlossen")
    add("Starte nun das Umwandeln der Datei!")
    RunWait(@TempDir & '\ytflv.exe "' & @ScriptDir & '\' & $name & '.flv' & '"', @ScriptDir, @SW_HIDE) ; <======== damit ytflv.exe auch wirklich mit dem Umwandeln fertig ist und nicht die QUELL.FLV blockiert
    add("Umwandeln abgeschlossen!:" & @ScriptDir & "\" & $name & ".mp3")
    add("Löschen der FLV Datei")
    Sleep(1000) ; <======== vorsichtshalber eingebaut
    If FileExists(@ScriptDir & "\" & $name & ".mp3") Then
    FileDelete(@ScriptDir & "\" & $name & ".flv")
    add("FLV Datei erfolgreich gelöscht!")
    EndIf
    Else ; <======== wenn Downloadfehler (bei mir leider immer)
    add("Downloadfehler von " & $you_url & @CRLF & "(" & $name & ")")
    ;FileDelete(@ScriptDir & "\" & $name & ".flv")
    EndIf
    EndFunc ;==>_Start

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

    Func add($zText)
    _GUICtrlEdit_AppendText($Console, $zText & @CRLF)
    EndFunc ;==>add

    [/autoit]

    leider sind die heruntergeladenen Dateien immer 0-Bytes groß also unbrauchbar

    SEuBo

    Zitat

    autoBert
    Versuch mal Zeile 29 zu folgendem zu ändern:

    [autoit]

    $dl_AND = GUICtrlCreateButton("Download",0,62,398,41)

    [/autoit]

    Da wir das von GUICtrlCreatePic gefragte Bild nicht haben, ist $dl_AND = "" , oder?
    Wenn also GUIGetMsg einen leeren wert liefert weil nichts geklickt wurde, startet Case $dl_AND (da es auch leer ist) in dem Fall die Funktion immer und immer wieder.

    stimmt genau, das Problem habe ich gelöst indem ich mir das fehlende JPG erzeugt habe (X-Beliebe JPG-Datei umkopiert)

    Die Lösung mit dem Löschen von dir führt zu einer endlosschleife, sollte aus irgendeinem Grund die MP3 nicht vorhanden sein. Ich habe deshalb runwait statt run für den Aufruf von ytflv.exe und noch einen sleep von 1000 ms danach genommen, dies erscheint mir sicherer.

    mfg (Auto)Bert

  • Style Problem

    • autoBert
    • 20. Oktober 2009 um 15:32

    Hallo simon,

    hattest du an so etwas gedacht:

    Spoiler anzeigen
    [autoit]

    #include <ScrollBarConstants.au3>
    ;http://www.autoit.de/index.php?page…6006#post116006
    #include <WindowsConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiButton.au3>
    #include <StructureConstants.au3>
    #include <GUIScrollBars.au3>
    #include <Date.au3>
    Opt('GUIOnEventMode', 1)
    Global $pichinetgo = @ScriptDir & '\5-r.gif'
    $Gui = GUICreate('', 1003, 600, -1, -1,BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_VSCROLL,$WS_BORDER,$WS_CLIPSIBLINGS))
    GUISetBkColor(0xFFFACD, $Gui)
    GUISetOnEvent(-3, '_Exit')
    Local $arTage[31][2]
    $x = 176 ; +22
    For $i = 0 To 30
    $arTage[$i][0] = GUICtrlCreateInput(StringRight('0' & $i + 1, 2), $x, 20, 21, 20)
    $arTage[$i][1] = GUICtrlCreateInput('', $x, 41, 21, 20)
    $x += 22
    Next
    Local $aschTage[31][2]
    $x = 176 ; +22
    For $i = 0 To 30
    $aschTage[$i][0] = GUICtrlCreateInput('', $x, 90, 21, 20)
    $aschTage[$i][1] = GUICtrlCreateInput('', $x, 111, 21, 20)
    $x += 22
    Next

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

    Local $aschTage[31][12]
    $x = 176 ; +22
    $y = 90
    For $i = 0 To 30
    $aschTage[$i][0] = GUICtrlCreateInput('', $x, 90, 21, 20)
    $aschTage[$i][1] = GUICtrlCreateInput('', $x, 111, 21, 20)
    GUICtrlCreateInput('', $x, $y, 21, 20)
    GUICtrlCreateInput('', $x, $y, 21, 20)
    $x += 22
    $y += 21
    Next
    GUIRegisterMsg($WM_VSCROLL, "WM_VSCROLL")
    _GUIScrollBars_Init($Gui)
    GUISetState()

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

    Func _Exit()
    Exit
    EndFunc ;==>_Exit
    Local $Color = 0x000000
    While 1
    Sleep(10)
    WEnd
    Func WM_VSCROLL($hWnd, $Msg, $wParam, $lParam)
    #forceref $Msg, $wParam, $lParam
    Local $nScrollCode = BitAND($wParam, 0x0000FFFF)
    Local $index = -1, $yChar, $yPos
    Local $Min, $Max, $Page, $Pos, $TrackPos

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

    For $x = 0 To UBound($aSB_WindowInfo) - 1
    If $aSB_WindowInfo[$x][0] = $hWnd Then
    $index = $x
    $yChar = $aSB_WindowInfo[$index][2]
    ExitLoop
    EndIf
    Next
    If $index = -1 Then Return 0

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

    ; Ermittelt alle Informationen der vertikalen Scrollbar
    Local $tSCROLLINFO = _GUIScrollBars_GetScrollInfoEx($hWnd, $SB_VERT)
    $Min = DllStructGetData($tSCROLLINFO, "nMin")
    $Max = DllStructGetData($tSCROLLINFO, "nMax")
    $Page = DllStructGetData($tSCROLLINFO, "nPage")
    $yPos = DllStructGetData($tSCROLLINFO, "nPos")
    $TrackPos = DllStructGetData($tSCROLLINFO, "nTrackPos")
    ; Speichert die y-Position für einen späteren Vergleich
    $Pos = $yPos

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

    ; Auswertung der vom System gemeldeten Scroll-Nachricht
    Switch $nScrollCode
    Case $SB_TOP ; Der Anwender klickte auf die "Pos1"-Taste
    DllStructSetData($tSCROLLINFO, "nPos", $Min)

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

    Case $SB_BOTTOM ; Der Anwender klickte auf die "Ende"-Taste
    DllStructSetData($tSCROLLINFO, "nPos", $Max)

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

    Case $SB_LINEUP ; Der Anwender klickte auf den oberen Pfeil
    DllStructSetData($tSCROLLINFO, "nPos", $Pos - 1)

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

    Case $SB_LINEDOWN ; Der Anwender klickte auf den unteren Pfeil
    DllStructSetData($tSCROLLINFO, "nPos", $Pos + 1)

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

    Case $SB_PAGEUP ; Der Anwender klickte oberhalb des Scrollbalkens
    DllStructSetData($tSCROLLINFO, "nPos", $Pos - $Page)

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

    Case $SB_PAGEDOWN ; Der Anwender klickte unterhalb des Scrollbalkens
    DllStructSetData($tSCROLLINFO, "nPos", $Pos + $Page)

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

    Case $SB_THUMBTRACK ; Der Anwender zog den Scrollbalken
    DllStructSetData($tSCROLLINFO, "nPos", $TrackPos)
    EndSwitch

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

    ;~ // Setzt die neue Position und ermittelt sie danach erneut.
    ;~ // Abhängig von den Windows-Einstellungen kann es sein, dass die gelesenen Werte nicht die gleichen sind, wie die vorher gesetzten.

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

    DllStructSetData($tSCROLLINFO, "fMask", $SIF_POS)
    _GUIScrollBars_SetScrollInfo($hWnd, $SB_VERT, $tSCROLLINFO)
    _GUIScrollBars_GetScrollInfo($hWnd, $SB_VERT, $tSCROLLINFO)
    ; // Falls sich die y-Position der Scrollbar geändert hat, den Fensterbereich verschieben und aktualisieren
    $Pos = DllStructGetData($tSCROLLINFO, "nPos")
    If ($Pos <> $yPos) Then
    _GUIScrollBars_ScrollWindow($hWnd, 0, $yChar * ($yPos - $Pos))
    $yPos = $Pos
    EndIf

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

    Return $GUI_RUNDEFMSG

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

    EndFunc ;==>WM_VSCROLL

    [/autoit]

    mfg (Auto)Bert

  • Fenster 2 so wie 1

    • autoBert
    • 19. Oktober 2009 um 22:27

    Hallo Detroid49,

    verstehe zwar den Sinn nicht, aber nach diesem Schema funktioniert es:

    Spoiler anzeigen
    [autoit]

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

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

    Opt('MustDeclareVars', 1)

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

    Global $hGui, $hGui2, $myedit2, $msg2

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

    $hGui2 = GUICreate("Meine GUI mit dem 2. Edit-Feld",-1,-1,5,5) ; Erstellt ein GUI-Fenster welches mittig ausgerichtet wird

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

    $myedit2 = GUICtrlCreateEdit("Erste Zeile" & @CRLF, 5, 5, 200, 200, $ES_AUTOVSCROLL + $WS_VSCROLL)

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

    GUISetState()
    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst

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

    Example()
    GUIDelete($hGui2)
    GUIDelete($hGui)

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

    Func Example()
    Local $myedit, $msg

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

    $hGui = GUICreate("Meine GUI mit dem 1. Edit-Feld",-1,-1,300,300) ; Erstellt ein GUI-Fenster welches mittig ausgerichtet wird

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

    $myedit = GUICtrlCreateEdit("Erste Zeile" & @CRLF, 5, 5, 200, 200, $ES_AUTOVSCROLL + $WS_VSCROLL)

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

    GUISetState()

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

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst
    While 1
    $msg = GUIGetMsg()

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

    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    if GuiCtrlRead($myedit2) <> GuiCtrlRead($myedit) then GUICtrlSetData($myedit2,GUICtrlRead($myedit))
    WEnd
    EndFunc ;==>Example

    [/autoit]

    mfg (Auto)Bert

  • Wie führe ich zwei Scripte zusammen?

    • autoBert
    • 19. Oktober 2009 um 17:13

    Hallo ePole,

    Calc.Exe habe ich als Default vorbelegt, nimm es einfach wieder heraus. Der Browser ist doch schon gestartet, ich dachte du willst ein anders Programm starten (siehe Zeile 3 deines 2. Skriptes) im Eröffnungspost,

    mfg (Auto)Bert

  • Progress Start

    • autoBert
    • 19. Oktober 2009 um 17:05

    Hallo slin,

    warum denn gleich 2 Threads für 1 Problem siehe: Progress starten automatisch oder hattest du an so etwas gedacht?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    Global $i

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Hackshield", 236, 99, 192, 124)
    $Progress = GUICtrlCreateProgress(0, 80, 233, 17)
    $Icon1 = GUICtrlCreateIcon("C:\Users\********\Documents\Dokumente\icons\Boss.ico", -1, 0, 0, 33, 25, BitOR($SS_NOTIFY, $WS_GROUP))
    $Label1 = GUICtrlCreateLabel("War Rock ", 48, 8, 154, 41)
    GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif")
    $Label2 = GUICtrlCreateLabel("Homepage URL", 8, 56, 98, 24)

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

    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

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

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

    EndSwitch
    If $i / 100 > GUICtrlRead($Progress / 100) Then GUICtrlSetData($Progress, $i / 100)
    $i += 1
    WEnd

    [/autoit]

    mfg (Auto)Bert

    mfg (Auto)Bert

  • Script funktioniert nicht immer. Warum?

    • autoBert
    • 19. Oktober 2009 um 16:45

    Hallo ePole,

    Zitat von ePole

    Soweit läuft das Script 1a, doch manchmal habe ich das Problem das sich der Browser nicht genau nach meiner eingestellten 1 Minute von selbst schliesst, sondern erst nach 5 oder 7 ... usw. Woran kann es liegen?


    Die Func _Timer_GetIdleTime() liefert die Ticks seit der letzten Benutzeraktivität zurück. Dies gilt aber für alle Aktivitäten nicht nur für dein Programm,

    mfg (Auto)Bert

  • Was ist ein "sichtbares" Fenster, bzw wie finde ich heraus ob ein Fenster von einem anderen verdeckt ist?

    • autoBert
    • 19. Oktober 2009 um 16:30

    Hallo Andy,

    du kannst ja auf den Event $GUI_EVENT_RESTORE reagieren und das (die) anderen Fenster dann in den Vordergrund holen,

    mfg (Auto)Bert

  • Programm stütz ab

    • autoBert
    • 19. Oktober 2009 um 16:23

    Hallo Magnus,

    du solltest nach WinGetPos überprüfen ob die Variable ein Array ist, siehe hierzu meinen vorhergehenden Post,

    mfg (Auto)Bert

  • Timerfunktion spinnt?

    • autoBert
    • 19. Oktober 2009 um 16:08

    Hallo ePole,

    schau dir einmal die Hilfe zu _GetIdleTime an,

    mfg (Auto)Bert

  • Programm stütz ab

    • autoBert
    • 19. Oktober 2009 um 15:38

    Hallo Magnus,

    das Skript läuft bei mir einwandfrei, du solltest daher den Fehler etwas genauer beschreiben (bei welcher Aktion etc?). Der Fehler kann eigentlich nur vorkommen, wenn das zu versteckende Programm(-Fenster) nicht mehr existiert, da dann WinGetPos kein Array zurückliefert. Kleines TestSkript zu WinGetPos ohne vorhandenes Fenster

    [autoit]

    $ar= WinGetPos("IrgendEtwasWasNichtexistiert")
    ConsoleWrite($ar[0] & @CRLF)

    [/autoit]


    Kann so abgefangen werden:

    [autoit]

    $ar= WinGetPos("IrgendEtwasWasNichtexistiert")
    if IsArray($ar) then
    ConsoleWrite($ar[0] & @CRLF)
    Else
    ConsoleWrite("Keine Arraydaten!!!" & @CRLF)
    EndIf

    [/autoit]

    mfg (Auto)Bert

  • Wie führe ich zwei Scripte zusammen?

    • autoBert
    • 19. Oktober 2009 um 14:17

    Hallo ePole,

    einfach nur die Stile für GuiCreate anpassen:

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <IE.au3>
    #Include <Timers.au3>

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

    HotKeySet("{ESC}","Kill")
    ;Global Const $WS_EX_COMPOSITED = 0x02000000
    ;$gui = GUICreate("",300,300,0,0, BitOR($WS_SIZEBOX, $WS_POPUPWINDOW, $WS_CLIPCHILDREN), BitOR($WS_EX_TOOLWINDOW, $WS_EX_COMPOSITED));Erstellt ein GUI
    $gui = GUICreate("",300,300,0,0, BitOR($WS_SIZEBOX,$WS_POPUPWINDOW,$WS_MAXIMIZE));Erstellt ein GUI
    GUISetState();Macht es sichtbar

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

    $GUISize = WinGetClientSize($gui) ;fragt grösse deines Fensters ab
    ;~ $GUISize[0] wäre breite
    ;~ $GUISize[1] wäre höhe
    $eIE = _IECreateEmbedded()
    GUICtrlCreateObj($eIE, 0,0,$GUISize[0], $GUISize[1])
    _IENavigate($eIE,"www.google.de")

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

    $maxIdle_min = IniRead(@ScriptDir & "\shutdown.ini", "Tireconfig", "Time", "1" )
    $prog = IniRead(@ScriptDir & "\shutdown.ini", "Tireconfig", "Path", "calc.exe" )
    $pid = Run($prog)
    Do
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_Close
    Kill()
    EndSwitch
    $IdleTime = _Timer_GetIdleTime()
    ConsoleWrite($maxIdle_min & " " & $IdleTime & @CRLF)
    Until $IdleTime > $maxIdle_min*60*1000
    Kill()

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

    Func Kill()
    ProcessClose ($pid)
    Exit
    EndFunc

    [/autoit]

    mfg (Auto)Bert

  • Kleiner Universal Forum Autologin

    • autoBert
    • 18. Oktober 2009 um 22:27

    Hallo DaX,

    Zitat von DaX

    Wie weit soll das noch gehen? Als Nächstest musst Microsoft dann noch Alternativen für sein Windows-Explorer, Texteditor und Malprogramm anbieten. Jeder schimpft auf Microsoft, doch alle Welt benutzt Microsoft-Produkte.

    auch hierfür gibt es sehr gute Alternativen, man sollte deine Idee mal in Brüssel vorschlagen,

    mfg (Auto)Bert

  • Schlechte suche

    • autoBert
    • 18. Oktober 2009 um 22:20

    Hallo Jam00 and @rest,

    dass Jam00 seinen Chat über die SuFu nicht findet mag zwar für ihn ärgerlich sein, aber ich finde mich it der SuFu im Allgeneinen gut zurecht.

    mfg (Auto)Bert

  • Projekt Norm

    • autoBert
    • 18. Oktober 2009 um 21:52

    Hallo Team2Way,

    hast du die Seite deines Projektes schon einmal selbst aufgerufen :?: Bekomme in der zweiten Hälfte nur Schrott:

    Spoiler anzeigen
    Code
    ';a.google_container_id?Rc(a.google_container_id,b,e):b.write(e)}return c}function Sc(a){Vb(a)}function Tc(a,b){if(!Uc())return j;var c=Lc();a=Vc(a,b);c=fc(window)+Wc(a.google_ad_format,c);window.google_ad_url=Ic(a,c);return g} var Zc=function(a){a.dt=aa;var b=window.google_prev_ad_formats_by_region,c=window.google_ad_section,d=window.google_ad_format,e=window.google_ad_slot;if(b[code=c])if(!N(d)){a.prev_fmts=b[code=c];if(window.google_num_slots_by_client.length>1)a.slot=window.google_num_slots_by_client[Q]}var f=window.google_prev_ad_slotnames_by_region;if(f[code=c])a.prev_slotnames=f[code=c].toLowerCase();if(d){if(!N(d))if(b[code=c])b[code=c]+=","+d;else b[code=c]=d}else if(e)if(f[code=c])f[code=c]+=","+e;else f[code=c]=e;a.correlator=window.google_correlator;if(window.google_new_domain_checked== 1&&window.google_new_domain_enabled==0)a.dblk=1;if(window.google_ad_channel){b=window.google_num_slots_by_channel;c="";d=window.google_ad_channel.split(Xc);for(e=0;e-1){for(e=0;e");e=Ta(f)}}a=j;a=c?Tc(e,d):Tc();e&&e.id==f&&bb(e);if(a){c=Qc(window,document,window.google_ad_url); hc().registerAdBlockByType(window.google_ad_output,c,j);Sc(window)}}var cd=function(a){var b;for(b in ub)a[ub[b]]=window[b];for(b in tb)a[tb[b]]=window[b];for(b in vb)a[vb[b]]=window[b]},dd=function(a){Dc(window.google_eids,1);a.eid=Cc()};function ed(a,b,c,d){a=Pb(a,b,c,d);Ec(window,document);return a}function fd(){Ub()} function gd(a){var b={};a=a.split("?");a=a[a.length-1].split("&");for(var c=0;c1?window.decodeURIComponent?decodeURIComponent(d[1].replace(/\+/g," ")):unescape(d[1]):""}catch(e){}}return b}function hd(){var a=window,b=gd(document.URL);if(b.google_ad_override){a.google_ad_override=b.google_ad_override;a.google_adtest="on"}} function Rc(a,b,c){if(a)if((a=b.getElementById(a))&&c&&c.length!=""){a.style.visibility="visible";a.innerHTML=c}} var Wc=function(a,b){return a=N(a)?"/pagead/sdo?":b?"/pagead/render_iframe_ads.html#":"/pagead/ads?"},id=function(a,b){b.dff=vc(a);b.dfs=Ac(a)},Uc=function(){var a=window.google_prev_ad_formats_by_region,b=window.google_prev_ad_slotnames_by_region,c=window.google_ad_section;if(N(window.google_ad_format)){window.google_num_sdo_slots+=1;if(window.google_num_sdo_slots>4)return j}else if(M(window)){window.google_num_0ad_slots+=1;if(window.google_num_0ad_slots>3)return j}else{window.google_num_ad_slots+= 1;if(window.google_num_slots_to_rotate){Rb(1);a[code=c]=h;b[code=c]=h;if(window.google_num_slot_to_show==h)window.google_num_slot_to_show=(new Date).getTime()%window.google_num_slots_to_rotate+1;if(window.google_num_slot_to_show!=window.google_num_ad_slots)return j}else if(window.google_num_ad_slots>6&&c=="")return j}a=window.google_num_slots_by_client;if(a[Q])a[Q]+=1;else{a[Q]=1;a.length+=1}return g},Vc=function(a,b){var c={};cd(c);Zc(c);rb(c);if(a){id(a,c);$c(a,!!b,c)}ad(c);dd(c);c.fu=Qb;return c},Xc=/[+, ]/; window.google_render_ad=bd;var jd=["30143070","30143071","30143075"],kd=typeof window.postMessage=="function"||typeof window.postMessage=="object"||typeof document.postMessage=="function",md=function(a,b){typeof A1_googleCreateSlot=="function"?A1_googleCreateSlot(a.google_ad_client):ld(a,b)},od=function(){if(!nd())return j;return g},pd=function(a){if(N(a.google_ad_format))return j;var b=a.google_ad_output;if(b&&b!="html")return j;a=a.google_ad_client;if(typeof a!="string"||a.substring(0,4)!="pub-"&&a.substring(0,7)!="ca-pub-")return j; return g},rd=function(a){if(typeof a.google_a1_eid=="string")return a.google_a1_eid;var b=H("0",0);a.google_a1_eid=qd(jd,b);return a.google_a1_eid},ld=function(a,b){if(!a.google_included_a1_script){var c="script",d="/pagead/show_ads_sra3.js?v\x3d1";b.write("<"+c+' src="http://'+K+d+'">");a.google_included_a1_script=g}},nd=function(){if(z&&D("8"))return j;return kd||!C},qd=function(a,b){var c=Math.random();if(c  Ihr Browser unterstützt keine iFrames, bitte klicken Sie hier
    
    
    Kostenlose Subdomain von www.rockt.es

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™