Beiträge von HansJ54
-
-
Deine Angaben sind etwas knapp. Hast Du die komplette erforderliche Umgebung runtergeladen? Hier findest Du die Voraussetzungen
Das müsste dann so aussehen:
Wenn Du alles zusammen hast, schau Dir mal die wd_demo an, da hat Dan sehr viele Beispiele untergebracht. Bei meinen ersten Versuchen habe ich die Demo einfach ein wenig verändert.
Wenn alles läuft, kannst Du den kompletten Sourcecode der aktuellen Seite mit $sResult = _WD_GetSource($sSession) in der Textvariablen $sResult finden und untersuchen.
Mit den vorhandenen Funktionen zusammen mit vorher ermittelten XPath(en) kannst Du dann u.A. Buttons anklicken, Felder ausfüllen und auslesen.
Schönes Wochenende
Hans Jürgen
-
Ok, danke! Der Fehlerfall ist dann wohl zum einen der erste Aufruf, solange noch keine .bin da ist.
-
AutoIt
Global $ret = _LoadWindowPlacement($hGui, $sPlacementFile, 0) ; die Positionsdaten aus Block 1 laden und fuer Fenster 1 setzen If @error Then GUISetState(@SW_SHOW, $hGui) ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : LoadWindowPlacement1 = ' & $ret & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug ConsoleDas Thema ist aus meiner Sicht nicht veraltet, die UDF funktioniert einwandfrei, hat mir heute gut weitergeholfen.
Nur zum Verständnis: wieso wird GUISetState nur im Errorfall aufgerufen? Muss das nicht immer passieren? -
Falls Du Serverplatten als "Dauerläufer" brauchst: eigentlich recht teuer, aber in den MY BOOK USB-Festplatten von WD waren bis zuletzt WD Red eingebaut und sollten es immer noch sein. Ich habe letzte Woche eine 10TB für 203 Euro gekauft und in eine Synology DS918+ umgebaut. Die Platte allein kostet normal um die 300-350 Euro.
-
-
GDIPlus ... da muss man sich erst einmal feste durchbeißen, bis die ersten Erfolge kommen.
GDIPlus wird dann mein Hobby nach Fertigstellung des aktuellen Projekts

Habe im Moment genug zu kämpfen mit meinen anderen Problemen - ohne dieses Forum hätte ich schon lange das Handtuch geworfen.
-
Meine Suche nach "RichEdit"-Control findet nichts. Aber das eigenständige Control in rot habe ich schon drin. Mache es jetzt einfach so, dass ich nur die kritischen Zustände in rot anzeige - wenn alles ok, muss ich das Fenster nicht mit diesen Anzeigen belasten. Dadurch fällt es dann auch eher auf.
Danke für Eure Hilfe!
-
Stellt sich die Frage, ob ein solcher (für meinen Geschmack eh nerviger) Effekt, den Aufwand wert ist ?
Hatte ich mir einfacher vorgestellt, so wie {\b...} - gibt es so etwas tatsächlich nicht?

Es geht mir darum, dass ich einen oder mehrere unerwünschte Zustände deutlich mache - wie rote Alarmlämpchen. Wenn beseitigt, soll die Schrift wieder schwarz und normal sein. Mein "Debug/Controlfenster" ist recht umfangreich und dadurch fällt einem nicht so gleich ins Auge, dass man z.B. einen generellen ShutDown gestartet hat.
Ansonsten, einfacher und besser: ich mache mir für diese Anzeige ein eigenes Control wie alpines geschrieben hat. Das Muster von Dir oben beinhaltet ja alles was ich brauche.
-
Sorry, dachte es gibt eine allgemeine Lösung (für AutoIt) bzw. ein Link (den ich nicht gefunden habe), wo das erklärt ist.
$sText = "Start ..."
$sText &= "Text in rot, bold und blinkend"
$sText &= "...Rest"
GUICtrlSetData ($iMenuControlId, $sText)
Würde mich aber auch für den Text in einer MsgBox interessieren.
-
Auch hiernach habe ich lange gesucht und vermutlich nur mit den falschen Suchbegriffen. Ich möchte einen Teil eines Textes (langer String) in rot, bold und blinkend darstellen. Ich habe nichts dazu gefunden, obwohl es sicher einfach geht?
-
Jeep, in deinem Fall... hatte mich schon wegen deiner Reaktion gewundert... aber wenn du so wichtige Botschaften einfach überliest... dann Schande über Dich und deine Nachkommen!

Das ist altersgerecht - warte auf meine nächste Frage, ich schäme mich jetzt schon ...

