Beiträge von hipfzwirgel

    So, nach längerer Recherche hab ich es selbst gelöst:

    vor dem Aufruf der 2. Gui(mit d. Func Regjump) die erste deaktivieren

    Code
                GUISetState (@SW_DISABLE, $HauptForm)
                Regjump()
                GUISetState (@SW_ENABLE, $HauptForm)


    die 2. Gui nicht mit exit sondern mit GuiDelete($2.Gui) schleißen und ganz wichtig: die Schleife mit ExitLoop beenden.


    Zu Beachten: die erste Gui ist dann, so lange die 2. Gui "läuft", nicht bedienbar. Das Vorgehen macht aber genau das, was ich brauche:klatschen::rock::party:

    Hallo BugFix,

    danke für die Antwort. Leider komme ich mit der dort angebotenen Hilfe nicht zurecht, bzw. schaffe ich es nicht sie umzusetzen. Im dortigen Beispiel werden die beiden GUi's in einer While Schleife "verarbeitet"
    Bei mir ist die Struktur etw. anders


    Code verkürzt:


    Ich habe 2 While-Schleifen. Hast du eine Idee wie ich das Umsetzen kann?

    Hallo Gemeinde,



    ich habe ein vermutlich kleineres Prob: Mein Programm besteht aus einer Gui($hauptform) darauf befinden sich 8 Buttons und eine Combobox. Die Button sollen verschiedene externe Proggis Starten oder Werte wie Reg-Keys oder Computername auslesen. Nun zum Prob: Wenn ich den Button 4 klicke( auslösen der Func Regjump() ) soll eine andere GUI($Form1) geöffnet werden damit dort der ausgelesene Wert(Reg-Key) angezeigt verändert und zurückgeschrieben werden kann. So weit so gut. Wenn ich die GUI($Form1) nach getaner Arbeit schliesse, beendet es mir das ganze Programm anstatt nur das Fenster. Wie kann ich das über die Funktion Regjump erzeugte Gui schliessen ohne das ganze Proggi zu beenden???:/

    Hallo Gemeinde,

    die UUID eines Rechners auslesen geht mit einer Batch-Datei recht simpel mir der Zeile <wmic path win32_computersystemproduct get uuid>


    Könnte mir bitte jemand sagen wie ich das mit Autoit hin bekomme? Ich habe die Funktion

    Code
    Func UUID()
    
    Local $oWMI = ObjGet("winmgmts:\\.\root\CIMV2")
    For $x In $oWMI.ExecQuery("SELECT UUID FROM Win32_computersystemproduct", "WQL", 0x30)
    Return $x.UUID
    Next
    
    EndFunc

    hier im Forum gefunden, die wenn ich sie ausführe nichts macht. D.h. nach dem ich auf den Button klicke wo ich sie hinterlegt habe passiert nichts. Eine von mir eingefügte MsgBox zw. zeile 5 u. 6 zur Ausgabe der Variable $x wird auch nicht angezeigt;(

    Hallo Water,

    noch ne Frage:

    ich habe in die Schleife folgenden Code eingefügt

    Code
    $oLine = _Word_DocAttach($oDoc, @CR)
            $oLine = $oRange.InsertBreak(6)
            $oLine = $oRange.InsertBreak(6)

    um zwischen den Bilde eine Zeile Abstand zu haben.


    wie kann ich das dann aber vor dem Seitenumbruch wieder entfernen? Gibt es so etwas wie DeleteBreak(6)?

    Hallo Water, es gibt doch noch eine Frage: Da ich bzgl. der Größenanpassung in der Hilfe leider nichts finden kann muss ich doch nochmal nachfragen.


    Das Script oder Word 2016 scheint ein Prob damit zu haben. Wenn ich die Werte für Hoehe und Breite(Umgerechnet) eingebe kommt bei der Größenanpassung nur Murks in Word an.
    Wenn ich die Hoehe und die Breite gleich groß eingebe, z.B. 10 cm und lasse umrechnen, kommt in Word eine Grafik mit den Werten 0,35cm H und 18,55cm Breite an. Hast du eine Idee
    woran das liegen könnte?

    Guten Morgen Water,

    vielen Dank für die Umrechnungsfunktionen. zum Einfügepunkt: Bei meinem Entwurf hatte ich es ja so realisiert, das die Schleife nach jedem 2. Bild direkt danach den Seitenumbruch setzte.
    Also immer 2 Bilder und 1 Seitenumbruch. Aber es würde auch so gehen. Dann füge ich die Schlussbemerkung eben nachträglich hinzu. Vielleicht fummle ich noch am Programm herum, sofern ich im
    Büro die Zeit dazu finde. Auf jeden Fall ist das Thema damit erledigt. Möge dir deine Hilfestellung mit reichlich Kindersegen und Seelenheil vergolten werden. Schönes WE, gesegneten Appetit und
    frohe Weihnachten, usw.;):D8o

    Hallo Water,

    zunächst vielen lieben Dank. Das Einfügen klappt beinahe so wie ich es benötige. Zwei Probs habe ich noch:

    Zeile 18 u. 19: sind das Pixel und wenn ja geht das dann auch i-wie mit cm o. mm?

    Zeile 20: Geht das auch mit dem Ende einer Seite oder nur mit dem Ende des Dokumentes(die Bilder werden eig. zwischen Einleitung und Schlussbemerkung eingefügt. Aktuell wird das erste Bild richtig eingefügt und ab dem 2. Bild geht es dann auf der nächsten Seite weiter)

    pasted-from-clipboard.png


    Kann auch damit zusammenhängen, dass das Script die Bildgröße(Global $Hoehe = "9,6 cm"; Global $Breite = "17,50 cm") nicht annimmt(siehe Prob 1;))

    Hallo Water,

    die Tastenkombis brauche ich auch für die Größenanpassung des eingefügten Bildes und für das Einfügen eines Seitenumbruchs nach jedem zweiten Bild oder geht das auch anders?
    Bis auf die immer mal wieder auftretenden Aussetzer funzt alles. Leider bekam ich deine Schleife nicht zum laufen. Es kommt immer der Fehler 3. Kann es sein, dass das Word UDF/Word Object Model
    Docx-Dateien nicht unterstützt?



    Das ist meine Funktion:


    Deine Funktion nach Anpassung des Bild-Pfades(ohne Seitenumbruch und Größenanpassung! Der Pfad in $Path1 ist im Übrigen korrekt.):


    Hallo Water,

    danke für deine Erklärung. Kannst du mir verraten ob es i-wie möglich ist, die Schleife so zu bauen, dass ich sie, wenn sie rummurkst, abbrechen kann. Es kommt immer wieder vor, dass das
    Senden von Tastenkombis fehlschlägt(Warum auch immer?) und etwas völlig anderes macht, als es soll. Der Beenden-Button hilft da nicht. Bei einem Durchgang mit 35 Bildern fing das Script an rum zu spinnen. =O
    Sah aus als würde der Rechner ausflippen.=O Mit Müh und Not, konnte ich es per Taskmanager killen.:whistling:

    Vielleicht kürzt dieser Ansatz die mögliche Hilfe ab:


    Code
    local $Path1 = ("C:\Users\MeinUser\Pictures\Screenpresso\FTS_D957_Advcd_Acous_Mgmt_cfg.png")    # Testpfad einer Screenshotdatei
    $fTest = _ClipPutFile($Path1)                                                                   # Laden der Datei in den Zwischenspeicher
    Local $Win_Fenster = WinGetHandle($Name)
    WinActivate($Win_Fenster)                                                                       # Aktivierung des Wordfensters
    Send("^v")                                                                                      # Einfügen des Bildes in Worddatei

    Mit dem Code gelingt es eine einzelne Datei in Word einzufügen. Könnte mir jetzt noch jemand sagen wie ich das in eine Schleife packe damit ich bei Buttonklick das nächste Bild im Verzeichnis laden kann?


    Hallo an alle Spezialisten,

    ich muss öfters anhand von selbst erstellten Screenshots eine Worddatei erstellen, in der ich die Bilder nacheinander(Strukturierte Liste = 1, 1.1, 1.2 etc.) einfügen muss.
    Um nicht jedes Bild einzeln via Word-Einfüge-Dialog auszuwählen und dann einzugfügen, hätte ich gerne ein Script dazu erstellt. Eine GUI mit Drei Buttons habe erstellt.
    Beim Klick auf den Button "Bilder einfügen" soll AutoIt also die Dateiliste der Sreenshots durchgehen und dann(ggf. via Clipboard) das jeweils nächste Bild in Word(Cursor wird vorher an die richtige Stelle gesetzt) einfügen.



    Die Dateiliste ist im Array gespeichert und ich habe sie auch zum Testen per _Arraydisplay ausgegeben. Ich scheitere leider daran;(;(;(, eine Schleife zu erstellen, die das Array durchgeht, mir das erste Bild in Word einfügt(im Prinzip wie die Datei im Explorer manuell rechts anklicken > kopieren dann in Word rechtsklick > einfügen) und den Zähler um eins hoch setzt. Dann nachdem ich den Cursor in Word an die nächste Stelle gesetzt habe, will ich die Funktion erneut ausführen(ButtonClick) und sie soll mir dann das nächste Bild einfügen, usw.