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

Beiträge von Donsen64

  • ​IE Link​ Click​ über den Namen

    • Donsen64
    • 1. Oktober 2015 um 13:59

    Hallo Kanashius,
    das kommt ja gut. Jetzt habe ich natürlich noch das Problem, dass ich den Inhalt von $text ja per Hand aus dem Code der Webseite gefischt habe. Gibt es eine Möglichkeit dies über das Objekt was ich mit (oder ein anderes Objekt):
    $oLinks = _IELinkGetCollection($oIE)
    bekomme an den Text für $text zu bekommen?

    Was ich von der Funktion _IELinkGetCollection($oIE) bekomme ist ja ein Objekt auf $oIE.document.links. Dort sind aber scheinbar keine Java Objekte enthalten, oder ich bin zu blöd da ran zu kommen.


    Gruß Ingo

  • ​IE Link​ Click​ über den Namen

    • Donsen64
    • 1. Oktober 2015 um 11:40

    Hallo,
    vielen Dank für die Info!

    Aber ich habe ja nur den Titel des Links, wie kann ich denn über den Titel den notwendigen Übergabewert für _IENavigate ermitteln.

    Gruß Ingo

  • ​IE Link​ Click​ über den Namen

    • Donsen64
    • 30. September 2015 um 21:38

    Hallo,
    um die Stabilität von Webseite testen zu können will ich ein Script schreiben welches einfach eine Liste von Links über die Beschriftungen immer wieder nacheinander aufruft. Das folgende Script funktioniert auch soweit.

    AutoIt
    #include <IE.au3>
    
    
    Local $oIE = _IECreate("http://www.autoitscript.com")
    
    
    ClickLink("overview")
    ClickLink("AutoIt Documentation")
    
    
    Func ClickLink($sMyString)
       Local $oLinks = _IELinkGetCollection($oIE)
       For $oLink In $oLinks
    	  Local $sLinkText = _IEPropertyGet($oLink, "innerText")
    	  If StringInStr($sLinkText, $sMyString) Then
    		 _IEAction($oLink, "click")
    		 _IELoadWait($oIE)
    		 ExitLoop
    	  EndIf
       Next
    EndFunc
    Alles anzeigen

    Leider Habe ich jetzt aber eine Webseite bei der dies nicht funktioniert und einfach nichts passiert. Wenn ich mir den Quelltext ansehe finde ich folgende Definitionen für die Links:

    HTML
    <span class="menu-item-text">Default Documents</span>
    <span class="ms-splinkbutton-text">Site Content</span>
    <a class="ctl00_PlaceHolderLeftNavBar_WebTreeViewV4_0 ms-tv-item ctl00_PlaceHolderLeftNavBar_WebTreeViewV4_1" href="javascript:_spNavigateHierarchy(this,'TreeViewDataSourceV4','30:ListNode:49ceda52-649f-4c3f-967e-0ace641fef0e:d1f92c94-8292-4519-94c3-c8b6d77411ea:31c61d21-7db8-4f88-9646-67250358b0cd','\u002fDefault Documents',false,'ListNode')" title="Default Documents" id="ctl00_PlaceHolderLeftNavBar_WebTreeViewV4t4" style="border-style:none;font-size:1em;">Default Documents</a>

    Scheinbar basieren die Links irgendwie auf Java. Gibt es eine Möglichkeit auch an solche Links zu kommen.


    Gruß Ingo

  • UNIX Timestamp in Millisekunden

    • Donsen64
    • 7. September 2015 um 12:06
    Zitat von Andy

    Hi,
    UNIX Time Stamp ist definitiv die Anzahl der Sekunden seit 1. Januar 1970.
    Bist du dir sicher, dass du das nicht mit Timestamps innerhalb von EDV-Systemen verwechselst, welche die Zeit in Millisekunden seit Rechnerstart oder seit dem 1. Januar 1900 verwenden. Diese haben aber mit dem Unix-Timestamp nichts zu tun!

    Btw, wenn du Millisekunden hast, schneide einfach die letzten 3 Stellen ab

    AutoIt
    #include <Date.au3>
    $input_UnixDate = "1441279108"                                                                                           ;Sekunden
    $winDate = _DateTimeFormat(_DateAdd('s', $input_UnixDate, "1970/01/01 00:00:00"), 0)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $winDate = ' & $winDate & @CRLF & '>Error code: ' & @error & @CRLF)  ;### Debug Console
    
    
    $input_UnixDateMS = "1441279108123"                                                                                      ;Millisekunden
    $winDate = _DateTimeFormat(_DateAdd('s', StringTrimRight($input_UnixDateMS, 3), "1970/01/01 00:00:00"), 0)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $winDate = ' & $winDate & @CRLF & '>Error code: ' & @error & @CRLF)  ;### Debug Console

    Hallo,
    ja es scheint wirklich eine normaler UNIX Time Stamp zu sein der um drei stellen erweitert wurde.

    Also vielen Dank für die Antworten.

    Gruß Ingo

  • UNIX Timestamp in Millisekunden

    • Donsen64
    • 3. September 2015 um 12:19

    Hallo,
    das dachte ich bis vor einigen Tagen auch. Aber jetzt habe ich gelernt, dass es eine Angabe in Sekunden und eine in Millisekunden gibt.

    Gruß Ingo

  • UNIX Timestamp in Millisekunden

    • Donsen64
    • 3. September 2015 um 12:13

    Hallo,
    ich suche nach einen Lösung wie ich einen UNIX TimeStamp der die Zeit in Millisekunden darstellt in Datum + Zeit + Millisekunden umformen kann. Habe leider nur Lösungen für den normale UNIX TimeStamp gefunden.

    Code
    $winDate = _DateTimeFormat(_DateAdd('s', $input_UnixDate, "1970/01/01 00:00:00"), 0)

    Gruß Ingo

  • Outlook​ Mail Absender, Empfänger und Betreff auslesen

    • Donsen64
    • 25. Juni 2015 um 17:44

    Hallo,
    so könnte ich das doch auch abfragen. Da bekomme ich ja fast alle Infos über die Mail.

    AutoIt
    $ListOfMail = _OL_ItemFind($oOutlook, $aFolderInbox[1], $olMail, "[UnRead]=True", "", "", "Subject,Body,CreationTime,LastModificationTime,Size,Sender,SenderEmailAddress,SenderName,Recipients,EntryID") 
    
    
    _ArrayDisplay($ListOfMail, "$ListOfMail")

    ich würde meinen, dass ich jetzt nur noch die Spalte 5 und 8 auseinander nehmen muss.

    Gruß Ingo

  • Outlook​ Mail Absender, Empfänger und Betreff auslesen

    • Donsen64
    • 23. Juni 2015 um 09:14

    Hallo,
    ja da sehe ich den Betreff und den Text der Mail aber ich brauche auch den Absender und die Liste der Empfänger. Dazu habe ich irgendwie nichts gefunden. ich würde mal vermuten das ich da nicht über das UDF ran komme sondern nur über die Mailobjekte direkt.

    Gruß Ingo

  • Outlook​ Mail Absender, Empfänger und Betreff auslesen

    • Donsen64
    • 23. Juni 2015 um 08:25

    Hallo water,
    ja da hast du natürlich recht.

    Es geht darum in einem Ordner alle Mails zu durchsuchen und den Inhalt auszuwerten. Also sollte der Ausgangspunkt eine Ordner Objekt sein.

    Also so in etwa:

    AutoIt
    #include <OutlookEX.au3>
    
    
    Global $oOutlook
    Global $aFolderInbox
    Global $ListOfMail
    
    
    $oOutlook = _OL_Open()
    	If @error <> 0 Then Exit MsgBox(16, "OutlookEX UDF", "Error creating a connection to Outlook. @error = " & @error & ", @extended = " & @extended)
    
    
    $aFolderInbox = _OL_FolderAccess($oOutlook, "", $olFolderInbox)
    	If @error <> 0 Then Exit MsgBox(16, "OutlookEX UDF", "Error accessing folder 'Inbox'. @error = " & @error)
    
    
    $ListOfMail = _OL_ItemFind($oOutlook, $aFolderInbox[1], $olMail, "[UnRead]=True") 
    
    
    _ArrayDisplay($ListOfMail, "$ListOfMail")
    
    
    ;.................
    
    
    _OL_Close($oOutlook)
    Alles anzeigen


    Gruß Ingo

  • Outlook​ Mail Absender, Empfänger und Betreff auslesen

    • Donsen64
    • 22. Juni 2015 um 17:24

    Hallo,
    ich suche eine Möglichkeit wie ich mit dem aktuellen OutlookEX bei eine Mail Absender, Empfänger und Betreff auslesen kann. Irgendwie finde ich nur etwas wie ich eine Mail erstellen kann.

    Gruß Ingo

  • DNS Auflösung auf einem IPv6 System

    • Donsen64
    • 13. Mai 2015 um 11:14

    Hallo,
    ich habe eine Problem mit der DNS Auflösung auf einem Client der IPv6 verwendet. Leider unterstützt das UDF _TCPIpToName nur IPv4.

    Ich würde aber gern eine DNS Auflösung für folgendes haben wollen:
    name.domaene.net >>> 2001:503:ba3e::2:30
    2001:503:ba3e::2:30 >>> name.domaene.net

    Kennt da jemand eine Lösung?

    Danke!
    Gruß Ingo

  • IP Adresse bzw. IP Adresse/Netzmaske im Text suchen

    • Donsen64
    • 12. März 2015 um 11:15
    [autoit]

    Global $s_Pattern = "(?x) " & @CRLF & _
    "((?:(?:25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)(?(?=\.?\d)\.)){4}\b) # erste IP-Adresse (mit Wertebereichscheck) " & @CRLF & _
    "(?: # Beginn der optionalen Netzmaske " & @CRLF & _
    " \s?/?\s? # das optionale Trennzeichen mit eventuellen Leerzeichen " & @CRLF & _
    " \b( # falls etwas existiert soll es auch als Group gematcht werden " & @CRLF & _
    " ([1-9]|[0-2][0-9]|3[0-2])(?!\.) # Die Netzmaske als einfache Zahl (=Anzahl der 1-Bits in der Maske)" & @CRLF & _
    " | " & @CRLF & _
    " (?:(?:0|128|192|224|240|248|252|254)\.0\.0\.0)|(?:255\.(?:(?:(?:0|128|192|224|240|248|252|254)\.0\.0)|(?:255\.(?:(?:(?:0|128|192|224|240|248|252|254)\.0)|255\.(?:0|128|192|224|240|248|252|254|255))))) # Die Netzmaske als IP-Maske " & @CRLF & _
    " )(?:[^\d]|$) " & @CRLF & _
    ")?"

    [/autoit]

    Hallo,
    eine Kleinigkeit habe ich noch geändert, weil dieser 10.11.70.1/0.0.0.0 Sonderfall noch nicht abgedeckt war. Jetzt sollte es perfekt sein :D . Zu mindestens fallen mir keine Konstellationen ein bei denen es nicht funktioniert.

    Vielen Dank nochmals an alle!

    Gruß Ingo

  • IP Adresse bzw. IP Adresse/Netzmaske im Text suchen

    • Donsen64
    • 12. März 2015 um 10:19

    Hallo AspirinJunkie,
    das funktioniert, klasse Arbeit vielen Dank dafür!!! :rock:

    Es werden jetzt zwar auch nicht erlaubte Netzmasken (z.B. 10.11.73.0 / 44 >>> darf max. von 0 - 32 sein) akzeptiert, aber das werde ich anders abfangen.

    Vielen Dank nochmals für die super Hilfe von dir und hier im Forum!!

    Gruß Ingo

  • IP Adresse bzw. IP Adresse/Netzmaske im Text suchen

    • Donsen64
    • 11. März 2015 um 15:02

    Hallo,
    Fällt dazu jemanden eine Lösung ein. Würde mich sehr freuen.

    Gruß Ingo

  • IP Adresse bzw. IP Adresse/Netzmaske im Text suchen

    • Donsen64
    • 25. Februar 2015 um 12:27

    Hallo AspirinJunkie,
    das klappt schon mal sehr gut! Vielen Dank dafür!!! :rock:

    Nur bei der folgenden Konstellation wird die Netzwerkmaske nicht erkannt:

    Code
    Voice_192.168.1.0/24_Floor 8 and 9


    Da findet er nur 192.168.1.0 aber nicht 192.168.1.0/24.

    Noch eine Idee wie ich auch das abbilden kann?

    Gruß Ingo

  • IP Adresse bzw. IP Adresse/Netzmaske im Text suchen

    • Donsen64
    • 20. Februar 2015 um 12:16

    Hallo,
    ich muss den alten Fall nochmal vorholen.

    Mit alle 255 mach schon Sinn, denn dies bedeutet es handelt sich um eine einzelne IP Adresse. Habe ich auch umgesetzt und die folgende Funktion daraus gebaut.

    Spoiler anzeigen
    [autoit]


    _StringSearchIPorIPNetwork("Voice_192.168.1.0/24;Floor 8 and 9", "NoModify")

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

    Func _StringSearchIPorIPNetwork($sText, $sReturnType = "NoModify")
    #cs ================================================================================
    UDF Name..........: _StringSearchIPorIPNetwork
    UDF Version.......: 1.0
    Change Date.......: 2014-08-10
    UDF Description...: sucht in einem Text alle IP Adressen oder IP/Netzwerk Kombinationen heraus und zwar
    nur solche Kombinationen die auch zulässig sind
    Author(s).........: Ingo (Basis: http://www.autoit.de/index.php?page=Thread&threadID=45397&)

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

    Parameter(s)......: $sText => Text in dem gesucht werden soll
    $sReturnType => in welchem Format werden die Netzwerkmasken zurück gegeben
    "NoModify" (default) = so wie gefunden
    "Suffix" = in Suffix Schreibweise
    "NetMask" = Es wird immer eine lange Netzmaske zurück gegeben
    "NoNetMask" = Es wird nur die IP zurück gegeben ohne eine eventuell vorhandene Netzmaske

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

    Return Value......: Array mit allen gefundenen IP oder IP/Netzwerk Kombinationen
    Fehler: 0 es wurde nichts im Text gefunden
    #ce ================================================================================
    Local $aResult
    Local $aTEMP
    Local $sPattern = "(?x) " & @CRLF & _
    "(\b(?:(?:25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)(?(?=\.?\d)\.)){4}\b) # erste IP-Adresse (mit Wertebereichscheck) " & @CRLF & _
    "(?: # Beginn der optionalen Netzmaske " & @CRLF & _
    " \s?/?\s? # das optionale Trennzeichen mit eventuellen Leerzeichen " & @CRLF & _
    " \b( # falls etwas existiert soll es auch als Group gematcht werden " & @CRLF & _
    " ([1-9]|[0-2][0-9]|3[0-2])(?!\.) # Die Netzmaske als einfache Zahl von 1-32 (=Anzahl der 1-Bits in der Maske)" & @CRLF & _
    " | " & @CRLF & _
    " (?:(?:0|128|192|224|240|248|252|254)\.0\.0\.0)|(?:255\.(?:(?:(?:0|128|192|224|240|248|252|254)\.0\.0)|(?:255\.(?:(?:(?:0|128|192|224|240|248|252|254)\.0)|255\.(?:0|128|192|224|240|248|252|254|255))))) # Die Netzmaske als IP-Maske " & @CRLF & _
    " )\b " & @CRLF & _
    ")?"

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

    ;doppelte Freizeichen aus dem Text entfernen
    $sText = StringReplace($sText, " ", " ")

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

    ;im Text nach IP oder Netzwerke suchen
    $aResult = StringRegExp($sText, $sPattern, 4)

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

    If Not @error Then
    For $i=0 To UBound($aResult)-1
    $aTEMP = $aResult[$i]

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

    If UBound($aTEMP) > 2 Then
    ;es wurde IP/Netzmaske gefunden
    Select
    Case $sReturnType = "Suffix" ;in Suffix Schreibweise zurück geben
    $aResult[$i] = $aTEMP[1] & "/" & INUDF_NetMaskOrSuffixTranslate($aTEMP[2], "Suffix")

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

    Case $sReturnType = "NetMask" ;Es wird immer eine lange Netzmaske zurück gegeben
    $aResult[$i] = $aTEMP[1] & "/" & INUDF_NetMaskOrSuffixTranslate($aTEMP[2], "NetMask")

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

    Case $sReturnType = "NoModify"
    $aResult[$i] = $aTEMP[1] & "/" & $aTEMP[2]

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

    Case $sReturnType = "NoNetMask"
    $aResult[$i] = $aTEMP[1]

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

    Case Else
    Return 'Error wrong $ReturnType was handed over to _StringSearchIPorIPNetwork($sText, $sReturnType = "Auto")'
    EndSelect

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

    Else ;es wurde nur eine einfache IP Adresse gefunden
    $aResult[$i] = $aTEMP[1]
    EndIf
    Next

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

    Return($aResult)
    Else
    Return 0 ;Nix gefunden
    EndIf
    EndFunc

    [/autoit]

    Die Funktion funktioniert auch soweit super!

    Allerdings findet er nichts wenn ich so etwas "Voice_192.168.1.0/24;Floor 8 and 9" übergebe. Ich vermute dazu muss ich den Suchstring nochmals anpassen. Aber wie kann ich mir nicht vorstellen. X(

    Hat jemand eine Idee dazu?

    Gruß Ingo

  • URL in Edit control erstellen

    • Donsen64
    • 17. Februar 2015 um 11:56

    Hallo BugFix,
    das ist genau was ich suche!!! Super vielen Dank dafür.

    Noch eine Frage:
    Wenn ich das verwenden will muss ich doch alles was mit _GUICtrlEdit... in _GUICtrlRichEdit... ändern oder sind da noch weitere Umbauten für die GUI notwendig?

    Gruß Ingo

  • Zeilenumbruch auf ganzes ExcelSheet anwenden

    • Donsen64
    • 17. Februar 2015 um 11:39

    Hallo,
    ich würde eine solche Sammlung auch sehr gut finden!

    Ich verwende auch den Weg über die Aufzeichnung eines VBA Makros. Allerdings verwenden die VBA Makros immer andere Ausgangsjobakte als das neue Excel UDF verwendet. Das mach es für einen ungeübten schon etwas schwieriger die richtigen Objekte zu finden.

    Gruß Ingo

  • URL in Edit control erstellen

    • Donsen64
    • 17. Februar 2015 um 11:26

    Hallo,
    vielen Dank dafür!

    Allerdings muss ich dazu im Vorfeld wissen wo die URL steht. Außerdem erkennt der User nicht das es sich um eine URL handelt. Denn bei mir sollte dort normaler Text stehen der eben anhand der Schreibweise als URL erkennbar sein soll.

    Kann ich so etwas auch realisieren?

    Gruß Ingo

  • URL in Edit control erstellen

    • Donsen64
    • 17. Februar 2015 um 10:07

    Hallo,
    ich möchte eine URL in Edit control erstellen, so dass ich die URL im Edit anklicken kann und sich Firefox öffnet.

    Ist das möglich?

    Gruß Ingo

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™