1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. sc4ry

Beiträge von sc4ry

  • Inputbox - darf nicht leer sein

    • sc4ry
    • 27. April 2007 um 14:35

    also es funktionieren beide, mit der msgbox siehts natürlich noch nen tick besser aus, damit die dummen user auch wissen, was ich von ihnen will *g*

    hab daniels bsp genommen, weil das auch so meine gewesen ist, nur das die nicht ganz so schön geklappt hat *g*
    und er namensvetter ist =)

    aber der dank gebührt natürlich beiden \o/

  • Inputbox - darf nicht leer sein

    • sc4ry
    • 27. April 2007 um 12:50

    ah ok, dann spar ich mir die msgbox, klappt ganz gut so =) thx

  • Inputbox - darf nicht leer sein

    • sc4ry
    • 27. April 2007 um 12:18

    bitte lacht mich nicht aus, also soweit klappt es jetzt, aber jetzt bräuchte ich natürlich noch ne schleife drumrum, damit er auch zur inputbox zurückspringt *g*

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    do
    $sUsername = InputBox("MARS-UserID", "Bitte geben Sie Ihre UserID ein (nur beim 1. Start)", "", "", 275, 100)
    if @error = 1 Then
    exit
    Elseif GUICtrlRead($sUsername) = "" Then
    MsgBox(0, "Warnung", "Inputbox darf nicht leer sein, bitte geben Sie Ihre UserID ein")
    EndIf
    until $sUsername <> ""

    [/autoit]

    PS: habs doch geschafft, war auf dem richtigen weg, leider hatte ich den exit befehl an der falschen stelle, so dass es nicht klappen konnte =)

    daaaaaanke

    PPS: hmm, klappt leider nicht ganz, es kommt bei richtiger eingabe nochmal die msgbox =/
    auch wenn ich es mit while zusammenbaue

  • Inputbox - darf nicht leer sein

    • sc4ry
    • 27. April 2007 um 11:20

    hiho,

    also ich habe folgendes scriptchen (ausschnitt)

    Spoiler anzeigen
    [autoit]


    ;Eingabe User & PW
    If FileExists(@ScriptDir & $Settings) Then
    $sUsername = IniRead(@scriptdir & $Settings, "General", "Username", "")
    $SaveDirIE = IniRead(@scriptdir & $Settings, "Path", "SaveDirIE", "")
    $SaveDirExcel = IniRead(@scriptdir & $Settings, "Path", "SaveDirExcel", "")
    Else
    $sUsername = InputBox("MARS-UserID", "Bitte geben Sie Ihre UserID ein (nur beim 1. Start)", "", "", 275, 100)
    if @error = 1 Then
    exit
    EndIf
    IniWrite(@scriptdir & $Settings, "General", "User", $sUsername)
    $SaveDirExcel = FileSelectFolder("Bitte wählen Sie einen Ordner aus, in dem Ihre Reports gespeichert werden sollen (nur beim 1. Start)", "", 1, "C:\Temp")
    if @error = 1 Then
    FileDelete(@scriptdir & $Settings)
    exit
    EndIf
    IniWrite(@scriptdir & $Settings, "Path", "SaveDirExcel", $SaveDirExcel)
    DirCreate($SaveDirExcel & "\IE-Exports")
    $SaveDirIE = $SaveDirExcel & "\IE-Exports"
    IniWrite(@scriptdir & $Settings, "Path", "SaveDirIE", $SaveDirIE)
    EndIf
    $sPassword = InputBox("MARS-Passwort", "Bitte geben Sie Ihr Passwort ein", "", "*", 10, 10)
    if @error = 1 Then
    exit
    EndIf

    [/autoit]

    also hab es jetzt soweit, dass alle angaben, außer das pw, in einer ini gespeichert werden, und bei folgeläufen hieraus ausgelesen werden.

    aber sowohl bei der user- als auch pw-inputbox sollte der wert nicht "" (leer) sein können. das script läuft weiter, sobald auf ok geklickt wird. ist aber nun nichts bei user/pw eingetragen, läuft das script beim login an der entsprechenden ie-seite auf.
    soweit ich das gesehen habe, gibt es bei der inputbox keine option dafür.

    aber den string auslesen (wenn leer dann neue inputbox) würde ich lieber eine msgbox vorziehen, die beim klick auf ok sagt (box darf nicht leer sein, bitte versuchen sie es erneut).

  • DirCreate in Variable

    • sc4ry
    • 27. April 2007 um 09:36

    args, manno, da hät man auch noch selbst drauf kommen können *g*
    ist aber fies, nur wg klammern =(

    mit fileexist war auch nur ein bsp, aber das der auch nur 0 und 1 rausgibt *bong*

    danke dir =)

  • DirCreate in Variable

    • sc4ry
    • 27. April 2007 um 09:10

    Hallo,

    steh grad bissel aufm schlauch.

    und zwar wollte ich DirCreate eine Vairable zuordnen, ... dort kommt aber nur "1" raus.
    wenn man sich anschließend die hilfe durchliest, sieht man halt, dass damit die erforlgreiche ausgabe ausgegeben wird.
    aber wir bekomme ich nun den neu angelegten ordner in eine variable?

    hab auch schon versucht, anschließend den neuen Ordner mit FileChangeDir oder FileExists in eine Variable zu schreiben, kommt auch immer "1" raus oO

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    DirCreate($SaveDirExcel & "\IE-Exports")
    $SaveDirIE = FileExists($SaveDirExcel & "\IE-Exports")
    MsgBox(0, "", $SaveDirIE)

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • Datei an (Brenn)-Programm senden

    • sc4ry
    • 26. April 2007 um 20:52

    also das funzt leider nicht, cdbxp spuckt immer einen fehler aus.
    leider bietet es auch nur an, projekte, und keine avis zu öffnen, so dass ich diesen weg auch nicht gehen kann.

    hat denn wer erfahrung, ob es bei anderen tools geht, vllt nero6 oder 7?

  • Datei an (Brenn)-Programm senden

    • sc4ry
    • 26. April 2007 um 10:24

    hey, danke th.meger, werde es heute abend mal @home probieren ... hier auf der arbeit plag ich mich solange mit anderen sachen rum *g*

    aber irgendwie schein ich die hilfe missverstanden zu haben =)
    ShellExecute ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] )


    bei parameters hät ich jetzt irgendwie an so sachen wie in der cmd gedacht ( /Y /B oder sowas) *g*
    aber um so besser, wenn es dann heute abend geht =)

  • Fragen eines Anfängers

    • sc4ry
    • 25. April 2007 um 21:09

    also ich bin jetzt auch noch n noob, aber dein pw ist in der variablen $input gespeichert.

    wenn es in ne anderen variable soll, könnte man

    $inhalt = $input machen, oder?

    aber viel bringt es nicht, kannst auch direkt die variable $inhalt nehmen, würd ich sagen =)

    alles ohne gewähr =)

    msgbox(0, $inhalt)

  • Datei an (Brenn)-Programm senden

    • sc4ry
    • 25. April 2007 um 19:56

    leider wird mir wieder mein englisch zum verhängnis, aber sowohl

    ShellExecute(""C:\Programme\CDBurnerXP Pro 3\cdbxp.exe"", "", "", $search, @SW_MAXIMIZE)

    als auch

    ShellExecute($search, "", "", ""C:\Programme\CDBurnerXP Pro 3\cdbxp.exe"", @SW_MAXIMIZE)

    gehen nicht =/

    man kann cdbxp auch über die cmd bedienen (/oa, /od, /bi), aber leider sind das alles drei wohl keine modes, um eine normale datencd zu erstellen =(

  • Datei an (Brenn)-Programm senden

    • sc4ry
    • 25. April 2007 um 19:02

    Hallo,

    ich versuche grad ein kleines script zu schreiben, dass mir arbeit beim brennen abnimmt =)

    und zwar soll es so ablaufen, dass ich dem script den ordner sage, wo es nach files zum brennen (hauptsächlich avi) suchen soll. danach liest das script nacheinander die dateien, die gebrannt werden sollen ein/aus und brennt diese. ich wechsel eigentlich nur die cds und lass mir in ner msgbox anzeigen, was gerade gebrannt wurde, damit ich die cd beschriften kann.

    den angang habe, und beim ende habe ich auch schon ansätze, die klappen sollten. aber jetzt stehe ich vor dem prob, nachdem ich den path angegeben habe, und das script die dateinamen ausliest, wie übergibt es diesen an das brennprog???

    standardmäßig hat dieses ja ein fenster, wo die files reingezogen werden.
    als tool dafür benutze ich cd xp burner.

    gibt es irgendwas, was mich hier zum ziel bringt?

    ups, script vergessen, schaut bis jetzt so aus:

    Spoiler anzeigen
    [autoit]

    ;
    ;
    ;UBurnMeCrazy
    ;
    ;©sc4ry

    [/autoit] [autoit][/autoit] [autoit]

    ;starte cdbxp
    ;run("C:\Programme\CDBurnerXP Pro 3\cdbxp.exe", @SW_MAXIMIZE)

    [/autoit] [autoit][/autoit] [autoit]

    ;gebe ordner an, wo zu brennende (avi-)files existieren
    $path = FileSelectFolder("Please specify your burning folder", "", 2, "K:\")

    [/autoit] [autoit][/autoit] [autoit]

    ;setzt den aktuellen ordner (wichtig für FileFindFirstFile)
    $dir = FileChangeDir($path)

    [/autoit] [autoit][/autoit] [autoit]

    ;sucht nach avi-files
    $search = FileFindFirstFile("*.avi")

    [/autoit] [autoit][/autoit] [autoit]

    ;gibt nacheinander in einer msgbox die gefunden files aus
    If $search = -1 Then
    MsgBox(0, "Error", "No files/directories matched the search pattern")
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop

    MsgBox(4096, "File:", $file)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ;beendet die suche
    FileClose($search)

    [/autoit]
  • IE-Projekt

    • sc4ry
    • 25. April 2007 um 10:15

    mal gucken ob ich wirklich mehr infos habe, weil irgendwie kann ich im quelltext so gut wie nix finden =(

    was ich finde, ist das hier

    Spoiler anzeigen

    //Array for language dependent button descriptions
    buttontexts = new Array("Home", "Ein- / Ausklappen Rollenmenü", "Ein- / Ausblenden Standard Navigationsblock", "Ein- / Ausblenden Artikel Navigationsblock", "Standarddruck", "Excel Export", "Tabelle", "Balkendiagramm", "Kreisdiagramm", "Variablenbild", "Zurück", "Zurück zum Anfang", "Bedingungen", "Exception", "Währungsumrechnung", "Springen", "Achsen vertauschen", "Query Eigenschaften", "CSV Export", "Personalisierung einschalten", "Personalisierung ausschalten", "Bookmark setzen", "Bookmark speichern", "Freie Zeitauswahl", "Alle Knoten expandieren", "Bookmark verschicken", "Parameterdruck", "Ein- / Ausblenden leerer Zeilen und Spalten");
    function set_columns()

    das durch "Standarddruck", popt auf, wenn man mit der maus auf dem "button" verweilt. "express" (was unten links im ie erscheint) findet er leider nirgends im quelltext, und die seite lässt sich auch nicht mit FF laden =(

    alles rund um den button was man sehen kann, sieht wie folgt aus:

    PS: irgendwie wartet er auch nicht, bis die seite durch _ienavigate neu geladen wurde (obwohl das ja standardmäßig an sein sollte). quelltext dazu ist im 1. post aktualisiert.

    Dateien

    java.jpg 31,26 kB – 0 Downloads
  • IE-Projekt

    • sc4ry
    • 24. April 2007 um 20:29

    werd ich morgen mal testen @ snoozer, mein portable FF hab ich immer dabei *g*

    ansonsten konnte ich zu "Fire"-"Event" nüx finden.
    werde aber morgen dann nochmal mehr infos darüber rausgeben, schickes bild knipsen usw =)

    schonmal danke für eure hilfe. beim stöbern im forum (in der hilfe sowieso), hab ich leider auch noch nix entsprechendes finden, bzw umsetzen können.

  • IE-Projekt

    • sc4ry
    • 24. April 2007 um 16:03

    ich wieder, also oben genanntes problem konnte ich anders lösen.
    es gab zwar nicht die möglichkeit, einfach den "link" zu kopieren und ...byindex/text wollte perdu nicht funktionieren, aber man kann "bookmarks" speichern.
    der link im bookmark läd mir aber die seite, und das ganze über _IENavigate macht das, was ich brauche.

    jetzt komm ich zum nächsten prob, aber es nähert sich (bei den probs die ich zZ kenne) schon dem ende.
    ich müsste auf einen javascript-button klicken.

    sofern ich mit der maus auf den button gehe, zeigt mir der IE unten links folgendes an: javascript:pm_divider('express')

    reicht mir diese info für nen klick, oder muss ich noch den quelltext durchgucken?
    und die passende funktion muss ich noch suchen, werd mich da aber zuhause drangeben und gleich feierabend machen =)

  • IE-Projekt

    • sc4ry
    • 24. April 2007 um 11:08

    THX th.meger, habs anhand von bsp 1 gelöst, und auch geschafft, die sprache aus nem drop-down menü zu wählen =)

    hatte das zwar auch gefunden, aber war mir sehr unsicher, ob es zu meinem prob die lösung ist, da ich halt auf engl. nicht viel verstehe =(

    ich komm dann zum nächsten prob, hoffe da ist auch noch jmd. willig, mir zu helfen *g*

    folgendes bild erscheint nach dem login, und ich muss eigentlich direkt den link "Tagesumsätze (Produkte)" laden. nun weiss ich nicht, ob ich vorher per ie-function auch die anderen links aufklappen muss, oder ich direkt den passenden link "klicken" kann. wobei ich von zweiten ausgehe.

    dafür hatte ich eigentlich _IELinkClickByText($oIE, "Tagesumsatz (Produkte)") gefunden, was beim testen mit anderen seiten auf funzte, aber hier will das einfach nicht.

    infos dazu aus dem quelltext

    Spoiler anzeigen

    createNode(941 , 916 , "SAP_BW_TEMPLATE", "Tagesumsatz (Produkte)", "ZSB_MARS_NAVIGATION", "R", false, 7 );
    createNode(859 , 822 , "SAP_BW_TEMPLATE", "Tagesumsatz (Produkte)", "ZSB_MARS_NAVIGATION", "R", false, 4 );
    createNode(791 , 773 , "SAP_BW_TEMPLATE", "Tagesumsatz (Produkte)", "ZSB_MARS_NAVIGATION", "R", false, 4 );
    createNode(1017 , 986 , "SAP_BW_TEMPLATE", "Tagesumsatz (Produkte)", "ZSB_MARS_NAVIGATION", "R", false, 3 );
    onClick="rolemenu('http://***','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_ADM','YMA_MENU_DEK_ADM','0000000866','0000000841',941 ); return false;" target="_self"
    onmouseover="callDescription('941')"
    onmouseout="hideDescription()"><img src=b_template.gif class="img1" alt="Web-Report"><img src="s_s_ledg.gif" border="0"></a></td>
    <td style="padding-left:3px"><a href="#941" onClick="rolemenu('http://***','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_ADM','YMA_MENU_DEK_ADM','0000000866','0000000841',941 ); return false;" target="_self"
    onmouseover="callDescription('941')"
    onmouseout="hideDescription()"><span id="76">Tagesumsatz (Produkte)</span></a></td>
    </tr>
    <tr id="sitemap947"><a name="947"><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td><td><img src=file_empty.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td>
    <td><img src="file.gif" name="file947" class="img2"></td>
    <td><a href="#947" onClick="rolemenu('http://***','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_ADM','YMA_MENU_DEK_ADM','0000000784','0000000747',859 ); return false;" target="_self"
    onmouseover="callDescription('941')"
    onmouseout="hideDescription()"><img src=b_template.gif class="img1" alt="Web-Report"><img src="s_s_ledg.gif" border="0"></a></td>
    <td style="padding-left:3px"><a href="#859" onClick="rolemenu('http://***','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_ADM','YMA_MENU_DEK_ADM','0000000784','0000000747',859 ); return false;" target="_self"
    onmouseover="callDescription('941')"
    onmouseout="hideDescription()"><span id="156">Tagesumsatz (Produkte)</span></a></td>
    </tr>
    <tr id="sitemap861"><a name="861"><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td>
    <td><img src="file.gif" name="file861" class="img2"></td>
    <td><a href="#861" onClick="rolemenu('http://***','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_ADM','YMA_MENU_DEK_ADM','0000000716','0000000698',791 ); return false;" target="_self"
    onmouseover="callDescription('941')"
    onmouseout="hideDescription()"><img src=b_template.gif class="img1" alt="Web-Report"><img src="s_s_ledg.gif" border="0"></a></td>
    <td style="padding-left:3px"><a href="#791" onClick="rolemenu('http://***','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_ADM','YMA_MENU_DEK_ADM','0000000716','0000000698',791 ); return false;" target="_self"
    onmouseover="callDescription('941')"
    onmouseout="hideDescription()"><span id="304">Tagesumsatz (Produkte)</span></a></td>
    </tr>
    <tr id="sitemap794"><a name="794"><td><img src=file_empty.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td>
    <td><img src="file.gif" name="file794" class="img2"></td>
    <td><a href="#794" onClick="rolemenu('http://***2','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_WEB','YMA_MENU_DEK_WEB','0000000043','0000000012',1017 ); return false;" target="_self"
    onmouseover="callDescription('1053')"
    onmouseout="hideDescription()"><img src=b_template.gif class="img1" alt="Web-Report"><img src="s_s_ledg.gif" border="0"></a></td>
    <td style="padding-left:3px"><a href="#1017" onClick="rolemenu('http://***2','Tagesumsatz (Produkte)','U','YMA_MENU_DEK_WEB','YMA_MENU_DEK_WEB','0000000043','0000000012',1017 ); return false;" target="_self"
    onmouseover="callDescription('1053')"
    onmouseout="hideDescription()"><span id="373">Tagesumsatz (Produkte)</span></a></td>
    </tr>
    <tr id="sitemap1019"><a name="1019"><td><img src=file_vert.gif class="img2"></td><td><img src=file_vert.gif class="img2"></td>
    <td><img src="file.gif" name="file1019" class="img2"></td>
    <td><a href="#1019"

    Dateien

    vorher-nachher.jpg 30,06 kB – 0 Downloads
  • IE-Projekt

    • sc4ry
    • 24. April 2007 um 09:45

    hola,

    also dies ist vllt nicht ein projekt, was man nacher einfach so auf jeden beliebigen rechner nutzen kann (da auf meinen arbeitsplatz zurechtgeschnitten), aber mit einigen änderungen, oder einfach zum lernen, könnte es den ein oder anderen neuen später auch helfen.

    aber im moment brauch ich erstmal wieder eure hilfe. ich bin zwar schon weitergekommen, durch einige hilfe hier im forum, aber es kommt problem nach problem, deswegen wollte ich nicht immer nen neuen thread aufmachen, sondern hier alles zu meinem projekt auffangen und am besten nacheinander besprechen.
    ich weiss jetzt schon von mehreren probs die auf mich zukommen. habe mich auch schon mit allen beschäftigt, aber auf vielen partys gleichzeitig tanzen bringt mich nur mehr durcheinander als so schon.

    ich hab mein script in billig schon fertig, bin aber dabei es umzuschreiben, da ich viele sachen z.B. durch _IE-Functions ersetzen kann/soll.
    leider klappt das aber nicht soooo gut, weil die sachen nicht in der dt. doku stehen, mein engl. echt nicht so prall ist, und ich mich mit html, java usw. auch nur einsteiger taufen kann.

    also folgendes soll das script bewirken:
    nach eingabe von User/PW wird eine ie-seite geladen, wo user/pw eingegeben werden.
    danach läd sich eine neue site, in der verschiedene links geladen werden müssen, die anschließend teilweise gedruckt, bzw alle nach excel exportiert werden sollen.
    diese 5 exportdateien werden über ein makro in excel zu 1 file zusammengefasst und per mail verschickt.

    ich werde zum einem meinen kompletten alten code hier posten (bissel abgeändert) und auch immer den aktuellen. danach wollte ich dann ein thema nach dem anderen abarbeiten und hoffentlich auf eure hilfe hoffen und das ich euch nicht zu sehr nerve =/

    Altes Script

    Spoiler anzeigen
    [autoit]


    run("C:\Program Files\Internet Explorer\IEXPLORE.EXE", "", @SW_MAXIMIZE)
    WinWaitActive("Portal")
    ;Eingabe MARS URL
    MouseClick("left", 190, 90)
    send("http://*")
    send("{enter}")
    sleep(1000)
    ;Passworteingabe (optional mit User und Language)
    WinWaitActive("Anmeldung")
    send("ichbineinpasswort")
    send("{ENTER}")

    ;Öffne Rollmenü
    sleep(6000)
    MouseClick("left", 10, 269)
    sleep(500)
    MouseClick("left", 40, 299)
    sleep(500)
    MouseClick("left", 70, 315)

    [/autoit] [autoit][/autoit] [autoit]

    ;lade Produkte
    sleep(500)
    MouseClick("left", 170, 362)
    ;Excel export
    sleep(11000)
    MouseClick("left", 1240, 188)
    sleep(500)
    MouseClick("left", 448, 420)
    WinWaitActive("Dateidownload")
    MouseClick("left", 689, 511)
    sleep(500)
    send("C:\temp\Produkte.xls")
    send("{ENTER}")
    WinWaitActive("Speichern unter")
    send("j")
    WinWaitClose("Dateidownload")

    ;lade Kunden
    MouseClick("left", 170, 380)
    ;Excel export
    sleep(16000)
    MouseClick("left", 1240, 188)
    sleep(500)
    MouseClick("left", 448, 420)
    WinWaitActive("Dateidownload")
    MouseClick("left", 689, 511)
    sleep(500)
    send("C:\temp\Kunden.xls")
    send("{ENTER}")
    WinWaitActive("Speichern unter")
    send("j")
    WinWaitClose("Dateidownload")

    ;lade Gebiete
    MouseClick("left", 170, 391)
    ;Excel export
    sleep(11000)
    MouseClick("left", 1240, 188)
    sleep(500)
    MouseClick("left", 448, 420)
    WinWaitActive("Dateidownload")
    MouseClick("left", 689, 511)
    sleep(500)
    send("C:\temp\Gebiete.xls")
    send("{ENTER}")
    WinWaitActive("Speichern unter")
    send("j")
    WinWaitClose("Dateidownload")

    ;lade Top Kunden
    MouseClick("left", 170, 408)
    ;drucken
    sleep(17000)
    MouseClick("left", 1157, 191)
    sleep(4000)
    send("{Space}")
    WinWaitActive("Drucken")
    send("!e")
    WinWaitActive("Druckeinstellungen")
    send("!u")
    sleep(1000)
    send("{enter}")
    sleep(1000)
    send("!d")
    sleep(1000)
    WinWaitClose("Drucken")
    send("!{F4}")
    ;Excel export
    MouseClick("left", 1240, 188)
    sleep(500)
    MouseClick("left", 448, 420)
    WinWaitActive("Dateidownload")
    MouseClick("left", 689, 511)
    sleep(500)
    send("C:\temp\Top Kunden.xls")
    send("{ENTER}")
    WinWaitActive("Speichern unter")
    send("j")
    WinWaitClose("Dateidownload")

    ;lade Marken
    MouseClick("left", 170, 426)
    ;drucken
    sleep(20000)
    MouseClick("left", 1157, 191)
    sleep(4000)
    send("{Space}")
    WinWaitActive("Drucken")
    send("!e")
    WinWaitActive("Druckeinstellungen")
    send("!u")
    sleep(1000)
    send("{enter}")
    sleep(1000)
    send("!d")
    sleep(1000)
    WinWaitClose("Drucken")
    send("!{F4}")
    ;Excel export
    MouseClick("left", 1240, 188)
    sleep(500)
    MouseClick("left", 448, 420)
    WinWaitActive("Dateidownload")
    MouseClick("left", 689, 511)
    sleep(500)
    send("C:\temp\Marken.xls")
    send("{ENTER}")
    WinWaitActive("Speichern unter")
    send("j")
    WinWaitClose("Dateidownload")

    ;fasse exportiere Daten mit Makro zusammen
    #include <date.au3>
    ;starte Excel
    run("C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE", "", @SW_MAXIMIZE)
    WinWaitActive("Microsoft Excel")
    sleep(4000)
    ;starte Makro
    mouseclick("left", 19, 109)
    WinWaitActive("cundus Download Formatting Manager")
    MouseClick("left", 435, 653)
    MouseClick("left", 830, 658)
    ;lade Dateien in Makro
    send("C:\temp\Gebiete.xls")
    send("{Enter}")
    sleep(6000)
    ;speichern der generierten Tabelle
    MouseClick("left", 722, 659)
    MouseClick("left", 7, 938)
    MouseClick("left", 121, 939)
    send("!du")
    Winwaitactive("Speichern unter")
    $Datum = @MDAY & "." & @MON & "." & @YEAR
    send("C:\Tagesumsätze ")
    send($datum)
    send(".xls")
    send("!s")
    winwaitclose("Speichern unter")
    WinClose("Microsoft Excel")
    WinWaitNotActive("Microsoft Excel")

    ;verschicke generierte Tabelle per Mail
    ;öffne Lotus Notes
    WinActivate("Lotus Notes")
    WinSetState("Lotus Notes", "", @SW_MAXIMIZE)
    sleep(2000)
    ;öffne Kachel
    MouseClick("left", 15, 523)
    sleep(4000)
    ;öffne "neue Mail"
    send("!1")
    ;Eingabe Empfänger
    send("ichbineinemailaddi")
    send("{Enter}")
    send("{Tab}")
    send("{Tab}")
    send("{Tab}")
    ;Eingabe Betreff
    $Datum = @MDAY & "." & @MON & "." & @YEAR
    send("Tagesumsätze " & $datum)
    send("{Tab}")
    sleep(1000)
    ;lade Anhang
    send("!dh")
    send("C:\Tagesumsätze ")
    send($datum)
    send(".xls")
    send("{Enter}")
    sleep(1000)
    ;verschicke Mail
    send("!1")
    sleep(2000)
    ;verschiebe Mails aus gesendet in Wochenabschlüsse
    MouseClick("left", 105, 232)
    sleep(1000)
    MouseClickDrag("left", 269, 202, 120, 387)
    send("{ESC}")

    [/autoit]

    Neues Script

    um Missverständniss auszuschließen, werde ich das neue Script immer erweitern, da ich dort schon jede menge rumgebastelt habe, aber die funktionen noch nicht perfektioniert und/oder getestet habe, da ich jetzt die probs nacheinander abarbeiten will.

    Spoiler anzeigen
    [autoit]


    ;Starte neue IE-Instanz
    #include <IE.au3>
    $sUsername = InputBox("UserID", "Bitte geben Sie Ihre UserID ein", "", "", 10, 10 )
    $sPassword = InputBox("Passwort", "Bitte geben Sie Ihr Passwort ein", "", "*", 10, 10)
    $sUrl = "http://*"
    ;öffne
    $oIE = _IECreate ($sUrl,0,1,1,0)
    $oHWND = _IEPropertyGet($oIE, "hwnd")
    WinSetState ($oHWND, "", @SW_MAXIMIZE )
    ;lese Objecte aus
    $oForm = _IEFormGetCollection ($oIE, 0)
    $oUsername = _IEFormElementGetObjByName ($oForm, "sap-user")
    $oPassword = _IEFormElementGetObjByName ($oForm, "sap-password")
    $oSelect = _IEFormElementGetObjByName ($oForm, "sap-language")
    ;Eingabe User/PW/Language
    _IEFormElementSetValue ($oUsername, $sUsername)
    _IEFormElementSetValue ($oPassword, $sPassword)
    _IEFormElementOptionSelect ($oSelect, "German", 1, "byText")
    ;Go
    _IEFormSubmit ($oForm)

    [/autoit] [autoit][/autoit] [autoit]

    ;lade Produkte
    _IELoadWait($oIE)
    $link = "http://***"
    _IENavigate($oIE, $link)

    [/autoit]

    1. Problem dank th.meger gelöst, weiteres schildere ich in neuen post, THX

  • Usernamen aus Windows auslesen und in Reg schreiben ... mit Punkten zwischen Buchstaben

    • sc4ry
    • 23. April 2007 um 15:40

    ah, genau sowas habe ich gesucht, danke =)

    nur leider funzt es nicht =/

    also z.b.

    if @oslang = 0407 (bzw hab alle dt. codes ausprobiert) then
    ...
    else
    ...
    endif

    er führt aber immer die befehle nach else aus.

    PS: shit, hab den fehler gefunden. trotz dt. funktionen in windows, ist die systemsprache englisch =/
    dann kann ich mir das auch schenken

    PPS: wer suchet der findet ... @kblayout ist der pfad zum glück *g*

    daaaaaaaaaanke =)

  • ControlClick geht nicht oO

    • sc4ry
    • 23. April 2007 um 09:42

    es will mit den fragen einfach nicht abreißen. hab prob bei controlsend.
    und zwar habe ich keine ID sondern nur ClassNameNN, aber autoit reagiert darauf anscheinend nicht.

    code ist:

    Spoiler anzeigen
    [autoit]


    ;Eingabe UserID & PW
    $user = InputBox("UserID", "Bitte geben Sie Ihre UserID ein", "", "", 10, 10 )
    $pw = InputBox("Passwort", "Bitte geben Sie Ihr Passwort ein", "", "*", 10, 10)

    [/autoit] [autoit][/autoit] [autoit]

    ;Starte IE-Instanz
    #include <IE.au3>
    $oIE = _IECreate("http://hieristnormalerweiseeinlink=P")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ;Eingabe von UserID & PW
    ControlSend($oIE, "", "Internet Explorer_Server1", $user)
    ControlSend($oIE, "", "Internet Explorer_Server1", "{Tab}")
    ControlSend($oIE, "", "Internet Explorer_Server1", $pw)
    ControlSend($oIE, "", "Internet Explorer_Server1", "{Tab}")
    ControlSend($oIE, "", "Internet Explorer_Server1", "g")
    ControlSend($oIE, "", "Internet Explorer_Server1", "{ENTER}")
    _IELoadWait($oIE)

    [/autoit]

    Dateien

    controlsend.jpg 96,77 kB – 0 Downloads
  • Usernamen aus Windows auslesen und in Reg schreiben ... mit Punkten zwischen Buchstaben

    • sc4ry
    • 23. April 2007 um 08:25

    ich bins schon wieder. eine sache ist mir noch eingefallen.
    und zwar, sollte das teil evtl internationalen anklang finden, wär es natürlich besser, wenn die msgs auf englisch wären, sofern kein dt. system vorhanden ist.

    das steht irgendwo in der systemsteuerung, oder? kann man das easy auslesen?

    also wenn in systemsteuerung german, dann msg-dt, ansonsten msg-en?

  • PC säubern

    • sc4ry
    • 23. April 2007 um 08:22

    ich weiss nicht genau, was die datenträgerbereinigung nun genau alles säubert, aber das kannst du z.b. auch über die cmd ausführen.

    per sageset kannst du einstellen, was gesäubert werden soll (übrigens werden bei dem cmd-befehl alle platten bereinigt), und per sagerun kannst du es starten.

    genau zum nachlesen hier: http://support.microsoft.com/kb/315246/de

    dann könntest du theoretisch beide sachen über die cmd ausführen, denke das geht um einiges besser als ie + tastenklicks.

    darüber hinaus könnte man natürlich ein tool eines drittanbieters empfehlen, wie CCleaner, der das auch alles mit 1 klick macht.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™