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

Beiträge von Andre_

  • Checkbox erstellen für installierte Software

    • Andre_
    • 15. April 2014 um 09:28

    Du meinst wohl eine GUI. Schau Dir mal in der Hilfe das Beispiel für "GUICreate" an. Da steht eigentlich alles drinnen.
    Ich würde das ganze dann in einem Listview anzeigen lassen. Da solltest Du Dich zuerst einarbeiten.
    Die Beispiele in der AutoIt-Hilfe sind dafür echt gut.

    Viel Spaß

  • Checkbox erstellen für installierte Software

    • Andre_
    • 15. April 2014 um 09:19

    Hi firewalldevil,
    ich würde das über RegRead machen. Da kannst Du Dir auch gleich die Version ausgeben lassen, z.B. beim IE wäre der Schlüssel "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer". Dort gibt es dann den Eintrag "Version".
    Schau Dir auch mal das Beispiel für "RegEnumKey" in der Registry an.

    Gruß
    André

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 23. Februar 2014 um 10:10

    Hab eine Lösung gefunden:
    Über das Include WinHttp kann man mit _WinHttpSetTimeouts die gewünschte Timeoutzeit definieren. Defaultmäßig liegen die laut MSDN bei 30 Sekunden, was ja eine Ewigkeit ist.
    Die Timeouts lassen sich mit diesem Parameter schön einstellen:

    Code
    _WinHttpSetTimeouts($hInternet, $iResolveTimeout = Default, $iConnectTimeout = Default, $iSendTimeout = Default, $iReceiveTimeout = Default)

    Als Handle habe ich das von _WinHttpOpen() verwendet. Es muss logischerweise vor den eigentlichen Aktionen definiert sein, also vor _WinHttpSendRequest und _WinHttpReceiveResponse.

    Schön wäre es, wenn man in einer kommenden AutoIt-Version InetRead auch mit dem Parameter Timeout bestücken würde. Laut MSDN sollte das ja nicht so schwer sein.

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 20. Februar 2014 um 00:20

    Hi Spider,
    klar hab ich TCPNameToIp weggelassen, aber daran liegt es wie gesagt nicht. Ich bekomme gar keinen TCP-Connect, wenn das htaccess-Fenster davor ist.
    Da sagt er mir - Timeout hin oder her - dass es diese Webseite garnicht gibt. über die TCP-Befehle geht's also gar nicht.
    Die englisch _TCPConnect hab ich gefunden, aber die geht natürlich auch nicht für das, was ich brauche.
    InetRead mit einem Timout bräuchte ich, das würde gehen. Gibt's aber nicht.

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 18. Februar 2014 um 22:39

    Funktioniert leider beides nicht:
    Bei der Variante mit den TCP-Anweisungen bekomm ich interessanterweise immer die Messagebox, dass der Client online ist. Auch wenn ich IP-Adressen verwende, die definitiv nicht belegt sind.
    Bei dem InetGetSize bekomme ich immer für $size den Wert 0.
    Das liegt vermutlich am davorgeschalteten htaccess-Fenster, da kann auch keine Größe ausgelesen werden.
    Wie gesagt, ich will nur prüfen, ob die Seite ein htaccess-Fenster anbietet. Keine Abfragen, kein sonstiger Schnickschnack.

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 17. Februar 2014 um 23:02

    Hi Roger,
    sorry für die späte Antwort, aber irgendwie Funktioniert das bei htaccess-Fenstern auch nicht.
    AutoIt quittiert mir das mit einer Fehlermeldung, wenn das Objekt nicht ausgelesen werden kann:

    Code
    The requested action with this object has failed.:
    Return SetError($_IEStatus_Success, 0, $o_object.document.documentElement.outerHTML)
    Return SetError($_IEStatus_Success, 0, $o_object.document^ ERROR

    Wenn ich die Fehlermeldung vermeiden könnte um zu wissen, ist da überhaupt ein htaccess-Fenster (was mir ja reichen würde) wäre das spitze.

    Danke schonmal für die Hilfe
    Gruß
    André

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 29. Januar 2014 um 21:33

    InetRead hat keine Hintergrundfunktion. Das ist InetGet. Aber damit komme ich auch nicht weiter.
    Hat noch jemand eine Idee?

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 28. Januar 2014 um 23:42

    Ich möchte das Tool möglichst universell einsetzbar gestalten, d.h. möglichst wenig davon ausgehen müssen, ob nun die IPs über DHCP oder Manuell vergeben werden. Beispielsweise hab ich in dem einen Fall fest vergebene IPs für die Accesspoints (da sie eine Radiusserver-Konfiguration durchschleifen, die verteilt dann an die Clients über DHCP).

    InetRead liefert ja schon ein Ergebnis, aber mir fehlt da so ein netter Timeout-Flag, damit mein Programm nach mindestens 2 Sekunden weiterarbeiten kann. Sonst wird's supernervig, sollten mal 4-5 Accesspoints gerade mal off sein. Wie schon gesagt, die APs haben zu Beginn eine htaccess-Seite. Evtl. weiß da jemand, wie ich das einfach feststellen kann - nur feststellen, ich will mich da garnicht einloggen können müssen.

    Vielen Dank schonmal für die bisherigen Hiflen.

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 28. Januar 2014 um 20:04

    Ich vergaß noch zu erwähnen, dass die zu überprüfende Seite sich mit einem htaccess-Fenster meldet. Da scheitern - zumindest bei mir - die meisten Versuche.
    Wenn jemand eine Lösung anzubieten hätte... ein paar Zeilen Code bzw. etwas mehr an Hinweis wäre nett. Danke schonmal.

  • Webseite auf Erreichbarkeit testen - aber ohne Ping

    • Andre_
    • 28. Januar 2014 um 18:06

    Hallo allerseits,

    ich möchte gerne testen, ob ein Accesspoint in meinem Netz noch da ist. Pingen lässt sich das gute Stück nicht, aber wenn ich die IP über den Browser aufrufe, bekomme ich Zugriff aufs Webinterface des AP. Mit InetRead geht das zwar, aber wenn der AP nicht an ist, brauchts ewig, bis die Anweisung abgearbeitet ist. Dasselbe beim Include: _InetGetSource etc brauchen auch ewig. Gibt's da denn noch eine andere Möglichkeit? Ich will ja nur wissen, ob das Dingens an ist - mehr nicht.

  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 6. Mai 2012 um 19:54

    Habs jetzt doch mit dem XMLDomWrapper gemacht.

    Danke fürs Helfen.

  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 27. März 2012 um 22:47

    Dein Beispiel ist super.

    Aber bei einer Sache hatte ich mich vielleicht undeutlich ausgedrückt: Die erste Stelle, die gesucht wird, hat die Syntax:

    <Item Class="Feld_1" ID="{ZU FINDENDER WERT}">

    Erst danch kommen die Unterfelder mit

    <Unterfeld_1>ZU FINDENDER WERT </Unterfeld_1>

    zwischendrinn steht irgendwas

    <Unterfeld_2>ZU FINDENDER WERT </Unterfeld_2>

    Wenn ich Dein Beispiel richtig verstehe, findet er mir nur die Unterfelder, aber nicht die passende ItemClass ganz am Anfang.

    Geht bei der Zeile von IP_Trainer denn nichts in der Richtung bzw. was stimmt hier noch nicht??

    [autoit]


    $regexp_test = StringRegExp($database,'(?s)<Item Class="Feld_1" ID="{(.*?)}">.*?<Unterfeld_1>(.*?)</Unterfeld_1>.*?<Unterfeld_2>(.*?)</Unterfeld_2>.*?<Unterfeld_5>(.*?)</Unterfeld_5>',3)

    [/autoit]

    Die gesuchten Felder sind zwar ein paarmal anders, aber dafür bräucht es nicht unbedingt eine Flexibilisierung. Da es oft auch mehrere Unterfelder sind, die in einem Array abgelegt werden sollen, würde ich die entsprechenden Suchabfragen jeweils individuell gestalten.

  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 27. März 2012 um 20:57

    Ich möchte die Felder bzw. Unterfelder in der Expression immer frei bestimmen können, d.h. mal habe ich Feld 1 und Unterfeld 1,2,5. Es kann aber sein, dass zwischen Unterfeld 1 und 2 irgendwann ein weiteres Feld sich einträgt. Es kann auch sein, dass ich die Unterfelder 4,6 und 8 haben möchte.

    <Das Feld will ich haben> Genau das hier </Das Feld will ich haben>

    es folgend mehrere Zeilen mit unterschieldichsten Inhalten

    <Das feld will ich auch haben> Eben diesen Wert >/Das Feld will ich auch haben>

    Im Array sollten dann stehen:

    [0] Genau das hier

    [1] Eben diesen Wert

  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 27. März 2012 um 20:33

    ip_trainer:

    Das funktioniert für genau diese Zeile. Aber: Es funktioniert nicht generell (habe noch ein paar andere Abfragen, die mit dieser Syntax kein sauberes Ergebnis liefern).

    i2c:

    Ich verstehe die Anwendung des _XMLDomWrappers leider überhaupt nicht. Gibt es irgendwo eine kurze Dokumentation bzw. Beispiele mit Erklärungen?

    Prinzipiell bin ich ja mit der RegExp schon relativ weit, aber sie funktioniert halt noch nicht überall zuverlässig.


    Hat jemand vielleicht noch eine Idee, was an der Zeile vom ip_trainer nicht stimmen könnte?

  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 26. März 2012 um 22:57

    Ok, hier die Infos:

    Zunächst die Regexp-Zeile, die ich bis jetzt gebastelt habe:

    [autoit]

    $regexp_test = StringRegExp($database,'(?s)<Item Class="Feld_1" ID="{(.*)}">.*?<Unterfeld_1>(.*)</Unterfeld_1>.*?<Unterfeld_2>(.*)</Unterfeld_2>.*?<Unterfeld_5>(.*)</Unterfeld_5>',3)

    [/autoit]

    Ein Teil aus der $database wäre sowas hier:

    Code
    <Item Class="Feld_1" ID="{123}"> 
    <Unterfeld_1>text_1</Unterfeld_1> 
    <Unterfeld_2>text_2</Unterfeld_2> 
    <Unterfeld_3>text_3</Unterfeld_3> 
    <Unterfeld_4>text_4</Unterfeld_4> 
    <Unterfeld_5>text_5</Unterfeld_5> 
    <Unterfeld_6>text_6</Unterfeld_6> 
    </Item> 
    <Item Class="Feld_2" ID="{456}"> 
    <Unterfeld_1>text_1</Unterfeld_1> 
    <Unterfeld_2>text_2</Unterfeld_2> 
    <Unterfeld_3>text_3</Unterfeld_3> 
    <Unterfeld_4>text_4</Unterfeld_4> 
    <Unterfeld_5>text_5</Unterfeld_5> 
    <Unterfeld_6>text_6</Unterfeld_6> 
    </Item>
    Alles anzeigen
  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 26. März 2012 um 21:06

    Ich benutze aber schon das Flag 3. Bei anderen Regexp bekomme ich dort auch ein Array zurück, nur bei dieser Zeile nicht.

  • RegExp - mehrere Stellen in einem String sollen gefunden werden

    • Andre_
    • 26. März 2012 um 20:48

    Hallo,

    ich habe folgendes Problem:

    Ich möchte, dass RegExp mehrere Textstellen findet, die zwischen klar definierten Tags stehen, also:

    <Stelle1> Erster Text </Stelle1>

    blbabla blubb.... unterschiedlich lang mit Zeilenumbrüchen

    <Stelle2> Zweiter Text </Stelle2>

    Bisher habe ich folgendes dazu hinbekommen:

    Code
    (?s)<Stelle1>(.*)</Stelle1>.*?<Stelle2>(.*)</Stelle2>

    Der Regex-Coach findet das auch ganz nett, aber wenn ich das im Auoti-Script einbaue, bringt er mir als Wert eine 1 zurück, also ungütige Expression.

    Das liegt wohl daran, dass meine Suchanfrage mehfrach gefunden werden soll. Einfach funktioniert sie.

    Wie müsste das richtig lauten?

    Danke für die Hilfe und viele Grüße

    André

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™