Ja danke euch, funktioniert alles prima ![]()
Beiträge von I30R6
-
-
Code
Global $vpn = "Netherlands" $F2 = _OpenVM() Func _OpenVM() Run("C:\Program Files\VMware\VMware Workstation\vmware.exe ""C:\Users\...\Documents\Virtual Machines\Netherlands VM.vmx""") EndFuncAnstelle von Netherlands soll die Variable $vpn mit anschließendem Leerzeichen eingefügt werden.
Kann mir jemand kurz zeigen wie das geschrieben werden muss, also wo und wie viele Anführungszeichen ich setzen muss?
MfG I30R6
-
-
Hi,
Eine txt. Datei dessen Inhalt folgerndermaßen Aussieht
______________
Test Test Test
Test Test Test
Test Test Test
______________soll ausgelesen werden, zudem sollen alle "Leerzeichen" und "Enter" eingaben getilgt werden.
also wenn ich den Text irgendwo wieder reinkopiere solle er wie folgt aussehen.
____________________________________
TestTestTestTestTestTestTestTestTest
____________________________________Kann mir jemand ne Lösung nennen?
Code$Ans = FileRead("C:\Program Files\ Test.txt") ClipPut($Ans) $sData = ClipGet() MsgBox($MB_SYSTEMMODAL, "", "The following data is now stored in the clipboard: " & @CRLF & $sData, 4)MfG I30R6
-
Danke für eure Ratschläge... peinlicherweise funtkionierte die Schleife aber anscheinend die ganze Zeit, es folgt leiglich ein Scriptabschnitt im Anschluss welcher der Schleife sehr ähnlich ist und das habe ich im Eifer des Gefechts nicht auseinander halten können.
Ich habe trotzdem die Syntax etwas verbessert und die Eingabe <= durch >= korrigiert.
Da ich jetzt weiß wo der Fehler lag, habe ich das Script entsprechend angepasst.
[autoit]Func _Start()
[/autoit][autoit][/autoit][autoit]$ML = 0
[/autoit][autoit][/autoit][autoit]
$MG = 0
DoMouseClick ("left", 676, 287, 1, 100) ;Mouseklick auf "Button"
[/autoit][autoit][/autoit][autoit]
MouseClick ("left", 675, 454, 1, 100) ;Mouseklich auf "Button"
Sleep (2000)$pxs = PixelSearch (1153, 700, 1221, 716, 0xE34747)
[/autoit][autoit][/autoit][autoit]If IsArray($pxs) Then
[/autoit][autoit][/autoit][autoit]
$MG+=10
MsgBox (0, "BESTÄTIGUNG", "If Is Array", 5)
Mouseclick ("left", 584, 285, 2, 100) ;Mouseklick auf "Button"
Send ("0.00000005")
Else
$ML+=1
MsgBox (0, "BESTÄTIGUNG", "Else", 5)
EndIfUntil $MG >=10 or $ML >=10
[/autoit][autoit][/autoit][autoit]
If $ML >=10 then ExitEndFunc
[/autoit]Scheint auf Anhieb zu funktionieren, weswegen ich noch ein wenig ungläubig bin... mal abwarten.
Bezüglich der Fragen bzw Spekulationen zum Hintergrund des Scripts
__________________________________________________________
Das Ganze ist nur ein Ausschnitt aus einem Script mit dem ich Abläufe auf meinem PC automatisieren will, vorweigend Bilder sortieren und filtern. Aus dem Zusammenhang gerissen sieht es aber wirklich wie ein Spielebot aus
bzw. einige Elemente entspringen ursprünglich auch Anleitungen aus dem Netz die mit Spielebots im zusammenhang stehen. 
-
Komme nicht weiter und würde mich über Hilfe sehr freuen.

