Huhu,
Schau dir dieses Programm mal genauer an.
Da ist mit sicherheit auch was für dich dabei.
Huhu,
Schau dir dieses Programm mal genauer an.
Da ist mit sicherheit auch was für dich dabei.
Grundsätzlich möchte ich mit http://www3.jumo.de/pio/JUMO/no_NO…re-pca3000.html (Jumo PCA 3000) eine Datei laden und diese Dann mit einem bestimmten Drucker Drucken.
Ich bezweifle das der Befehl Dateien des Typs (.177) drucken kann.
Hiho,
Ich habe ein Script für die Arbeit geschrieben um Täglich 1 mal einen Berricht auszudrucken. Nun empfinde ich die Funktion irgendwie als unsauber. Habt ihr Verbesserungsvorschläge? Danke schonmal.
Func Autodrucken($programmpfad, $Programmtitel, $dateipfad, $Druckername)
[/autoit] [autoit][/autoit] [autoit]ShellExecute($programmpfad, "", "", "", @SW_MAXIMIZE)
WinWait($Programmtitel)
WinActivate($Programmtitel)
WinWaitActive($Programmtitel)
Send("^o")
Sleep(1000)
;Send($datei1pfad)
ControlSetText("Archiv öffnen ...", "", 1148, $dateipfad)
Sleep(500)
ControlClick("Archiv öffnen ...", "", "Button2")
Sleep(1500)
;Send("{Enter}")
While 1
If WinActive("Archivübersicht:") Then
$hComboBox = ControlGetHandle("Archivübersicht:", "", "ComboBox1")
ControlCommand("Archivübersicht:", "", 1013, "showdropdown")
Sleep(500)
ControlCommand("Archivübersicht:", "", 1013, "SelectString", 'Täglich')
Sleep(500)
ControlCommand("Archivübersicht:", "", 1012, "showdropdown")
Sleep(500)
ControlCommand("Archivübersicht:", "", 1012, "SelectString", $inidatum)
Sleep(500)
Send("{Enter}")
ControlClick("Archivübersicht: ", "", "Button5") ;Funktioniert Plötzlich einfach nicht mehr. (Deswegen das Send Enter)
Sleep(500)
ExitLoop
Else
WinActivate("Archivübersicht:")
EndIf
WEnd
Sleep(1500)
While 1
If WinActive('Gruppenauswahl') Then
;Send("{Enter}")
ControlClick('Gruppenauswahl', "", "Button4")
ExitLoop
Else
WinActivate('Gruppenauswahl')
EndIf
WEnd
Sleep(1500)
While 1
If WinActive('JUMO PCA 3000 ') Then
Send("^p")
ExitLoop
Else
WinActivate('JUMO PCA 3000')
EndIf
WEnd
Sleep(1500)
If WinGetTitle('Drucken Kanäle') Then
While 1
If WinActive('Drucken Kanäle') Then
;Send("{Enter}")
ControlClick('Drucken Kanäle', "Diagramm", "Button4")
Sleep(500)
ControlClick('Drucken Kanäle', "Dargestellter Zeitbereich", "Button6")
Sleep(500)
ControlClick('Drucken Kanäle', "", "Button8")
ExitLoop
Else
WinActivate('Drucken Kanäle')
EndIf
WEnd
EndIf
Sleep(1500)
While 1
If WinActive('Drucken') Then
ControlCommand("Drucken", "", 1139, "showdropdown")
Sleep(500)
ControlCommand("Drucken", "", 1139, "SelectString", $Druckername)
Sleep(500)
ControlClick('Drucken', "OK", "Button10")
ExitLoop
Else
WinActivate('Drucken')
EndIf
WEnd
Sleep(4000)
ProcessClose("pca177u.exe")
EndFunc ;==>Autodrucken
[/autoit]Eigenartiger weise will die der Befehlt in Zeile 29 nicht mehr Funktionieren.
Ist zwar schon gelöst, aber dennoch ist der "Run" Befehl veraltet. Mach es so:
[autoit]ShellExecute("Calc.exe")
ProcessWait("Calc.exe")
WinSetState("[CLASS:CalcFrame]", "", @SW_MINIMIZE)
Hey,
Mit der IE ist es genau so möglich wie mti der FF. Du kannst das mit der IE.au3 alles komplett im Hintergrund abarbeiten lassen. Obs schneller ist...hmmm...das weiß ich nicht. Das muss man Testen.
Ich habe mich nun schon länger mit der FF.au3 sowie Firefox selbst auseinander gesetzt.
Ich habe auch mal nach einer Möglichkeit gesucht Firefox minimiert zu starten, doch leider erfolglos.
Das was du machst(den Hide Parameter auf "True") ist schon so ziemlich das einzige was man machen kann.
Ich hab dazu auch mal nen Tread eröffnet. Leider ist es mir bisher nur gelungen Firefox erst nach dem Start zu minimieren.
[ offen ] Programm minimiert starten oder minimieren geht nicht.
Das Zauberwort in diesem fall lautet:
[autoit]BinaryToString
[/autoit]
in diesem Fall
flag = 4, Binärdaten werden UTF8
Oder schau dir den folgenen Tread an.
http://www.autoit.de/index.php?page=Thread&postID=203787
Lg
Hi,
vlt. hilft dir der folgene Tread.
[ gelöst ] TaskScheduler / Aufgabenplaner mittels ObjCreate("Schedule.Service") ansteuern
Versuche das hier zum klicken des submit buttons.
[autoit]_FFClick(_FFXpath("//*[@id='formLoginFreemail']/fieldset/input[8]", "",9))
[/autoit]oder, vlt. sogar noch besser.
[autoit]_FFFormSubmit("formLoginFreemail","id")
[/autoit]Beides getestet und geht ![]()
Ja , sowas ist durchaus möglich.
Aber ich würde das nicht mit Tab drücken lösen, sondern direkt die Controls ansprechen.
[autoit]ControlSend
ControlCommand
ControlClick
Schau dir einfach mal die Funktionen rund um Controls an.
Aber nicht vergessen das Addon auch zu aktivieren ![]()
Firefox>Extras>MozRepl>Start[bzw activate on Startup] (das ist einmalig zu tun)
Hey Mechaniker,
in dem Folgenen Tread gehts um dein anliegen.
Der letzte Post solllte für dich am interessantesten sein.
Hey,
Sry wenn ich ein etwas älteres Thema neu zu Leben erwecke, aber ich hätte hier mal ein Programmierbeispiel zu _FFGetPosition
Local $pos = _FFGetPosition("window.content.wrappedJSObject.top.document.getElementsByName('scrape_url')[0]")
_ArrayDisplay($pos)
und noch für ID
[autoit]Local $pos = _FFGetPosition("window.content.wrappedJSObject.top.document.getElementById('tl')")
_ArrayDisplay($pos)
Vtl. hilfts ja noch ![]()
Hey leute,
Ich hoffe ihr könnt mir weiter helfen. Also ich habe eine Externe Platte auf der ich alles mögliche an Daten Sammel. Diese Gesammte Platte würde ich nun gerne allen anderen benutzern im Netzwerk frei geben. Soweit so gut. Funktioniert auch alles reibungslos. Der nächste Schritt ist es einen Ordner anzulegen mit gesonderter Freigabe. Damit meine ich das Recht für alle anderen zum schreiben. Sprich Daten in diesem Ordner abzulegen. Das geht auch soweit. Nur hab ich jetzt ein kleines Problem. Und zwar ist es so das wenn man direkt den extra freigegebenen Ordner öffnet, kann man dor auch Daten Speichern. Geht man allerdings nun über den Laufwerksbuchstaben und dann halt in den extra schreib Ordner, hat man keine Berechtigung zum schreiben mehr.
Ist jetzt nicht so das mega Problem, aber würde es gerne gelösst haben.
LG
lol, oh man *sich vor kopf hau*
manchmal sieht man vor lauter wörtern echt keine Buchstaben mehr ![]()
okay, es funktioniert.
Aber direktes minimiertes starten geht leider immernoch nicht.
Hey,
hab ein kleines Problem damit ein Programm minimiert zu starten, bzw nachträglich zu minimieren. Will einfach nicht.
Hier mein Codeschnippsel:
Opt("WinTitleMatchMode", 2)
Opt("WinWaitDelay", 5000)
If ProcessExists("firefox.exe") Then
ProcessClose("firefox.exe")
Sleep(2000)
ShellExecute("firefox.exe", "http://www.google.de", "", "", @SW_MINIMIZE)
WinWaitActive("Morzilla Firefox")
WinSetState("Morzilla Firefox", "", @SW_MINIMIZE)
Else
ShellExecute("firefox.exe", "http://www.google.de", "", "", @SW_MINIMIZE)
WinWaitActive("Morzilla Firefox")
WinSetState("Morzilla Firefox", "", @SW_MINIMIZE)
EndIf
Sinn und Zweck dieser Funktion ist es Firefox zu reseten, durch nen (harten) neustart des Programmes.
In diesem Forum gibts schon Treads zu dieser Frage.
Einfach mal die Suche benutzen.
[ gelöst ] Programm zeitgesteuert öffnen
Oder so
[autoit]$timer = Number(TimerInit())
While TimerDiff($timer) <= 1000 * 60 * 5 ;Läuft 5 Minuten
;code
Wend
Edit:Badbunny war schneller ![]()
Danke für eure hilfe.
So gehts
_FFFrameEnter(0)
$sText = _FFXPath("//table//tr/td//strong", "", 13)
_FFFrameLeave()