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

Beiträge von wolkenloser

  • Gui mit Schleife - Buttons funktionieren nicht

    • wolkenloser
    • 30. Oktober 2012 um 08:26

    Hi,
    Ich habe nochmal rumprobiert.
    Mit der While Schleife in der Whileschliefe funktioniert es zwar, aber die CPU Last ist für so einen Miniprozess sehr hoch.
    Es funktioniert übrigens nicht wenn der Sleep Befehl in der Funktion steht, so als wenn er dann da nicht mehr raus kommt ?!?

    Was dann auch noch ein unschöner Effekt ist: die Zahlen flackern die ganze Zeit als wenn die Funktion andauernd aufgerufen wird ohne den Sleepbefehl durchzuführen.

    Wenn noch jemand eine zündende Idee hat wäre ich dankbar :)


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

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <process.au3>
    #include <array.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Spoolcheck", 289, 85, 196, 152)
    $Label1 = GUICtrlCreateLabel("Dateien im Spoolverzeichnis", 3, 8, 137, 17)
    $Data1 = GUICtrlCreateLabel("Data1", 157, 8, 33, 17)
    $Button1 = GUICtrlCreateButton("öffnen", 206, 4, 75, 20)
    $Label2 = GUICtrlCreateLabel("Dateien in Windows\Temp", 3, 30, 131, 17)
    $Data2 = GUICtrlCreateLabel("Data2", 157, 29, 33, 17)
    $Button2 = GUICtrlCreateButton("öffnen", 206, 26, 75, 20)
    $Label3 = GUICtrlCreateLabel("Dateien in RETRY", 3, 52, 131, 17)
    $Data3 = GUICtrlCreateLabel("Data3", 157, 50, 33, 17)
    $Button3 = GUICtrlCreateButton("öffnen", 206, 48, 75, 20)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1

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

    while 1
    Zaehlen()
    ExitLoop
    Sleep (2000)
    WEnd

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

    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    ShellExecute("EXPLORER", "C:\Windows\System32\spool\PRINTERS")
    Case $Button2
    ShellExecute("EXPLORER", "C:\Windows\temp")
    Case $Button3
    ShellExecute("EXPLORER", "D:\Proforma\Proforma\retry")

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

    EndSwitch

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

    WEnd

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

    Func Zaehlen()

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

    $size1 = DirGetSize("C:\Windows\System32\spool\PRINTERS\",1)
    $size2 = DirGetSize("C:\Windows\TEMP\",1)
    $size3 = DirGetSize("D:\Proforma\Proforma\retry",1)

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

    If IsArray($size1) Then
    GUICtrlSetData($Data1,$size1[1])
    EndIf

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

    If IsArray($size2) Then
    GUICtrlSetData($Data2,$size2[1])
    EndIf

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

    If IsArray($size3) Then
    GUICtrlSetData($Data3,$size3[1])
    EndIf
    GUISetState()

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

    EndFunc

    [/autoit]
  • Gui mit Schleife - Buttons funktionieren nicht

    • wolkenloser
    • 30. Oktober 2012 um 08:00

    Hallo,
    ich habe mir ein kleines Überwachungsscript für meinen Printserver geschrieben welches mir alle 2 Sekunden die Anzahl der Dateien ausgibt die in drei Verzeichnissen liegen.
    Ich habe jetzt nur ein Problem
    Entweder klappt das Zählen, dann funktionieren meine Buttons aber nicht,
    oder Buttons funktionieren - dann klappt das Zählen aber nur einmal.

    Hier kommt mal die Version wo das Zählen Funktioniert (die wichtigere Funktion).
    Kann mir einer eine Tip geben wie ich es Hinbekommen das der die Ordner alle 2 Sekunden aktualisiert und die Buttons trotzdem funktionieren ?

    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <process.au3>
    #include <array.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Spoolcheck", 289, 85, 196, 152)
    $Label1 = GUICtrlCreateLabel("Dateien im Spoolverzeichnis", 3, 8, 137, 17)
    $Data1 = GUICtrlCreateLabel("Data1", 157, 8, 33, 17)
    $Button1 = GUICtrlCreateButton("öffnen", 206, 4, 75, 20)
    $Label2 = GUICtrlCreateLabel("Dateien in Windows\Temp", 3, 30, 131, 17)
    $Data2 = GUICtrlCreateLabel("Data2", 157, 29, 33, 17)
    $Button2 = GUICtrlCreateButton("öffnen", 206, 26, 75, 20)
    $Label3 = GUICtrlCreateLabel("Dateien in RETRY", 3, 52, 131, 17)
    $Data3 = GUICtrlCreateLabel("Data3", 157, 50, 33, 17)
    $Button3 = GUICtrlCreateButton("öffnen", 206, 48, 75, 20)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    Zaehlen()

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

    While 1

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

    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    ShellExecute("EXPLORER", "C:\Windows\System32\spool\PRINTERS")
    Case $Button2
    ShellExecute("EXPLORER", "C:\Windows\temp")
    Case $Button3
    ShellExecute("EXPLORER", "D:\Proforma\Proforma\retry")

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

    EndSwitch

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

    Wend

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

    WEnd

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

    Func Zaehlen()

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

    $size1 = DirGetSize("C:\Windows\System32\spool\PRINTERS\",1)
    $size2 = DirGetSize("C:\Windows\TEMP\",1)
    $size3 = DirGetSize("D:\Proforma\Proforma\retry",1)

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

    If IsArray($size1) Then
    GUICtrlSetData($Data1,$size1[1])
    EndIf

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

    If IsArray($size2) Then
    GUICtrlSetData($Data2,$size2[1])
    EndIf

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

    If IsArray($size3) Then
    GUICtrlSetData($Data3,$size3[1])
    EndIf

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

    GUISetState()
    Sleep(2000)

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

    EndFunc

    [/autoit]
  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 16. Mai 2012 um 14:44

    Cool, jetzt geht es
    :thumbup:

    und schnell genug ist es auch

  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 16. Mai 2012 um 13:59

    Mhm,
    ich habe ein bisschen experimentiert, einmal hat es geklappt,
    Jetzt nicht mehr.
    Für dei Zeit habe ich mal was dazugebaut

    [autoit]


    Global $jetzt, $30minago
    $jetzt = @year & "-" & @mon & "-" & @mday & " " & @hour & ":" & @min
    $30minago =stringtrimright(stringreplace(_dateadd('n', -30, _nowcalc()),"/","-"),3)
    MsgBox(0,"Uhrzeiten", $jetzt & @cr & $30minago)

    [/autoit]

    Das liefert dann das hier:
    2012-05-16 13:48
    2012-05-16 13:18


    mit

    [autoit]


    global $Postfach = "*\Posteingang"
    $aItems = _OL_ItemFind($oOutlook, $Postfach, $olMail, "[UnRead]=True", "", "", "Subject,Body", "", 1)

    [/autoit]


    Bekomme ich schön meine ungelesenen Mails angezeigt

    damit bekomme ich nix...

    [autoit]


    global $Postfach = "*\Posteingang"
    $aItems = _OL_ItemFind($oOutlook, $Postfach, $olMail, "[ReceivedTime]<='" & $30minago & "' And [ReceivedTime]>='" & $jetzt & "'", "", "", "Subject,Body", "", 1)

    [/autoit]


    Hier nochmal das ganze Script was bei jedem sofort funktionieren müsste.

    [autoit]


    #AutoIt3Wrapper_AU3Check_Parameters= -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    #AutoIt3Wrapper_AU3Check_Stop_OnWarning=Y

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

    #include <OutlookEX.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <Date.au3>

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

    Global $oOutlook = _OL_Open()
    Global $aItems, $message, $folder, $aItems2

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

    ; ZEITSTEMPEL
    Global $jetzt, $30minago
    $jetzt = @year & "-" & @mon & "-" & @mday & " " & @hour & ":" & @min
    $30minago =stringtrimright(stringreplace(_dateadd('n', -30, _nowcalc()),"/","-"),3)
    MsgBox(0,"Uhrzeiten", $jetzt & @cr & $30minago)
    ;~ clipput( $jetzt & @cr & $30minago)

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

    $aItems = _OL_ItemFind($oOutlook, "*\Posteingang", $olMail, "[UnRead]=True", "", "", "Subject,Body", "", 1)

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

    ;Zeige Ungelesene Mails im Posteingang
    If IsArray($aItems) Then
    _ArrayDisplay($aItems, "")

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

    Else
    MsgBox(48, "OutlookEX UDF: _OL_ItemFind Example Script", "Could not find an unread mail. @error = " & @error & ", @extended: " & @extended)
    EndIf

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

    ;Zeige mails aus den letzten 30 Minuten
    $aItems2 = _OL_ItemFind($oOutlook, "*\Posteingang", $olMail, "[ReceivedTime]<='" & $30minago & "' And [ReceivedTime]>='" & $jetzt & "'", "", "", "Subject,Body", "", 1)
    If IsArray($aItems2) Then
    _ArrayDisplay($aItems2, "")

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

    Else
    MsgBox(48, "OutlookEX UDF: _OL_ItemFind Example Script", "Could not find an unread mail. @error = " & @error & ", @extended: " & @extended)
    EndIf

    [/autoit]
  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 16. Mai 2012 um 11:06
    Zitat von water


    Dann würde ich doch eher nach Mails suchen, die in der letzten 1/2 Stunde eingetroffen sind. Wenn das Ergebnis 0 ist, dann hat Du keine Mails bekommen.

    ICh habe das mal so versucht:

    [autoit]


    $aItems = _OL_ItemFind($oOutlook, "Postfach - Gruppenpostfach1\Posteingang", $olMail, "[Start]='2012-05-16 10:15' And [End]='2012-05-16 10:45'", "", "", "Subject,Body", "", 1)

    [/autoit]

    In dieser Zeit habe ich ca 20 Mails im Postfach, mir wird aber keine angezeigt...

  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 15. Mai 2012 um 15:38

    Wenn ich alle ungelesenen Mails mit meinem Aufruf als gelesen markieren will, wie würdest Du das machen ?

    Mein Ziel ist festzustellen, wenn in diesem Postfach seit max 30min keine neuen Mails mehr auftauchen.

  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 10. Mai 2012 um 15:01

    Da fällt mir gerade etwas zu ein:

    Wenn ich "_OL_ItemFind" ausführe wird je ein Array mit Einträgen gefüllt.
    Kann ich irgendwie anzeigen lassen während das geschied ?
    z.B. mit Tooltip das aktuelle Item anzeigen ? (MSGBOX wäre Sinn frei)

  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 10. Mai 2012 um 11:17
    Zitat von wolkenloser

    [quote='water','index.php?page=Thread&postID=253634#post253634']Auf das zweite Postfach greifst Du mit _OL_FolderAccess zu. Du bekommst einen Array zurück dessen Element[1] Du dann an die weiteren Funktionen weitergibst. _OL_FolderGet gibt Dir im Array auch die Anzahl der ungelesenen Mails zurück.

    _OL_FolderSet kannst Du komplett streichen, da diese Funktion nur den selektierten Folder ändert (also für das GUI sinnvoll ist).

    Das hatte ich auch schon probiert,
    aber wenn ich das mache

    [autoit]


    Global $aFolder = _OL_FolderAccess($oOutlook, "Postfach - Gruppenpostfach1\Posteingang"

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

    oder

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

    Global $aFolder = _OL_FolderAccess($oOutlook, "Postfach - Gruppenpostfach1"

    [/autoit]

    Ohne *\ geht es.
    Es dauert nur etwas länger weil im Postfach über 20.000 Mails stehen.
    Trotzdem geil das es funktioniert !
    :thumbup:

  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 10. Mai 2012 um 10:11
    Zitat von water

    Auf das zweite Postfach greifst Du mit _OL_FolderAccess zu. Du bekommst einen Array zurück dessen Element[1] Du dann an die weiteren Funktionen weitergibst. _OL_FolderGet gibt Dir im Array auch die Anzahl der ungelesenen Mails zurück.

    _OL_FolderSet kannst Du komplett streichen, da diese Funktion nur den selektierten Folder ändert (also für das GUI sinnvoll ist).

    Das hatte ich auch schon probiert,
    aber wenn ich das mache

    [autoit]


    Global $aFolder = _OL_FolderAccess($oOutlook, "*\Postfach - Gruppenpostfach1\Posteingang"

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

    oder

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

    Global $aFolder = _OL_FolderAccess($oOutlook, "*\Postfach - Gruppenpostfach1"

    [/autoit]

    bekomme ich eine Fehler: @error = "4"

  • Outlook, ungelesenen Mails von einem Eingebundenen Konto auslesen

    • wolkenloser
    • 10. Mai 2012 um 08:52

    Hi,
    Ich wollte eine Überprüfung ob ungelesenen Mails in einem zweiten eingebundenen Outlookprofil stehen, aber irgendwie klaps nicht.

    Wenn ich das auf meine eingenen Posteingang mache funktioniert das:

    [autoit]


    #AutoIt3Wrapper_AU3Check_Parameters= -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    #AutoIt3Wrapper_AU3Check_Stop_OnWarning=Y

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

    #include <OutlookEX.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    Global $oOutlook = _OL_Open()
    Global $aItems, $message, $folder
    _OL_FolderSet($oOutlook, "*\Posteingang")

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

    $aItems = _OL_ItemFind($oOutlook, "*", $olMail, "[UnRead]=True", "", "", "Subject,Body", "", 1)
    If IsArray($aItems) Then
    _ArrayDisplay($aItems, "OutlookEX UDF: _OL_ItemFind Example Script - Unread mails")
    Else
    MsgBox(48, "OutlookEX UDF: _OL_ItemFind Example Script", "Could not find an unread mail. @error = " & @error & ", @extended: " & @extended)
    EndIf

    [/autoit]

    Jetzt habe ich ein zweites Postfach eingebunden und möchte hier das gleiche machen.
    Die Idee war mit

    [autoit]

    _OL_FolderSet($oOutlook, "*\Postfach - Gruppenpostfach1\Posteingang")

    [/autoit]


    den Focus auf das zweite Postfach zu setzen und dann die gleiche Abfrage nochmal zu machen.
    Funktioniert aber nicht, er zeigt mir dann wieder die ungelesenen Mails in meinem persönlichen Posteingang an.

    Dann hatte ich noch versucht das andere Postfach mit

    [autoit]

    $oOutlook = _OL_Open()

    [/autoit]

    zu öffnen.
    Aber das bekomme ich auch nicht hin.

    Kann jemand helfen.

  • Auoit als Drucker

    • wolkenloser
    • 7. April 2012 um 06:18

    Hallo,
    ich möchte gerne einen eigene Druckertreiber mit Autoit generieren.

    Ziel ist es z.B. eine beliebiges Dokument über das Windows Druckermenue an ein Autoitprogramm zu übergeben.
    Das Autoit soll dann die eigentliche Datei nehmen und damit etwas machen, z.B. Soll damit ein Dokument gefaxt werden.
    Mir schwebt dann vor das z.B ein einfacher Dialog mit der Faxnummer abgefragt wird und dann das Dokument und die Info mit dem Fax an eine Faxsoftware auf einem anderen PC weitergegeben wird (entweder per Filecopy oder ggf sogar per Mail).

    Das problem was ich habe ist eigendlich nicht das Autoitprogramm, sondern wie kann ich diese "senden an" Funktion über die Auswahl eines Druckers erreichen ?

  • Processlist remote abfragen

    • wolkenloser
    • 23. Februar 2012 um 13:32
    Zitat von Protex

    Wofür poste ich meine Beispiele überhaupt wenn du sie dir scheinbar nicht mal anschaust, ich habe dir doch 2 Lösungen gepostet...

    Gruß Marvin

    Hi Marvin,
    sorry ich habe das wirklich übersehen , das sieht schon mal gut aus.

    PS:
    Das mit dem denken krieg ich schon hin ;)

  • Processlist remote abfragen

    • wolkenloser
    • 23. Februar 2012 um 11:14
    Zitat von Schickedim

    Hallo,

    per Console geht es.

    TASKLIST /S System /U Benutzername /P Kennwort /FO TABLE /NH

    So Vielleicht? Kanns leider nicht testen, habe zurzeit keinen Zugriff auf einen Server oder anderen Rechner.

    Spoiler anzeigen
    [autoit]

    $ip = inputbox("IP"," Ipadresse:")
    $user = inputbox("Username:", "domäne\user")
    $pass = inputbox("Passwort", "Passwort:", "", "*")
    Run(@ComSpec & " /k " & "tasklist /S \\"& $ip & "/U" & $user & "/P" & $pass & "/FO /NH", '', @SW_SHOW)

    [/autoit]

    Wenn ich mich Irre bitte berichtigen.

    Alles anzeigen

    Gernau das mit der Console habe ich ja auch schon ausprobiert,
    allerdings werte ich Tasklist mit einem Angehängten |find "Processname /C aus.

    Code
    tasklist /s Servername  |find "pcsws" /C


    Das liefert dann als Rückgabe die Anzahl der abgefragten Prozesse und genau die brauche ich um sie in Autoit weiterzuverarbeiten)
    Wie gesagt Autoit - PROCESSLIST liefert genau das was ich brauche....

  • Processlist remote abfragen

    • wolkenloser
    • 22. Februar 2012 um 13:42

    Hallo, ich möchte gerne mit "ProcessList()" Prozesse auf einem Server abfragen.
    ProcessList() geht aber nur für lokale Systeme.
    Geht das auch Remote ?

  • Dienste überwachen

    • wolkenloser
    • 17. Februar 2012 um 11:43

    Hab's gefunden:
    http://www.autoitscript.com/forum/topic/81…e__hl__services

  • Dienste überwachen

    • wolkenloser
    • 17. Februar 2012 um 11:40

    Hi, kann mir jemand sagen wie ich die services.au3 bekomme ?
    Unter dem Link und dem weiterführenden dahinter gibt's die nicht mehr.

  • Prüfen ob eine Programm eine Datei geöffnet hat

    • wolkenloser
    • 2. Februar 2012 um 07:53

    Hi Danke,
    das ist in etwa das was ich gesucht habe.

  • Prüfen ob eine Programm eine Datei geöffnet hat

    • wolkenloser
    • 31. Januar 2012 um 13:48

    Hallo,
    ich habe ein Script welches in einer Schleife ein Verzeichnis auf Inhalt prüft.
    Wird eine Datei gefunden soll diese in ein anderes Verzeichnis verschoben werden.

    Mein Problem ist jetzt das es zwar Grundsätzlich funktioniert allerdings taucht ein Problem auf wenn die Datei gerade geschrieben wird und das Skript dann zuschlägt. Das führt in der Anwendung zu einem Zugriffsfehler.

    Da ich nicht genau sagen kann wielange die Anwendung braucht um eine Datei zu schreiben muß ich irgendwie prüfen ob die Datei noch geöffnet ist.
    Ein Wartezeit in der Schleife einzufügen bringt nicht das gewünschte Ergebnis, da der Prozess auch nicht länger als eine Minute dauern darf.
    Es muß also irgendwie eine Möglichkeit geben zu Prüfen ob die Datei noch "offen" ist.
    Mit autoit macht man soetwas ja auch mit Fileopen und Fileclose, allerdings weiß ich nicht wie ich das Abfangen kann.


    Hat da jemand ein Idee ?


    Hier das Script

    [autoit]


    dim $search, $dir ,$proformaspooler

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

    While 1
    $dir = "C:\PRO_SPOOL\PRO_01\"
    $proformaspooler = "\\" & "server1" & "\PRO_01"
    SPOOL_CHECK()

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

    WEnd

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

    Func SPOOL_CHECK()

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

    $search = FileFindFirstFile($dir & "*.*") ; Prüfen, ob die Suche erfolgreich war
    If $search = -1 Then
    Sleep(1)
    Else
    $searchfile = FileFindNextFile($search)
    if @error Then Sleep(1)
    $file = $dir & $searchfile
    ToolTip($proformaspooler & " - " & $searchfile)
    FileMove($file, $proformaspooler)
    EndIf

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

    EndFunc

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit]
  • Ping mit namen funktioniert nicht

    • wolkenloser
    • 30. Dezember 2011 um 08:28

    Hi,
    ich habe eine kleines Script geschrieben welches eine Excel-Spalte die mit IP Adressen gefüllt ist durchgeht und anpingt.
    Das Ergebnis in ms wird dann in der rechten Spalte neben der IP eingetragen.
    Ich habe das mit Sendkeys gemacht, geht aber bestimmt auch noch besser mit der EXCEL UDF.

    Aber es geht mir sowieso um etwas anderes.
    Manchmal habe ich auch eine Liste mit Hostnamen die ich anpingen will. Das funktioniert aber nicht.
    Dann habe ich versucht Den Eintrag in der EXCEL Tabelle mit StringIsXDigit zu analysieren. Wenn also kein "." im String ist gehe ich davon aus, das es ein HOSTNAME ist. Ich habe versucht dann den Namen mit TCPNameToIP in eine IP umzuwandeln. Aber irgendwie klappt das nicht.
    Komischerweise ist das dem DOS Befehl PING völlig egal, da klappt es sowohl mit dem Namen, als auch mit der IP. Vielleicht liegt es daran, das beim DOS Ping.
    Andererseits sollte das AUTOIT PING doch auch mit HOSTNAMEN klarkommen lt Hilfe:

    Code
    Function Reference
    Ping 
    --------------------------------------------------------------------------------
    Pings a host and returns the roundtrip-time.
    
    
    Ping ( "address/hostname" [, timeout] )
    
    
    Parameters
    address/hostname Can be i.e. "www.autoitscript.com" or "87.106.244.38". 
    timeout [optional] Is the time to wait for an answer in milliseconds (default is 4000).
    Alles anzeigen

    Hier meine Script

    [autoit]


    Opt("WinTitleMatchMode", 4)
    WinActivate("Microsoft Excel","")
    ;~ ControlClick("Unbenannt - Editor","","Edit1")

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

    PING_EXCEL ()

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

    Func exit_func()
    exit
    EndFunc

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

    func PING_EXCEL ()

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

    MsgBox(0,"Ping IP Adressen in einer EXCEL-SPALTE","Die Pingzeit wird in der nächsten rechten Spalte eingetragen" & @CR & "Bitte erste IP Adresse anklicken" & @CR & "dann OK klicken" & @CR & "Abbruch mit <ESC>")

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

    Send("^c")

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

    Do
    Send("{RIGHT}")
    $ping=Ping(ClipGet())
    ;~ MsgBox(0,ClipGet(),$ping)
    if $ping > 0 then
    Send($ping & " ms")
    Else
    Send(" dead")
    EndIf
    Send("{LEFT}")
    Send("{DOWN}")
    Send("^c")
    IF ClipGet() = 0 Then ExitLoop
    Until ClipGet() = ""
    EndFunc

    [/autoit]
  • Decode Produktkey 64 Bit oder Server 2008

    • wolkenloser
    • 23. Dezember 2011 um 13:56

    Ich hab's beim Server2008 ausprobiert, da geht das nicht....

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™