[autoit]Func _Start()
[/autoit][autoit][/autoit][autoit]$MG = 0
[/autoit][autoit][/autoit][autoit]
DoMouseClick ("left", 676, 287, 1, 100) ;Mouseklick auf "Button"
[/autoit][autoit][/autoit][autoit]
MouseClick ("left", 675, 454, 1, 100) ;Mouseklich auf "Button"
Sleep (2000)$pxs = PixelSearch (1153, 700, 1221, 716, 0xE34747)
[/autoit][autoit][/autoit][autoit]If IsArray($pxs) Then
[/autoit][autoit][/autoit][autoit]
$MG + 10
MsgBox (0, "BESTÄTIGUNG", "If Is Array", 5)
Mouseclick ("left", 584, 285, 2, 100) ;Mouseklich auf "Button"
Send ("0.00000005")
Else
$MG + 1
MsgBox (0, "BESTÄTIGUNG", "Else", 5)
EndIfUntil $MG <= 10
[/autoit]
EndFuncDie Schleife soll enden wenn $MG den Wert 10 erreicht hat.
Entweder:
1. Wenn er durch den Pixelsearch Befehl die Farbe (0xE34747) gefunden hat soll er $MG mit 10 addieren, wodurch die Schleife beendet wird.
2. Wenn er durch den Pixelsearch Befehl die Farbe (0xE34747) nicht gefunden hat, soll er $MG mit 1 addieren, die Schleife wiederholen und bei jeder Wiederholung $MG jeweils erneut mit 1 addieren, bis $MG auf diesem Weg 10 erreicht hat oder zwischenzeitig die Farbe (0xE34747) gefunden wurde.
_____________________________________________________1. Funktioniert prima...
2. Funktioniert leider nicht, selbst wenn ich $MG + 10 befehle, wird das nicht registriert und die Schleife läuft endlos weiter bis die Farbe (0xE34747) irgendwann gefunden wurde.
Wo liegt das Problem? Ich komme irgendwie nicht drauf...

