OMG den Tipp hätte ich nicht in einem Thread gegeben, der mit Keylogger überschrieben ist..
Beiträge von autoiter
-
-
Hallo gmmg,
sorry, wahrscheinlich habe ich dein Problem nicht erfasst. Der Code ist leider auch nicht ausführbar ohne deine includes..
Aber ein Refresh der Ansicht? Leere doch einfach deine Listviews und führe deine Funktionen erneut aus, bzw. packe auch
CodeFor $i = 1 to $aManagedBy[0][0] ;MsgBox(0,"",$aManagedBy[$i][0]) GUICtrlCreateListViewItem(_AD_FQDNToSamAccountName($aManagedBy[$i][0]), $listview1) Nextin eine Funktion, wenn nötig.
-
Geht in der Regel darum, umständliche Vorgaben von Arbeitsabläufen in Programmen bequemer zu machen. (Wozu 18 Tasten drücken, wenn es sich mit einem Tastendruck erledigen lässt).
Du sagst es

-
Hallo Grufti39
Was muss ich tun, damit mir die Konsole nicht beim Scriptende verschwindet?
Die Inhalte verschwinden nicht. Du musst nur mal durch den Inhalt scrollen. Überschrieben wird die Konsole erst beim nächsten Skriptstart.
Meinst du mit "Listings" Skripte?
Wenn mehrere offen sind, kannst du mit F6 zum nächsten springen.
-
Prinzipiell würde ich dir empfehlen, während der Entwicklung oder beim Test eines Skripts nicht zu kompilieren und dann auszuführen, sondern im geöffneten und aktiven SciTE-Fenster die "F5"-Tast zum ausführen zu drücken. Fehlermeldungen wie in deiner MsgBox findest du dann in der SciTE-Konsole (dem unteren Fensterbereich). Damit entgehst du möglichen irreführenden Zeilenangaben in der Ausgabe. Außerdem kannst du über einen Doppelklick auf die Fehlerzeile in der Konsole direkt zur Fehlerzeile springen und selbst eine Lösung testen.
-
Hallo Bitnugger
In dem Demo-Script Deine Demo.au3 findest du eine Funktion mit Namen SetupGecko(), der als Parameter 'geckodriver.exe' übergeben wird. Wird der Parameter ohne Pfadangaben übergeben, muss die 'geckodriver.exe' im selben Verzeichnis sein, wie das Demo-Script.
Ich möchte nur diese Aussage etwas korrigieren. Im Demo-Skript findet sich die Funktion SetupGecko(), (die ja nicht nötig ist, sondern hier nur existiert um die Flexibilität für verschiedene Browser zu realisieren. Die eigentliche Funktion ist die _WD_Option, bei der nach dem Parameter "Driver", der Speicherort der "geckodriver.exe" angegeben wird.
Ich wollte nicht viel in der Demo herumspielen und habe deshalb oben einfach FileChangeDir(".\WebDriver-0.1.0.13") genutzt und die "geckodriver.exe" mit in das Verzeichnis kopiert, damit das alles an einem Ort ist. Das Demo-Skript muss daher nicht im gleichen Verzeichnis wie die exe liegen. Bei FileChangDir muss eben der Pfad angegeben werden. Für eine dauerhafte Speicherung im eigenen Include-Ordner ist das aber sicherlich nicht der saubere Weg.
-
Hallo Grufti39
Musashi hat ja nun ausführlich alles zusammengetragen

Hier aber mal das Bsp. für Firefox 64bit. Da kannst du dir anschauen, wo du alles speicherst.
Die relevante Anpassung am Bsp ist eigentlich nur, dass das Arbeitsverzeichnis angegeben wird, damit du dein Skript auch woanders ablegen könntest..
Das Starten ist gar nicht so kompliziert. Die Arbeit beginnt dann ja erst

-
Alles klar. Macht euer Ding.
-
Ich sage hier nur meine Meinung,:
Wenn du kein Windows 10 willst, steige auf Linux um, statt mit einer Windows Version anzufangen, die nur noch zwei Jahre Sicherheitspatches bekommt. Ich weiß, es gibt hier viele Anhänger der Theorie, Win XP SP3 war die Krönung der Schöpfung. Aber ich bin da nicht überzeugt.
Selbst bin ich mit allen Geräten auf Win 10 gewechselt und habe schon viele Probleme gehabt.
-
Hallo kayes
Alternativ könnte man auch mit FileCopy zu arbeiten. dann könnte man anzeigen, an welchem File es vllt. hängt. Hier mal rudimentär umgesetzt:
Spoiler anzeigen
Code
Alles anzeigen_CopyFilesOverwrite($source & $jjjjup & "\" & $proup & "\Berechnungen", $dest & $jjjjup & "\" & $proup & "\Berechnungen\") Func _CopyFilesOverwrite($sSource, $sDest) Local $aFiles = _FileListToArray(, "*", $FLTA_FILES) If Not IsArray Then Return SetError(1) Local $iRet = -1 For $i = 1 To $aFiles[0] $iRet = FileCopy($sSource & "\" & $aFiles[$i], $sDest & $aFiles[$i], $FC_OVERWRITE) If $iRet <> 1 Then ConsoleWrite("Fehler beim Kopieren von " & $sSource & "\" & $aFiles[$i]) Next EndFunc ;==>_CopyFilesOverwriteFür am besten geeignet, hielte ich, aber die UDF _FileCopyEx, um anzuzeigen, wo man steht usw.
Wenigstens solange man diese Infos nicht lieber selber bauen möchte.
-
Ich habe es eben mal gestartet. Es ist witzig. Das Problem entsteht, weil bei der es sich bei $down1oad bei der Deklaration und $download in der Auswertung, um verschiedene Variablen handelt. Einmal ist es eine EINS einmal der Buschstabe L (klein geschrieben).
-
(DirCopy also bitte weiterhin auskommentieren)
Sorry. Warum nochmal. Bitte kurz erklären, statt eniem Link auf einen anderen Thread.
-
Statt DirCopy zu verwerfen, könntest du es auch wie gefordert anwenden. Musashi hat erklärt, dass es den Parameter $FC_CREATEPATH nicht gibt. Allerdings funktioniert es normalerweise auch so. Zu den weiteren Einwänden will ich hier keine Stellung beziehen.
DirCopy($source & $jjjj & "\" & $Projektdown & "\Berechnungen", $dest & $jjjj & "\" & $Projektdown & "\", $FC_OVERWRITE)
sollte funktionieren, wenn deine durch Variablen gebildeten Quell-Pfade existieren.
-
Hallo kayes
Ich habe es mir nicht komplett angeschaut. Aber dieser Fehler wiederholt sich im Code.
DirCopy ( $source & $jjjj & "\" & $Projektdown & "\Berechnungen") , $dest & $jjjj & "\" & $Projektdown & "\") [$FC_CREATEPATH ,$FC_OVERWRITE]
Ist falsch. Da sind schließende Klammern im Aufruf zu viel und dann fehlt sie am Ende und Kommas zwischen den Parametern auch nicht vergessen.
So funktioniert etwa diese Zeile.
DirCopy ( $source & $jjjj & "\" & $Projektdown & "\Berechnungen", $dest & $jjjj & "\" & $Projektdown & "\", [$FC_CREATEPATH ,$FC_OVERWRITE])
-
Da möchte ich Musashi unterstützen.
Es ist absolut nicht nötig. Aber es dient der Sicherheit.
Niemand muss es machen, aber wer Opt("MustDeclareVars", 1) benutzt, stellt sich so eine Frage nicht mehr, denn die Richtung ist die selbe.
-
Falls jemand meint, der TE hätte seinen Beitrag mir gegenüber mit dem Hinweis auf Trollverhalten gelöscht, der irrt. In seinem Beitrag hatte er tatsächlich den Beitrag von AspirinJunkie als Troll-Beitrag abgetan, von dem er sich nicht provozieren lassen sollte.
-
Ne, das spielt keine Rolle.
-
Menschen mit "Hilfs-Sherrif-Syndrom", bzw. Trolls, die sich freuen, wenn sie anecken und jemanden denunzieren können und so erlebe ich das hier aktuell, wollen nicht helfen.
Schau dir doch mal Xorianators Beiträge aus dem gesamten Jahr an: Er hat nicht 1x jemandem mit einem Stück Code geholfen, also versuch bitte nicht, ihn in Schutz zu nehmen, dass er helfen wollte - und das auf diese Art und Weise.
1. Hat Xorianator sinvolle Fragen gestellt, auf die du einfach nicht antworten möchtest.
2. Hab ich mir mal deine Beiträge angeschaut. So wie ich das sehe hast du in deinem ganzen Forenleben noch niemandem mit Code geholfen. Was sollen also solche Vorwürfe?
Man muss jemanden mit knapp 300 Beiträgen nicht mehr sensibilisieren, wie hier einige Dinge betrachtet werden. Ob irgendetwas gestattet ist oder nicht, hängt ja wohl von den Regeln jedes einzelnen Spiels ab. Deine Beschreibung hilft da überhaupt nicht (lässt eher auf Nichterlaubnis schließen). Gerettet hast du deinen Thread mit deinen Ausführungen, aus meiner Sicht jedenfalls, nicht.
-
Hallo Bitnugger
die Option Opt('TrayAutoPause', 0) ; no pause greift nicht, wenn du Opt('TrayMenuMode', 1) benutzt. TrayAutoPause bestimmt beim Standardmenü nur, ob schon mit dem Klick auf das Icon das Skript pausiert wird oder man das noch extra auswählen muss. In dem Moment, wo du das Menü aber entfernst, spielt das eh keine Rolle mehr.
-
Hallo Joschy41
1. Genau, was BugFix geschrieben hat.
Weil ich das Gefühl habe dir ist nicht klar, wie man die Größe eines Arrays ermittelt. Dafür gibt es Ubound.
Wenn man nicht genau weiß, wie viele Elemente ein Array haben wird, schreibt man nie feste Indexwerte, sondern ermittelt mit Ubound die Größe des Arrays und geht arbeitet es wie in Punkt 1 ab. Als Elementenummer wird dann der Wert der Zählervariable des Schleifendurchlaufs verwendet.