Du kannst dieses Script einfach um die Mausclicks ergänzen die zum Posteingang führen!
Beiträge von bernd670
-
-
Hallo und :willkommen:,
Zu 1: Die Mouseclick-Funktion ist die unzuverlässigste Art ein Fenster zu steuern. Was du auf jeden Fall machen solltest ist das Fenster zu maximieren bevor du mit den XY-Werten arbeitest. Wenn das Fenster nicht maximiert ist kann sich die Positon bei jedem Start ändern.
Zu 2: Login-Name und Passwort musst du natürlich anpassen!
Coderun("rundll32.exe url.dll,FileProtocolHandler http://www.gmx.net/de/dienst/") WinWait("GMX - Login zum Mitglieder-Bereich") WinSetState("GMX - Login zum Mitglieder-Bereich","",@SW_MAXIMIZE) WinActivate("GMX - Login zum Mitglieder-Bereich") WinWaitActive("GMX - Login zum Mitglieder-Bereich") Send("Max.Mustermann@gmx.de");; Login-Name send("{TAB}") send("123456");; Passwort send("{enter}")Die Befehle mit Beispielen findest du in der Hilfe-Datei (Autoit.chm und hier)
-
Ich habe mal ein paar Änderungen vorgenommen:
Spoiler anzeigen
C
Alles anzeigen#include <Constants.au3> #include <GUIConstants.au3> #include <file.au3> #include <array.au3> #Include <GuiCombo.au3> Opt("GUICoordMode", 0) ;1=absolute, 0=relative, 2=cell Opt("GUIResizeMode", 802) Opt("WinTitleMatchMode", 2) Opt("TrayIconDebug", 1) $Mandant = "100" $FirstNr = "711412" $LastNr = "712699" $PdfReader = @ScriptDir & "\FoxitReader.exe rnr.pdf" Run($PdfReader) $WinTitel = "Foxit Reader" WinWait($WinTitel) $parent = WinGetHandle($WinTitel) $WinPos = WinGetPos($WinTitel) $fcpos = ControlGetPos($WinTitel, "", "AfxControlBar42s1") $ax = $WinPos[0]+2 $ay = $WinPos[1]+42 $aw = $fcpos[2] $ah = $fcpos[3]-2 $xx= $fcpos[2] $Form1 = GUICreate("", $aw, $ah, $ax, $ay, $WS_POPUPWINDOW + $WS_VISIBLE + $DS_SETFOREGROUND, $WS_EX_TOOLWINDOW, $parent) $Lbl_Mandant = GUICtrlCreateLabel(" Mandant " & $Mandant, 0, 5, 110, 20) GUICtrlSetBkColor(-1, 0x00ff00) ; Grün GUICtrlSetFont(-1, 10, 400, 0, "Arial Black") $Bot_Mandant = GUICtrlCreateButton("MM", 115, -2, 25, 25, $BS_ICON) GUICtrlSetImage(-1, @ScriptDir & "\icon\wechsel.ico") GUICtrlSetTip(-1, "Mandant wechsel") $Lbl_FLNr = GUICtrlCreateLabel(" " & $FirstNr & " - " & $LastNr, 30, 5, 87, 16) GUICtrlSetBkColor(-1, 0x00ff00) ; Grün GUICtrlSetTip(-1, "in diesem Bereich kann die Rechnunsnummer gesucht werden") $Bot_Prev = GUICtrlCreateButton("<", 100, -5, 25, 25, $BS_ICON) GUICtrlSetImage(-1, @ScriptDir & "\icon\links1.ico") GUICtrlSetTip(-1, "vorhergehende Rechnungsnummer") $Bot_Next = GUICtrlCreateButton(">", 30, 0, 25, 25, $BS_ICON) GUICtrlSetImage(-1, @ScriptDir & "\icon\rechts1.ico") GUICtrlSetTip(-1, "nächste Rechnungsnummer") $InpRnr = GUICtrlCreateInput($FirstNr, 40, 0, 70, 25) GUICtrlSetFont(-1, 12, 400, 0, "Arial") GUICtrlSetTip(-1, "hier die Rechnunsnummer eingeben") $Bot_OK = GUICtrlCreateButton("OK", 100, 4, 60, 20) GUICtrlSetTip(-1, "suche Rechnungsnummer") $Bot_Abbruch = GUICtrlCreateButton("Abbruch", 65, 0, 60, 20) GUICtrlSetTip(-1, "beenden") GUISetState(@SW_SHOW) WinActivate($Form1) While WinExists($WinTitel) ; wenn Foxit Reader geschlossen wird, soll auch diese Gui beendet werden $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE Or $msg = $Bot_Abbruch WinClose($WinTitel) ExitLoop Case $msg = $Bot_Mandant Case $msg = $Bot_OK Case $msg = $Bot_Next Case $msg = $Bot_Prev EndSelect $WinPos = WinGetPos($WinTitel) $fcpos = ControlGetPos($WinTitel, "", "AfxControlBar42s1") $ax = $WinPos[0]+4 $ay = $WinPos[1]+44 $aw = $fcpos[2] $ah = $fcpos[3]-2 WinMove($Form1,"",$ax,$ay,$aw,$ah) WEnd -
Hallo,
probier mal das (Pfad bei Run anpassen):
Code
Alles anzeigenRun("D:\Tools\Foxit Reader.exe") WinWait("Foxit Reader") $handle = WinGetHandle("Foxit Reader") ControlDisable($handle, "", "AfxControlBar42s1") ControlHide($handle, "", "AfxControlBar42s1") ControlSend($handle, "", "AfxControlBar42s1", "!{F8}") WinWaitClose($handle)Damit wird die Toolbar deaktivert und kann dann nicht mehr benutzt werden!
-
Nach dem ich die Zeilen aus diener Datei glöscht hatte konnte ich sie ohne probleme wieder öffnen!
-
Es liegt an den Zeilen
Code<property name="CtrlStyle" vt="Int32">...</property> <property name="CtrlExStyle" vt="Int8">..</property>Die werden zwar von Koda eingetragen aber er kann sie (noch) nicht lesen!
Spoiler anzeigen
Code
Alles anzeigen<object type="TAForm" name="AForm1"> <properties> <property name="Left" vt="Int16">192</property> <property name="Top" vt="Int8">125</property> <property name="Width" vt="Int16">488</property> <property name="Height" vt="Int16">184</property> <property name="Caption" vt="String">Betriebsausweis</property> <property name="Color" vt="Ident">clBtnFace</property> <property name="Font.Charset" vt="Ident">DEFAULT_CHARSET</property> <property name="Font.Color" vt="Ident">clWindowText</property> <property name="Font.Height" vt="Int8">-16</property> <property name="Font.Name" vt="String">MS Sans Serif</property> <property name="Font.Style" vt="Set">fsBold</property> <property name="OldCreateOrder" vt="False">False</property> <property name="Visible" vt="True">True</property> <property name="Style" vt="Int32">-1798701056</property> <property name="ExStyle" vt="Int16">256</property> <property name="Version" vt="String">1.02</property> <property name="PixelsPerInch" vt="Int8">96</property> <property name="TextHeight" vt="Int8">20</property> </properties> <components> <object type="TALabel" name="ALabel1"> <properties> <property name="Left" vt="Int8">20</property> <property name="Top" vt="Int8">20</property> <property name="Width" vt="Int16">140</property> <property name="Height" vt="Int8">25</property> <property name="Caption" vt="String">Vorname</property> <property name="TabOrder" vt="Int8">0</property> <property name="HaveVariable" vt="False">False</property> </properties> <components> </components> </object> <object type="TALabel" name="ALabel2"> <properties> <property name="Left" vt="Int8">20</property> <property name="Top" vt="Int8">50</property> <property name="Width" vt="Int16">140</property> <property name="Height" vt="Int8">25</property> <property name="Caption" vt="String">Nachname</property> <property name="TabOrder" vt="Int8">1</property> <property name="HaveVariable" vt="False">False</property> </properties> <components> </components> </object> <object type="TALabel" name="ALabel3"> <properties> <property name="Left" vt="Int8">20</property> <property name="Top" vt="Int8">80</property> <property name="Width" vt="Int16">140</property> <property name="Height" vt="Int8">25</property> <property name="Caption" vt="String">Personalnummer</property> <property name="TabOrder" vt="Int8">2</property> <property name="HaveVariable" vt="False">False</property> </properties> <components> </components> </object> <object type="TAInput" name="AInput1"> <properties> <property name="Left" vt="Int16">160</property> <property name="Top" vt="Int8">20</property> <property name="Width" vt="Int16">300</property> <property name="Height" vt="Int8">25</property> <property name="TabOrder" vt="Int8">3</property> </properties> <components> </components> </object> <object type="TAInput" name="AInput2"> <properties> <property name="Left" vt="Int16">160</property> <property name="Top" vt="Int8">50</property> <property name="Width" vt="Int16">300</property> <property name="Height" vt="Int8">25</property> <property name="TabOrder" vt="Int8">4</property> </properties> <components> </components> </object> <object type="TAInput" name="AInput3"> <properties> <property name="Left" vt="Int16">160</property> <property name="Top" vt="Int8">80</property> <property name="Width" vt="Int16">300</property> <property name="Height" vt="Int8">25</property> <property name="TabOrder" vt="Int8">5</property> </properties> <components> </components> </object> <object type="TAButton" name="AButton1"> <properties> <property name="Left" vt="Int16">160</property> <property name="Top" vt="Int8">110</property> <property name="Width" vt="Int8">80</property> <property name="Height" vt="Int8">25</property> <property name="Caption" vt="String">Drucken</property> <property name="TabOrder" vt="Int8">6</property> </properties> <components> </components> </object> </components> </object> -
Hallo und :willkommen:,
Das Problem mit der XML-Datei hatte ich auch mal, da wurde von Koda ein Wert gespeichert den er dann beim einlesen als Fehler interpretiert. Poste mal die kxf-Datei dann schau ich mal drüber.
Deine 2. Frage bezieht sich bestimmt auch auf Koda oder ? Dort kann man keine Schriftart und Grösse vorgeben. Ich ändere die immer hinterher indem ich alle Objekte markiere (SHIFT + Maustaste) und dann die Schrift einstelle.
-
Hallo,
ich hatte mit RunAsSet noch nie probleme. Zum runterfahren von Rechner benutze ich immer das Tool Poweroff. Ohne Adminrechte auf dem Zielrechner wird es allerdings nicht funktionieren.
-
in der Hilfe zur Beta-Version ..\AutoIt3\beta\AutoIt.chm
-
Vor die Schleife _GUICtrlComboResetContent($pc_combo) schreiben!
-
benötigt #Include <GuiCombo.au3> und gibt es nur in der beta.
-
Hallo,
@pee warst mal wieder schneller ;-)! Fehlt nur noch der hinweis das es nur mit der beta läuft.
-
Zitat
Original von Wipeout
FileMove("AlterName.txt","NeuerName.txt",1)
Wichtig ist hierbei das Flag (1=datei überschreiben)
*freu*
ich hab jetzt den Status GrünschnabelDas Flag muss nur auf 1 gesetzt werden wenn schon eine Datei mit "NeuerName.txt" existiert und diese überschrieben werden soll. Die überschriebene Datei ist dann unwiederbringlich verloren.
-
Hallo,
ein FileRename gibt es nicht aber mit FileMove sollte es gehen!
-
Hallo,
wenn du mit _GUICtrlComboAddString(), aus GUICombo.au3 (beta), die Fensternamen hinzufügst kann du auch Namen hinzufügen die "|" enthalten.
Code
Alles anzeigen#include <GUICombo.au3> ... Func updatecombo () ;aktualisiert die Combolist GUICtrlSetData ($Combo1, "") $wl = WinList () _GUICtrlComboAddString($Combo1,"---- wähle ----") For $i = 1 To $wl[0][0] if $wl[$i][0] <> "" And IsVisible($wl[$i][1]) AND myArraySearch($ignorelist, $wl[$i][0])=0 Then _GUICtrlComboAddString($Combo1,$wl[$i][0]) EndIf Next GUICtrlSetData (3, 0) _GUICtrlComboSetCurSel($Combo1,0) EndFunc ... -
ZitatAlles anzeigen
Original von Real_Bourbon
heydas hab ich mit rundos blos es klappt nicht
lol so hab ich es versucht
Code$regautoitdir = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt\", "InstallDir") $autoitdir = $regautoitdir & "\" _RunDOS("start" & $autoitdir & "AutoIt.chm")habs aber jetzt
läuft. Ich sollte mit dem Klebstoffschnüffeln aufhörenCode$regautoitdir = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt\", "InstallDir") $autoitdir = "start " & $regautoitdir & "\" _RunDOS($autoitdir & "autoit.chm")Lesen und verstehen sind bei mir zwei paar dinge.
Bei mir du kannst davon ausgehen das ich die Hilfe durchsiebt habe bevor ich hier um Hilfe suche.
Hab dann ca.30 min rumgefummelt und eben ist mir die erleuchtung gekommen.Ahoi
Ha gleichzeitig
Werde deinen vorschlag auch mal testenPeace
Im 1. Beispiel fehlt nur ein Leerzeichen nach start dann funktioniert es auch.
-
@Mirage, es geht so wie ich es gemacht habe, ich habs vorher getestet