-
Hi,
Mein Script öfffnet eine html.datei, innerhalb der ich meine Ordnerverzeichnisse durchsuchen kann.
[autoit]#include <IE.au3>
[/autoit][autoit][/autoit][autoit]
#RequireAdminGlobal $CS = "file:///C:/Program%20Files/Beispiel.html"
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
Global $CP = "C:\Users\...\Desktop\Ordner\Beispiel.jpg"$oIE = _IECreate ($CS, 0, 1)
[/autoit][autoit][/autoit][autoit]
$oDiv = _IEGetObjByName ($oIE, "pict")
_IEAction ($oDiv, "click") ;Den "Durchsuchen" Button innerhalb der html.Datei anklicken
MouseClick ("left", 295, 225, 1, 50) ;Der MouseClick Befehl wird erst ausgeführt wenn das "Datei zum Hochladen auswählen" Fenster manuel geschlossen wurde;_______________Nutzlos________________________________________________
[/autoit]
;$Win = "Datei zum Hochladen auswählen"
;WinActivate ($Win)
;ControlFocus ( $Win, "", "[CLASS:ComboBox; INSTANCE:1]")
;ControlCommand ( $Win, "", "[CLASS:ComboBox; INSTANCE:1]", "AddString", 'string')
;ControlClick ($Win, "Abbrechen", "[CLASS:Button; INSTANCE:2]")
;ControlSend ($Win, "", "[CLASS:Edit; INSTANCE:1]", "Text")
;________________________________________________________________________Sobald allerdings der "Durchsuchen" Button innerhalb der html.datei angeklickt wird, öffnet sich ein
Explorerfenster das mein Script unterbricht.
Hier die Infos des Fensters
_______
>>>> Window <<<<
Title: Datei zum Hochladen auswählen
Class: #32770
Position: 207, 92
Size: 756, 512
Style: 0x96CC02C4
ExStyle: 0x00010101
Handle: 0x00070574>>>> Control <<<<
Class: ComboBox
Instance: 1
ClassnameNN: ComboBox1
Name:
Advanced (Class): [CLASS:ComboBox; INSTANCE:1]
ID: 1148
Text:
Position: 170, 416
Size: 381, 22
ControlClick Coords: 128, 19
Style: 0x56000413
ExStyle: 0x00000000
Handle: 0x0017054A>>>> Mouse <<<<
Position: 513, 555
Cursor ID: 0
Color: 0x000000>>>> StatusBar <<<<
>>>> ToolsBar <<<<
>>>> Visible Text <<<<
Hostwrapper für gemeinsame Orte
Namespacestruktursteuerelement
Strukturansicht
ShellView
FolderView
Datei&name:
Datei&typ:
Alle Dateien (*.*)
Ö&ffnen
Abbrechen
Navigationsleiste
Adresse: C:\Users\...\Desktop\Beispielimage>>>> Hidden Text <<<<
Namespacestruktursteuerelement
Shell Preview Extension Host
&Hilfe
C:\Users\...\Desktop\Beispielimage
Suchen
_______________________Das heißt ich kann das Fenster nicht mehr mit control... Befehlen ansteuern und auch das Script
läuft erst weiter wenn ich das "Datei zum Hochladen auswählen" Fenster manuel schließe.
Das Fenster öffnet sich übrigens nur wenn ich den Script mit #ReguireAdmin starte.
Wie hendel ich das jetzt?
-
Zitat
Weil der/die Seitenbetreiber das massenhafte Runterladen von Bildern in seinen AGB´s verbietet?
Wozu braucht man sonst solch ein Script?Nee ich will einfach nur nicht angeben was ich mir für Inhalte im Internet anschaue.
_____Hier ein weg wie sich Bilder über deren src abspeichern lassen...
[autoit]#include <IE.au3>
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
#Include <Inet.au3>
#Include <File.au3>$url = "Beispielseite"
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
$oIE = _IECreate ($url, 0, 1)
_IELoadWait ($oIE)
Sleep (5000);Bild speichern
[/autoit]
If FileExists("C:\Beispielpfad") Then FileDelete("C:\Beispielpfad")
While 1
$oIMGs = _IEImgGetCollection($oIE)
For $oImg In $oIMGs
If StringInStr($oImg.src, "Beispielstring") Then
InetGet($oImg.src, "C:\Beispielpfad")
EndIf
Next
If FileExists("C:\Beispielpfad") Then ExitLoop
Sleep(1000)
WEndFunktioniert für meine Zwecke aber nur bedingt, da sich einige Bilder anscheinend beim Versuch sie zu speichern aktualisieren und nicht dem "ursprünglich zu speicherndem Bild" entsprechen.
Wenn jemand dafür noch ne Lösung weiß bzw. noch andere Möglichkeiten kennt Bildinformationen aus Webseiten zu extrahieren würde ich mich über Ratschläge freuen.
MfG
I30R6 -
Ich denke ich habe über Google einen Beispielscript für INetGet mit Src String gefunden. Ich melde mich später ob ich das hinbekommen habe.
Danke schon mal für die Hilfe
MfG
I30R6 -
@ Oscar
Sorry ich dachte, ich hätte das im Eröffnungspost schon klargestellt das der Inetget Befehl über die Image URL nicht infrage kommt.
Beispiel kann ich gerade nicht mit dienen, da ich die Seite nicht angeben möchte
(könnte ja ne Pornoseite oder ähnlich kompromittierendes sein.)
Ich werde mal nach nem passenderem alternativ Beispiel ausschau halten.
-
Hi alpines ,
Ja src wird angegeben.
Mit welchem Befehl kann ich das nun ansteuern bzw. speichern.
-
Das Beispiel war vielleicht blöd gewählt, weil sich im HTML Code der Seite die Image URL befindet.
Ich suche nach einer Lösung wenn keine URL gefunden werden kann, oder sich Bilder nicht über diese URL laden lassen.
-
Also beispielsweise das AutoitLogo links oben, auf folgender Seite. (Muss nicht unbedingt ein PNG sein könnte auch ein JPG oder GIF sein.)
https://www.autoitscript.com/site/autoit/
HTML Code:
___________________________
<a href="https://www.autoitscript.com/site/"> <img src="https://static1.autoit-cdn.com/site/wp-content/themes/TheCorporation/images/logo@2x.png" width="210" height="72" alt="AutoIt" id="logo"></a>
___________________________Will beispielsweise dieses Logo über seine id in einen angegebenen Ordner speichern.
Oder automatisch ein Screenshot des Bereichs über die angegebene width und height .
Halt das irgendwie dieses Bild automatisch durch ein Script gespeichert wird und von dort wieder geladen werden kann.
MfG
I30R6 -
Ich suche eine Möglichkeit Bilder von Internetseiten anhand ihrer id runterzuladen/ abzuspeichern oder in die Zwischenablage zu kopieren.
Hatte gehofft es hiermit kopieren zu können...
[autoit]#include <IE.au3>
[/autoit][autoit][/autoit][autoit]$url = "Beispielseite"
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
$PIC_id = "Beispielbild"
$oIE = _IECreate ($url, 0, 1)
$oDiv = _IEGetObjById ($oIE, $PIC_id)_IEAction ($oDiv, "focus")
[/autoit]
Sleep (5000)
_IEAction ($oDiv, "copy")...funtkioniert aber nicht.
Alternativ bin ich in dem Zusammenhang auf den INetGet Befehl gestoßen, der funktioniert soweit ich das verstehe aber nur mit einer URL Adresse des Bildes.
[autoit]#Include <Inet.au3>
[/autoit][autoit][/autoit][autoit]
#Include <File.au3>$url="Bild URL"
[/autoit]
INetGet($url,"C:\Users\...\Desktop\Ordner\Dateiname.jpg") -
Lol
jetzt seh ich es auch, ziemlich kopflos
danke

