Beiträge von alpines
-
-
Danke an Lottich für das Feedback!
Die Beta läuft bis zum (einschließlich) 02.06., bis dahin könnt ihr euch noch anmelden, testen und Feedback hinterlassen.
-
Du führst die MsgBox mehrfach aus, speichere doch den Rückgabewert in einer Variable und vergleiche mit dieser dann die entsprechenden Fälle.
-
Offiziell gefixt in SciTE4AutoIt > 4.1.2 (alles nach dem 2-1-2019).
Der Bug im Tracker wurde gefixt, die neue Betaversion stripped die Datei korrekt. Ich schätze ab dem nächsten Release sollte der Fehler behoben sein.
Au3Stripper parst einige ternäre Ausdrücke nicht korrekt
Es ist zwar keine interne Funktion, aber mehr oder weniger ein Präprozessor und sollte hier auch erwähnt werden meiner Meinung nach.
Der Au3Stripper ist in der neuesten SciTE4AutoIt (3.3.14.5/SciTE 4.1.2) defekt (auch der neueste von der Website, 2-1-2019 gepostet, müsste sogar der selbe sein), und ich weiß nicht ob der Fehler schon in den vorherigen Versionen auftrat. Dazu hab ich bereits im bugtracker ein Ticket erstellt, mal gucken was dabei rumkommt: https://www.autoitscript.com/trac/autoit/ticket/3715
-
(ggf. kann ein MoD das bitte verschieben)
Statt das nächste Mal wahllos User zu markieren kannst du ja direkt einen Mod taggen. Das Profil "MoD" was du verlinkt hast existiert nämlich tatsächlich