@pee, dafür müsste dann aber auch "beta" von @AutoItVersion zurückgegeben werden! :tier:
Kommentar peethebee: Sorry, Denkfehler von mir. -
ZitatAlles anzeigen
Original von Real_Bourbon
W-o-W
sowas muß man auch können Programmieren und dann nebenbei mal hüpsch idiotensicher erklärt.
Wäre nie auf die Idee gekommen die Gui dynamisch anzupassen
Danke euch beiden noch mal.THX
an
Bernd
Eddy_ErpelNur noch eins wie kann man eine Datei ausführen z.B AutoIt.chm wenn man den Arbeitspfad mit regread ausgelesen hat?
Code$regautoitdir = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt\", "InstallDir") $autoitdir = $regautoitdir & "\"
Dann ist gespeichert c:\programme\autoit\
Wie führe ich dann c:\programme\autoit\autoit.chm ausUnter 2000/XP kann man es so machen
-
Hallo,
hier ein kleines Programm als denkanstoss:
Code
Alles anzeigenIf @AutoItVersion < "3.1.1.128" Then MsgBox(0, "Falsche Version", "Das Programm benötigt mindestens AutoIt-Version 3.1.1.128 beta!") Exit EndIf ; Variable die die Namen der Verzeichnisse speichert Dim $strDirNames[1] ; Startverzeichnis wählen $StartFolder = FileSelectFolder("Startverzeichnis wählen", "") $h_search = FileFindFirstFile($StartFolder & "*.*") If $h_search = -1 Then MsgBox(0, "Fehler", "Datei/Verzeichnis nicht gefunden!") Exit EndIf ; Einlesen $index = 1 While 1 $strName = FileFindNextFile($h_search) If @error Then ExitLoop If StringInStr(FileGetAttrib($StartFolder & $strName),"D") Then If UBound($strDirNames) < $index then ReDim $strDirNames[$index] $strDirNames[$index-1] = $strName $index += 1 EndIf WEnd ; Ausgabe $Ausgabe = UBound($strDirNames) & " Verzeichnis(se) gefunden!" & @CRLF & @CRLF For $index = 0 To UBound($strDirNames) - 1 $Ausgabe &= $strDirNames[$index] & @CRLF Next MsgBox(0,"",$Ausgabe) -
Zitat
Original von Eddy_Erpel
Hi,
danke für die Lorbeeren.
Hier noch zu deiner letzte Frage:
Global $datei = ( _NowDate() & "." & _NowTime() & " .ping.log")eddy_erpel
Das kann so nicht funktionieren, _NowTime() gibt die Zeit getrennt durch ":" aus und das ist ein nicht erlaubtes Zeichen bei Dateinamen.
Das ist auch der Grund weshalb ich _NowDate() ungerne für Dateinamen verwende, wenn nämlich z.B. das amerikanische Format eingestellt ist wird als Trennzeichen "/" benutzt und das ist auch ein nicht erlaubtes Zeichen im Dateinamen.