-
Danke für eure Hilfe.

Also mit ShellExecute hatte ich keine Probleme, aber die erste Variante habe ich leider nicht zum laufen bekommen. Zuvieles davon ist mir fremd.
Im Grunde reicht mir aber die ShellExecute Variante aus.
Intressehalber würde ich mich aber auch noch darüber freuen wenn mir jemand den Beispielscript mit der 1 Variante korrigiert, damit es läuft.
Script_A soll Script_B öffnen...
[autoit];Script_A
[/autoit][autoit][/autoit][autoit][/autoit][autoit]#pragma compile(AutoItExecuteAllowed, true)
[/autoit][autoit][/autoit][autoit]#AutoIt3Wrapper_UseUpx=n ;Was ist das?
[/autoit][autoit][/autoit][autoit]Global $Script = "C:\Users\...\Desktop\Beispielscripts\Script_B.au3"
[/autoit][autoit][/autoit][autoit][/autoit][autoit]Func AutoIt3ExecuteScript($Script)
[/autoit][autoit]
Return Run(StringFormat('"%s" /AutoIt3ExecuteScript "%s"', @AutoItExe, $Script))
EndFunc;Script_B
[/autoit]
;____ Sinnlos MouseMove im Quadrat_____
MouseMove (100,100,100)
MouseMove (500,100,100)
MouseMove (500,500,100)
MouseMove (100,500,100)
MouseMove (100,100,100)
;_______________________________________ -
Hi,
Ich will das die letzte Aktion eines Scripts draus besteht ein weiteres Autoit Script zu starten bevor es sich schließt.
Die einzige Möglichkeit die ich bislang gefunden habe, wäre es das folgende Script als exe zu compilieren und es im vorangegangenem Script
mit den Befel Run() zu öffnen, das möchte ich aber nicht.
Welche Möglichkeiten gibt es ein Script durch ein anderes Script zu öffnen.
MfG
I30R6 -
Jep genau das habe ich gesucht

Vielen Dank!
-
Ich habe in der Autoit Hilfe unter language reference etc. lange genug gesucht das ich es mir erlaube, mal schnell hier im Forum nachzufragen.
Ich suche nach einer Möglichkeit Zeilen im Script zu minimieren, wie bspw. bei einer Funktion, wo alles zwischen
[autoit]
[/autoit]
Funk()
EndFunktalso der Inhalt der Funktion ausgeblendet werden kann.
Es soll natürlich keine Funktion sein, habe halt nur lange Passagen aus Sleep und MouseMove Befehlen die ich in meinem Script gerne ausblenden würde.
MfG
I30R6
-
Danke schon mal für die Vorschläge,
steht aber irgendwie auf dem Schlauch...
habs noch nicht geschaft das _IEAttach zu verwenden.
Kann mir jemand kurz die simpelste Variante zurecht scripten,
um bei geöffneter Google Startseite die Suchzeile anzusteuern, einen Text einzugeben und anschließend auf den "Google-Suche" Button zu clicken.
Mein unbeholfener Versucht sieht aktuell so aus....
[autoit]#include <IE.au3>
[/autoit][autoit][/autoit][autoit]
Dim $sURL, $oIE
$oIE = _IEAttach("Google")
$sURL = _IEPropertyGet ($oIE, "locationurl")
MsgBox(0, "Aktuelle Seite", $sURL )$Search = _IEGetObjById ($oIE, "gbqfq")
[/autoit][autoit][/autoit][autoit]
_IEFormElementSetValue ($Search, "Text")$Button = _IEGetObjById ($oIE, "gbqfsa")
[/autoit]
_IEAction ($Button, "click")