-
-
Nein, AutoIt bietet intern keine Funktion die dem nahe kommen könnte.
Was sich hier anbietet wäre Multiprocessing, d.h. du erstellst mehrere Skripte welche für die unterschiedlichen Aufgaben zuständig sind und tauscht untereinander die Daten aus.
Main.au3 startet WebRequest.au3 mit bestimmten Parametern und WebRequest.au3 erledigt währenddessen seine Arbeit und die Main.au3 beschäftigt sich weiter mit der GUI.
Sollte die WebRequest.au3 dann die Ergebnisse haben teilt sie das der Main.au3 mit (da gibt es viele Ansätze zu Interprozesskommunikation: NamedPipes, GUIs, TCP, Dateiaustausch) und diese kann die Ergebnisse dann anzeigen.
Aber bevor du versuchst alles so auszulagern würde mich interessieren was du denn vor hast zu basteln, denn du kannst in AutoIt auch ohne Multiprocessing etwas vernünftiges auf die Beine stellen und bis zu einem bestimmten Grad "parallelisieren". Das hängt aber von den UDFs ab die du verwendest.
AutoIt für sich ist eigentlich gar nicht so langsam wie die Leute annehmen, wenn man effizienten Code schreibt, dann ist dieser auch schnell.
-
Kannst du uns vielleicht ein Beispiel geben?
AutoIt kann parallel keine Aufgaben abarbeiten (es gibt kein Multithreading, das geht nur über Multiprocessing), es ist aber möglich Codeschnipsel in andere Dateien auszulagern um den Projektordner besser zu strukturieren.
Deine Frage ist bisschen ambivalent gestellt und wir können dir darauf schlecht eine präzise Antwort geben.
-
Code
$sProxy = "ip:port" $hSession = _WinHttpOpen("UserAgent", $WINHTTP_ACCESS_TYPE_NAMED_PROXY, $sProxy)Mit pac-Dateien kenne ich mich nicht aus, du kannst aber probieren den Proxy mal manuell so einzutragen (FileRead + RegEx) oder es so zu verwenden wie es in dem Beitrag hier dargestellt wird.
-
Was passiert denn wenn du den Proxy manuell in das Skript einträgst? Klappt die Verbindung dann nach draußen?
-
Was steht denn im Request drin? Parst du es vielleicht falsch, das du denkst es wäre die Schuld von der WinHttp UDF?
Lass dir den Request mal in eine Datei schreiben und schau nach ob du den Inhalt findest den du suchst (manuell).
Du brauchst keinen String als Port zu übergeben, im schlimmsten Fall geht das nach hinten los. Dort wo Zahlen erwartet werden solltest du auch welche übergeben.
-
-
Wenn man bei https nichts expliziet angibt, ist es doch immer Port 443
Deine Requestart entscheidet nicht darüber mit welchem Server du dich verbindest. Es kann sein, dass WinHttp versucht sich mit Port 80 zu verbinden.
Wenn du eine https Seite hast gib immer 443 als Port mit an. Sicher ist sicher.
Der Fehler, der geschmissen wird lautet: Line 4479 (File "...Pfad zur EXE): Error: Subscript used on non-accessible variable.
Zeile 4479 ist: ConsoleWrite("$aCSRF ist: " & $aCSRF[0] & @CRLF)
Sprich das Array wird nicht befüllt, weil es erst gar nicht ins Internet kommt.Dieser Teil ist komplett irrelevant, wichtig ist welcher Fehler deine WinHttpRequest-Funktion schmeißt.
-
Und warum wird es nicht befüllt? Hast du dir mal die Fehlermeldungen angesehen? Connectest du auch auf den richtigen Port (du verwendest SSL)?
Muss der Proxy ebenfalls in der Anwendung hinterlegt werden oder wird er einfach vor den PC geschaltet? Dann solltest du in WinHttp nichts explizit einstellen müssen.
-
Lauf das Array einfach von hinten nach vorne durch, dann bleiben die Indizes nach vorne hin konsistent. Ansonsten musst du speichern wie viele Elemente du gelöscht hast und die Schleife ggf. vorher terminieren.
Du kannst in dem 2D Array Beispiel nicht alle gleichzeitig entfernen. _ArrayDelete wird dort immer das Array verkleinern und die Elemente wieder zusammenschieben.
Was du machen kannst ist allerdings ein neues Array erzeugen mit der neuen Größe (du läufst $test einmal durch und zählst wie viele drin bleiben), und beim 2. Durchlauf schreibst du die Werte rein.
ReDimst du das neue Array jedes Mal dauert es länger, da ständig das Arrray vergrößert werden muss.
-
ja, in der Hilfe steht da nichts davon...
Etwas versteckt, aber es ist erwähnt:
-
Ja, der Grund dafür ist, dass Funktionen die Makros (@error, @extended, ...) zurücksetzen. Also abspeichern und die Variable nutzen oder ConsoleWrite weglassen.
-
Hast du denn die entsprechenden Rechte um die Keys überhaupt auszulesen?
-
Bitte entschuldigt es und ich weiß, das ich als Power-Userin die Aufgabe habe regelmäßig reinzuschauen und bei Wissen zu helfen. Und ich habe und bekomme
hier auch viel Hilfe, aber wie schrieb mal einer im Dashboard: "Erst die Arbeit, dann das Vergnügen.".
Da gibt es nichts wofür du dich entschuldigen müsstest, die Arbeit geht nunmal vor.
Es sind ja noch genug andere User da die die Stellung halten, also musst du dir darum keine Gedanken machen.
-
Mein Interesse ist auch geweckt.
Wenn man dann auch die Quell- und Zielpfade speichern kann, so das man nicht jedes mal eingeben muss, von wo nach wo man Daten kopieren möchte, wäre das ein großes Extra.
Bevor ich zum Beispiel das Büro verlasse, schiebe ich täglich mehrfach Daten auf mein "Mobi", damit ich immer den aktuellen Stand von Daten habe, die ich nicht im Intranet speichern möchte. So ein super Tool wie oben dargestellt, würde ich sogar kaufen, wenn es dem entspricht, was ich mir vorstelle. Heißt: wenn es mir gefällt, lasse ich wieder per PayPal was für's Forum überweisen.Ein benutzerspezifischer Pfad ist nicht implementiert (also, dass jeder eingetragener Nutzer den Standardpfad mit seinem eigenen überschreibt), allerdings kann man Dateien ohne Abfrage ("Always Accept?") transferrieren.
Sollten Duplikate entdeckt werden gibt es die Option sie immer zu überschreiben ("Overwrite files without prompting"). Aber ein tolles Feature welches ich implementieren könnte ~> ist auf der ToDo-Liste

Ist die Option "Specify path every transfer" deaktiviert, so kann A Daten an B schicken ohne irgendetwas bestätigen lassen zu müssen. Die Übertragung geht sofort los.
Ich freu mich natürlich, dass ich dein Interesse wecken konnte, allerdings bin ich mir nicht ganz sicher ob du am Betatest teilnehmen möchtest oder nur auf das finale Produkt wartest.
Bin zum Release sind es vermutlich noch 1~2 Monate (je nachdem wie lange der Betatest gehen wird).
Das gesamte Projekt wird OpenSource und kostenlos hier im Forum erhältlich sein.