So ganz per Hand brauchst Du das damit nicht zu machen.
Wenn Du die Patches als _Patch.au3 im Include Verzeichnis speichert und dann Dein betroffenes Programm durch diese Funktion dort https://autoit.de/index.php?page=Thread&threadID=15683 schickst, werden die Änderungen, so weit möglich, in Dein Programm übernommen.
Beiträge von Stilgar
-
-
Ich kann da nichts Auffälliges erkennen außer, daß das Login bei dem Fußball-Manager nicht klappt.
Da leider der Anfang des Logs fehlt noch ein paar Fragen:
- welche Version der FF.au3?
- welche Version von FireFox?
- hast Du irgendwelche Tab-AddOns für FireFox installiert?
- welche Version von AutoIt? -
Passiert das auch "per Hand"?
Wie sieht die Ausgabe in der Editor-Console aus? -
Wie Tab 1 wird überschrieben?
Also es passiert hier folgendes:
- FireFox startet
- "Bei Uns" wird geöffnet und eingeloggt
- neuer Tab - facebook wird geöffnet und eingeloggt
- neuer Tab - Manager wird geöffnet und eingeloggtzum Schluß sind drei Tabs mit den unterschiedlichen Seiten offen.
-
Keine Ahnung was Du meinst, hier funktioniert es, mal abgesehen von den vielen Sachen die etwas überflüssig sind.
Bei dem Fußballmanager funktioniert AutoLogin nicht, weil das Formular im ersten Frame liegt.Spoiler anzeigen
[autoit]#region Includes
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
#include <FF.au3>
#include <_FF_AutoLogin.au3>
#endregion IncludesIf _FFStart() Then
[/autoit]
_FF_AutoLogin("******", "******", "http://www.bei-uns.de/treffpunkt/login", "erfolgreich angemeldet")
;~ FACEBOOK
_FFTabAdd()
_FF_AutoLogin("******", "******", "http://www.facebook.com/", "erfolgreich angemeldet")
;~ OFM Fussballmanager
_FFTabAdd("www.onlinefussballmanager.de")
_FFFrameEnter(1)
_FF_AutoLogin("*******", "*******")
_FFSearch("erfolgreich angemeldet")
_FFFrameLeave()
EndIf -
Hallo,
"per Hand" sieht das so aus:
Spoiler anzeigen
[autoit]#region Includes
[/autoit] [autoit][/autoit] [autoit]
#include <FF.au3>
#endregion IncludesMain()
[/autoit] [autoit][/autoit] [autoit]Func Main()
[/autoit]
If _FFConnect() Then
_FFOpenURL("http://www.bei-uns.de/")
_FFSetValue("Benutzername", "pbuUser", "name")
_FFSetValue("Passwort", "pbuPasswort", "name")
_FFFormSubmit()
If _FFSearch("Einloggen") Then MsgBox(0,"","Anmeldung fehlgeschlagen!")
EndIf
EndFunc -
Neuer Versuch ... V0.37-8.
Download wie immer ganz ganz vorn ...
UEZ:
Die Variable $__DEBUG__ schaltet die Debug-Meldungen im Programm frei.
Diese werden von ein paar Macros in jEdit4AutoIt erzeugt. -
Update:
Korrekturen:
- Fehler bei mehreren Deklarationen nach "Global Const" behoben.
- Fehler beim Ersetzen der mathematischen Funktionen behoben.Download siehe erster Beitrag.
-
In der neuesten Version von _Au3Optim wird die Datei automatisch inkludiert, wenn diese als _Patch.au3 im Include-Verzeichnis liegt.
-
UEZ:
Fehler ist korrigiert.Update:
- die Datei _Patch.au3 wird nun immer inkludiert (siehe: https://autoit.de/index.php?page=Thread&threadID=16458), wenn diese sich im Include-Verzeichnis befindet.
- zusätzliche Klammeroptimierung vorläufig deaktiviert -
-
Update:
* __Define überarbeitet
* verschiedene Probleme behoben (ausführlich steht es im Programm selbst)Download im ersten Beitrag.
-
@progandy:
Ja stimmt, hab es geändert.Raupi :
#define gibt es normalerweise nicht. Das funktioniert nur mit:
_Au3Optim (Inline-Funktionen und Code-Optimierung)
oder mit dem Präprozessor in jEdit4AutoIt. -
Hier mal ein Sammlung von Funktionen die nicht mehr in der neuen AutoIt-Version vorhanden sind bzw. umbenannt worden sind.
- Das Ganze kann in älteren Programmen verwendet werden um dieses schneller wieder lauffähig zu bekommen.
- Kein Anspruch auf Vollständigkeit ...Spoiler anzeigen
[autoit]#region Patches from 3.3.0.0 => 3.3.2.0
[/autoit] [autoit][/autoit] [autoit]#OnAutoItStartRegister "OnAutoItStart"
[/autoit] [autoit][/autoit] [autoit]
OnAutoItExitRegister("OnAutoItExit")#define @InetGetBytesRead InetGetInfo(Default, 0)
[/autoit] [autoit][/autoit] [autoit]
#define @InetGetActive (Not InetGetInfo(Default, 2))
; InetGet("abort") = InetClose($h);===============================================================================
[/autoit] [autoit][/autoit] [autoit]
Func _SQLite_SaveMode($fSaveModeState)
Local $r = _SQLite_SafeMode($fSaveModeState)
Return SetError(@error,@extended,$r)
EndFunc ;==>
;===============================================================================
Func URLDownloadToFile($sURL, $sFilename, $iReload, $iBackground) ; ???
Return InetGet($sURL, $sFilename, $iReload, $iBackground)
EndFunc ;==>URLDownloadToFile
;===============================================================================
Func AdlibEnable($sFunc, $iTime = 250)
Return AdlibRegister($sFunc, $sTime)
EndFunc ;==>AdlibEnable
;===============================================================================
Func AdlibDisable()
Return AdlibUnRegister()
EndFunc ;==>AdlibDisable
;===============================================================================
; #FUNCTION# ===================================================================
; Name...........: _WinAPI_MakeDWord
; Description ...: Returns a DWord value from two int values
; Syntax.........: _WinAPI_MakeDWord($HiWord, $LoWord)
; Parameters ....: $HiWord - Hi word
; $LoWord - Low word
; Return values .: Success - DWord value
; Author ........: Gary Frost (gafrost)
; Modified.......:
; Remarks .......:
; Related .......:
; Link ..........;
; Example .......;
; ==============================================================================
Func _WinAPI_MakeDWord($HiWord, $LoWord)
Return BitOR($LoWord * 0x10000, BitAND($HiWord, 0xFFFF))
EndFunc ;==>_WinAPI_MakeDWord
; #FUNCTION# ===================================================================
; Name...........: _StringAddThousandsSep
; Description ...: Returns the original numbered string with the Thousands delimiter inserted.
; Syntax.........: _StringAddThousandsSep($sString[, $sThousands = -1[, $sDecimal = -1]])
; Parameters ....: $sString - The string to be converted.
; $sThousands - Optional: The Thousands delimiter
; $sDecimal - Optional: The decimal delimiter
; Return values .: Success - The string with Thousands delimiter added.
; Author ........: SmOke_N (orignal _StringAddComma
; Modified.......: Valik (complete re-write, new function name)
; Remarks .......:
; Related .......:
; Link ..........;
; Example .......; Yes
; ==============================================================================
Func _StringAddThousandsSep($sString, $sThousands = -1, $sDecimal = -1)
Local $sResult = "" ; Force string
Local $rKey = "HKCU\Control Panel\International"
If $sDecimal = -1 Then $sDecimal = RegRead($rKey, "sDecimal")
If $sThousands = -1 Then $sThousands = RegRead($rKey, "sThousand")
;~ Local $aNumber = StringRegExp($sString, "(\d+)\D?(\d*)", 1)
Local $aNumber = StringRegExp($sString, "(\D?\d+)\D?(\d*)", 1) ; This one works for negatives.
If UBound($aNumber) = 2 Then
Local $sLeft = $aNumber[0]
While StringLen($sLeft)
$sResult = $sThousands & StringRight($sLeft, 3) & $sResult
$sLeft = StringTrimRight($sLeft, 3)
WEnd
;~ $sResult = StringTrimLeft($sResult, 1) ; Strip leading thousands separator
$sResult = StringTrimLeft($sResult, StringLen($sThousands)) ; Strip leading thousands separator
If $aNumber[1] <> "" Then $sResult &= $sDecimal & $aNumber[1]
EndIf
Return $sResult
EndFunc ;==>_StringAddThousandsSep#endregion Patches from 3.3.0.0 => 3.3.2.0
[/autoit]wer noch mehr Sachen findet ... nur her damit
Die Datei kann einfach über _Au3Optim eingebunden werden, wenn man diese als _Patch.au3 im Include-Verzeichnis ablegt, damit wird sie bei jedem Programm berücksichtigt.
-
Als was speichern?
Nur HMTL? Nur Text? Webseite-komplett? MHTML? ... -
Zitat
kann ich irgendwie das geöffnete fox-fenster bzw teile des fensters speichern/nach autoit exportieren?
Antwort:
JaDie wird Dir vermutlich nicht weiterhelfen - in paar mehr Informationen wären nicht schlecht.
Meinst Du:
* den Quelltext?
* Teile des Quelltextes?
* Teile des sichtbaren Textes?
* als "Screenshot"?
* ... -
-
Hallo,
die Frage nach dem Bug läßt sich ohne Programm-Code, Web-Seite/HTML-Source und evtl. den Meldungen aus der Editor-Console leider nicht beantworten.
Siehe dazu:
https://autoit.de/index.php?page=Thread&threadID=13983Grüße
Stilgar -
* Zusätzliche Funktionen zur Ergänzung der FF.au3
* Wrapper für ältere Funktionen die in der FF.au3 umbenannt sind
* Funktionen die nicht mehr in der FF.au3 sindAktuelle Funktionen:
; _FFDisPatchKeyEvent
; _FFFormGetLength
; _FFGetValueById
; _FFGetValueByName
; _FFSetValueById
; _FFSetValueByNme
; _FFTabCloseAll
; _FFTabGetLength
; _FFTableGetCell
; _FF_Call - Aufruf von JavaScript-Funktionen der aktuellen Seite
; _FF_CookiesAllow - blockiert Cookies einer Seite (_FF_CookiesSetAccess)
; _FF_CookiesDeny - erlaubt Cookies einer Seite (_FF_CookiesSetAccess)
; _FF_CookiesRemoveAll - _FF_EmptyCookies umbenannt
; _FF_CookiesSetAccess - Rechte für eine Seite setzen
; _FF_EmptyCache - leert den Browser-Cache
; _FF_EmptyCookies - löscht alles Cookies
; _FF_EmptyHistory - löscht die History
; _FF_FormSetFileInput - setzt den Wert (Dateinamen) eines File-Inputs
; _FF_GetContentXY - liefert die X/Y-Koordinaten eines Objektes
; _FF_GetCurrentURL - gibt die aktuelle URL zurück
; _FF_GetStatus - gibt die aktuelle Meldung der Status-Bar zurück
; _FF_GetTitle - gibt den aktuellen Titel zurück
; _FF_MozRepl_Detect - gibt zurück ob MozRepl installiert ist und installiert es optional
; _FF_ResetTitle - setzt den aktuellen Seiten-Titel zurück
; _FF_TabGetAllURLs - liefert ein Array mit den URLs aller offener Tabs
; _FF_TabGetAllTitles - liefert ein Array mit den Titeln aller offener TabsDownload:
http://thorsten-willert.de/Themen/FFau3/FF.au3/FFEx.au3Anwendung:
Einfach per:
#include <FFEx.au3>
includieren. Ein #include für die FF.au3 ist nicht notwendig. -
_FFConnect verbindet sich immer mit dem zuletzt geöffneten Browserfenster.
Bei "Startschwierigkeiten" auch bitte man das dort durchlesen:
https://autoit.de/index.php?page=Thread&threadID=13983Hier eine noch "einfachere" Variante:
Spoiler anzeigen
[autoit]#include <Array.au3>
[/autoit]
#include <FF.au3>
Main()
Func Main()
If _FFConnect() Then
Local $aURLs = _FF_TabGetAllURLs()
_ArrayDisplay($aURLs)
EndIf
EndFunc ;==>Main
;===============================================================================
Func _FF_TabGetAllURLs()
Return StringSplit(_FFCmd("ret='';for(i=0;i<gBrowser.tabContainer.childNodes.length-1;i++){ret+=gBrowser.getBrowserAtIndex(i).contentDocument.location.href+'|'}ret+gBrowser.getBrowserAtIndex(i++).contentDocument.location.href;"), "|")
EndFunc ;==>_FF_TabGetAllURLs