-
Ich denke nur Werte mit den Zeichen 0-9?
StringIsInt() akzeptiert auch sowas wie -12 oder +43.
Deswegen ja mein Hinweis auf StringIsDigit().Du hast absolut recht, StringIsDigit() ist besser - das hatte ich überlesen.
-
Ich benutze Inputbox und erwarte entweder die Nummer oder den Namen des gewünschten Fensters, das in den Vordergrund soll. Entsprechend der Eingabe nutze ich dann das entsprechende vorher gespeicherte Handle um das Fenster nach vorne zu holen. Folglich kommt als Antwort entweder eine Zahl oder ein Text aus der Inputbox. Eine Einschränkung auf 0-9 passt daher nicht, sondern ich schaue mir einfach die Eingabe an.
Gerade noch gelesen: StringIsInt() erfüllt den Zweck auch, warum habe ich das nicht gefunden

Aber danke für die Unterstützung!
Gruß Hans Jürgen
-
Ich brauchte eine Funktion, die bei der Eingabe über InputBox entscheidet, ob der User eine Zahl (0-99) oder einen Text eingegeben hat. Das funktioniert mit RegEx einwandfrei - mich wundert nur, warum eine solche simple aber sicher öfters benötigte Funktion, zumindest später im Laufe der 12 Jahre seit BugFix'ens Thread, nicht in AutoIt implementiert wurde. Wird AutoIt nicht weiterentwickelt?
-
Nachdem mich das Problem schlaflose Minuten
gekostet hat bis ich hier im Forum einen Artikel dazu gefunden habe, bleibt doch offen: warum sieht AutoIt keine brauchbare Alternative dazu vor?$sVar = "123"
IsNumber($sVar) liefert "False", nur weil die Zahl in einem Text steht
Workaround mit Number($sVar) funktioniert nicht, da z.B. eine "0" und ein Text beide "0" ergeben.
So geht es:
Func _IsNumber($sVar)
Return StringRegExp($sVar, "^\d*$")
EndFunc
Das wäre doch eine sinnvolle Erweiterung, die direkt in AutoIt implementiert sein sollte!?
-
Es gibt unfreundlicherweise Webseiten, speziell unter denen, die mein Programm nutzt, wo die regelmäßig erforderliche Änderung des Passworts mit dem Firefox nicht funktioniert und wo man IE oder Edge nehmen muss - schlecht programmiert, aber ist halt so. Ich habe daher das Programm für alle drei Browser gemacht um solchen Fällen vorzubeugen. Oder für den Fall wie bei MozRepl, dass irgendwann mal irgendeiner der drei nicht mehr funktioniert mangels Support.
-
Den TaskManager habe ich zum Testen immer dabei laufen, aber die Abstürze zeigen sich so, dass im Taskmanager vorher und nachher alles ok ist (z.B. Arbeitsspeicher nicht auf Vollanschlag).
Das übliche Ereignis ist: Monitor wird schwarz und kommt nach 2 Minuten mit VGA Auflösung wieder oder, wenn nicht, Notebook aufklappen, dort erscheint wenig später das Bild, Notebook zu und der Monitor ist wieder da. Zwischendurch sehe ich den Task-Manager nicht, aber gehe davon aus, dass die Grafik, die dabei nicht unterbrochen ist, danach bei Arbeitsspeicher immer noch ein wenig Platz nach oben anzeigt.
Kann alles Mögliche sein, wie gesagt nicht unbedingt mein Programm. Bildschirmtreiber, Webdriver etc. kommen auch in Frage. Passiert oft, wenn ich nach Chrome oder Edge den Firefox öffne übers Script - dummerweise aber nicht reproduzierbar.
Daher meine Idee, die Daten mal eine Zeitlang mitzuloggen. _WinAPI_GetProcessMemoryInfo werde ich dazu einbauen und die Werte in eine Datei schreiben.
Nach der Testphase werde ich vermutlich den Einsatz auf Chrome oder Edge beschränken und den Firefox nur in Notfällen zulassen. Dabei stört allerdings sehr, dass nach jedem Update von Chrome oder Edge ein neuer passender Webdriver gesucht werden muss. Firefox ist da nicht so stressig, die letzte alte Version des Geckodrivers läuft auch mit aktualisierten Versionen. Gibt es hier übrigens jemanden mit Erfahrung mit den Webdrivern für spezielle Fragen?
Danke für die Tipps!
Alle drei Browser offen:
-
Vermutlich auch wieder leicht zu finden, aber ich habe wirklich gesucht

Mein Notebook läuft ab und zu aus dem Speicher und stürzt ab. Muss nicht von meinem AutoIt_Script kommen, kann auch eine andere Ursache haben, wobei ich die Hardware schon getestet habe.
Zur Nachverfolgung dachte ich an die Anzeige des vom Programm genutzten Speichers während der Laufzeit. Gibt es dazu eine Möglichkeit?
Außerdem bin ich von früher gewöhnt, dass ich mir nach einem Compile die Größen des Programms und der Variablen anzeigen lassen konnte.
-