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. Ilse

Beiträge von Ilse

  • Run Problem

    • Ilse
    • 14. März 2014 um 12:42

    Hallo zusammen,

    dieser Abschnitt hat mich mal wieder sehr viele Nerven gekostet.
    Werde noch alles in Ruhe testen.

    Für die tollen Tipps
    herzlichen Dank an alle!

    Liebe Grüße
    Ilse ;)

  • Run Problem

    • Ilse
    • 13. März 2014 um 14:38

    Hey,

    das war doch nur ein Beispiel.
    Natürlich kenn ich ControlCommand usw.
    Darum geht es doch nicht.

    Zitat


    Sind das immer Mausklicks oder Ähnliches?


    Ja, aber auch
    Funcs, ShellExcecute, Inputboxen Splash...
    im Prinzip kleine "Programme"!

    Das mit der AutoItCompiler Alternative
    würde bedeuten:

    Meine ini greift auf au3 Files zu.
    die weden dann kompiliert und gestartet?

    Ich kopiere den Aut2Exe Ordner ins Scriptverzeichnis...?
    Oder ist es besser einfach alle au3 Files als exe zu machen
    und die exe Files mit der Ini aufzurufen?

    ;) Ilse

  • Run Problem

    • Ilse
    • 13. März 2014 um 13:46

    Es handelt sich um viele kleine Lösungen.
    z.B. Text-Anpassung
    ein kleiner Code

    Spoiler anzeigen
    [autoit]


    #include<txt-Func.au3>

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

    ShellExecute("Info.txt", "", @ScriptDir, "edit")
    MouseClick("left",1166,375,1)
    MouseClick("left",1129,585,1)
    MouseClick("left",1452,277,1)
    MouseClick("left",879,901,1)

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

    exit

    [/autoit]

    Dynamisch, weil ich das ganze ständig erweitern muß.
    Das Main-Programm ist fertig, es kommen aber immer weitere CodeTeile dazu,
    auf die das Main-Programm zugreift.
    Es werden lediglich au3 Files ergänzt und die Ini erweitert.

    Wenn ich das ganze mit #includes einbinden würde, müßte jedesmal am Hauptprogramm
    was geändert werden.

  • Run Problem

    • Ilse
    • 13. März 2014 um 13:08

    Huh...Der Sachverhalt.

    Kurz mit meinen Worten:

    1. Es gibt eine Ini mit Pfaden zu au3 Files
    2. Ein Hauptprogram (Main.exe) organisiert das ganze (greift auf Ordner, au3 Files und Masken zu.
    3. Eine Combobox liest die Ini und startet die Au3

    Das mit einzelnen au3 Files und der Ini ist sehr übersichtlich.
    Es kommen ständig weitere dazu und so ist das ganze gut zu organisieren.

    Ich wollte zuerst alle au3 Files in Exe Files kompilieren
    und dann später mit ShellExcecute starten...
    muß ich anscheinend auch so machen, oder hast du eine Idee?

    Liebe Grüße
    Ilse ;)

  • Run Problem

    • Ilse
    • 13. März 2014 um 12:28

    Hallo Aspirin Junkie,

    aber wie kriege ich das ganze rein,
    damit mein Script was mit AutoIt3ExecuteScript anfangen kann?
    Muß ich was includieren?
    Ich probiere schon den ganzen morgen.

    Ich habe mal zum Testen das gebastelt:
    Einfach beide Files ins Scriptverzeichnis!

    Wie "Schnitzel" schon gesagt hat: Die \ werden hier nicht angezeigt!

    Main.au3
    Au3File.au3

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Main", 615, 438, 192, 124)
    $btnAu3 = GUICtrlCreateButton("Start", 408, 112, 179, 65)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $btnAu3
    $ProgLink = @ScriptDir&""&"Au3File.au3"

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

    Run(@AutoItExe & ' /AutoIt3ExecuteScript ' & $ProgLink)
    EndSwitch
    WEnd

    [/autoit]

    Dann die Datei die geöffnet wird:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Files", 615, 438, 192, 124)
    $btnStart = GUICtrlCreateButton("Ein Au3-File", 32, 40, 155, 49)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $btnStart
    $ProgLink2 = @ScriptDir&""&"Main.au3"

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

    Run(@AutoItExe & ' /AutoIt3ExecuteScript ' & $ProgLink2)
    EndSwitch
    WEnd

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

    Wird die Main.au3 kompiliert dann startet nichts mehr!

    Dateien

    Main.au3 539 Byte – 453 Downloads au3File.au3 441 Byte – 400 Downloads
  • Run Problem

    • Ilse
    • 13. März 2014 um 11:13

    @ Aspirin Junkie
    ...mußte kurz weg...

    hier mal die Pfadangaben der Msgboxen der Main.exe
    sind identisch mit der Main.au3

    [autoit]


    MsgBox(0,"", @AutoItExe)
    MsgBox(0,"", @ScriptDir&""&"Meine.au3")
    MsgBox(0,"", @AutoItExe & ' /AutoIt3ExecuteScript ' & $ProgLink)

    [/autoit]

    1.

    Zitat


    c:\Users\PC\Autoit\2011\Main.exe


    2.

    Zitat


    c:\Users\PC\Autoit\2011\Meine.au3


    3.

    Zitat


    c:\Users\PC\Autoit\2011\Main.exe/Autoit3ExecuteScript
    c:\Users\PC\Autoit\2011\Meine.au3

    Was ich nicht verstehe:

    Zitat


    Keine Ahnung wie du darauf kommst, dass die Pfadangabe korrekt ist


    Wenn es doch Probleme mit den Pfaden gibt, dann sollte das ganze doch auch nicht
    mit den AU3 Files funktionieren. Es wird lediglich eine EXE gemacht!

    P.S.: Pfadnachtrag
    C:\Programm Files\Autoit3\autoit3.exe

  • Run Problem

    • Ilse
    • 13. März 2014 um 09:33

    Guten Morgen Aspirin Junkie,

    diese debug-Varianten habe ich alle hinter mir.

    Ich mache nicht sofort einen neuen Thread auf ohne mir Gedanken zu machen.
    Ich lasse mir zum deguggen immer MsgBoxen anzeigen,
    überprüfe alles mögliche...erst wenn ich nicht mehr weiterkomme....

    Also:
    1. Pfadangaben stimmen.
    2. Auch in den ExeDateien werde Pfade korrekt angezeigt
    3. Dateinamen hat keine Leerzeichen
    4. Rechte Maustaste RunScript (beide funktionieren)
    5. Scite (Main F5 Go) als au3 funktioniert
    6. Main.exe zeigt den korrekten Pfad zur ausführenden au3.Datei

    Keine Ahnung was ich noch debuggen kann

    Liebe Grüße
    Ilse ;)

  • Run Problem

    • Ilse
    • 13. März 2014 um 08:42

    Hallo,

    der Tag beginnt mal wieder mit einem Problem.

    Ich versuch das ganze mal zu erklären.

    1. Es gibt eine Main.au3
    2. Diese Main Datei hat einen Button START
    3. Mit diesem Button wird eine andere AU3 im Scriptverzeichnis gestartet.

    Soweit kein Problem.

    Aber dann:

    1. Ich kompiliere die Main.au3 (Main.exe)
    2. Der Button Start macht nun nichts mehr (Seltsam)

    Hier mal der Code des Buttons

    Spoiler anzeigen
    [autoit]


    Case $btnProgStart

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

    $ProgLink = @ScriptDir&""&"Meine.au3" ; hier ist das Script das gestartet werden soll
    Run(@AutoItExe & ' /AutoIt3ExecuteScript ' & $ProgLink)
    ;ShellExecute("Meine.au3.exe","",@ScriptDir,"open"); auch wenn das Script kompiliert wurde
    ;run(@ScriptDir &""&"Meine.au3","",@SW_MAXIMIZE)

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

    endif

    [/autoit]

    Beide Scripte funktionieren einzeln einwandfrei.

    Liebe Grüße
    ;) Ilse

  • Text aktualisieren

    • Ilse
    • 12. März 2014 um 17:05

    Nochmal
    Danke an alle.
    Ist manchmal ganz schön heftig, an was man alles denken muß.
    ;) Ilse

  • Text aktualisieren

    • Ilse
    • 12. März 2014 um 14:12

    Huh...

    ich hab's...

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    $Form1 = GUICreate("Form1", 615, 438, 192, 124)
    $Code = GUICtrlCreateEdit("", 64, 64, 353, 297)
    $btnOpen = GUICtrlCreateButton("Öffnen", 448, 64, 139, 25)
    $btnSave = GUICtrlCreateButton("Speichern", 448, 96, 139, 25)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $btnOpen

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

    Local $var = FileOpenDialog("OPEN", @ScriptDir & "", "Code (*.au3;*.txt)", 1)

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

    If @error Then
    MsgBox(4096, "", "Keine Datei(en) ausgewählt")
    Else
    $var = StringReplace($var, "|", @CRLF)

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

    Local $datei = FileOpen($var, 0)
    $inhalt_der_file = FileRead($datei)

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

    GUICtrlSetData($Code,$inhalt_der_file)

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

    EndIf
    ;FileClose

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

    Case $btnSave

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

    Local $datei = FileOpen($var, 2)
    FileWrite($var, GuictrlRead($Code))

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

    EndSwitch

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

    WEnd
    FileClose

    [/autoit]
  • Text aktualisieren

    • Ilse
    • 12. März 2014 um 14:03

    Ja, das habe ich versucht...klappt leider nicht!
    Ich habe mal ne kleine Gui gebastelt, damit man das mal testen kann.

    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    $Form1 = GUICreate("Form1", 615, 438, 192, 124)
    $Code = GUICtrlCreateEdit("", 64, 64, 353, 297)
    $btnOpen = GUICtrlCreateButton("Öffnen", 448, 64, 139, 25)
    $btnSave = GUICtrlCreateButton("Speichern", 448, 96, 139, 25)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $btnOpen

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

    Local $var = FileOpenDialog("OPEN", @ScriptDir & "", "Code (*.au3;*.txt)", 1)

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

    If @error Then
    MsgBox(4096, "", "Keine Datei(en) ausgewählt")
    Else
    $var = StringReplace($var, "|", @CRLF)

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

    Local $datei = FileOpen($var, 0)
    $inhalt_der_file = FileRead($datei)

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

    GUICtrlSetData($Code,$inhalt_der_file)

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

    EndIf

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

    FileClose

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

    Case $btnSave

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

    Local $datei = FileOpen($var, 2)
    FileWrite($var, GuictrlRead($Code))

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

    FileClose

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

    EndSwitch
    WEnd

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

    Hab auch alles mal angepasst für 1 File!

    Grüße
    Ilse

  • Text aktualisieren

    • Ilse
    • 12. März 2014 um 13:13

    Hallo Schnitzel,

    ja, das habe ich auch schon hinter mir.
    Irgendwie denke ich mal wieder falsch!

    [autoit]


    Local $datei = FileOpen($var,2)

    [/autoit]

    Hier wird beim öffnen kein Text in das Editfeld geschrieben!

    [autoit]


    Local $datei = FileOpen($var,0)

    [/autoit]

    Hier wird Text geschrieben, Ich kann also das Editfeld bearbeiten.

    Muß ich bei
    Case $btnSave
    FileOpen und FileClose erneut einbauen?

    Bin etwas durcheinander...

  • Text aktualisieren

    • Ilse
    • 12. März 2014 um 12:43

    Hallo,

    nach etlichen Fehlversuchen muß ich mich
    leider schon wieder geschlagen geben.

    Das Problem:

    1. Ich öffne eine Textdatei und lade den Inhalt in ein EDIT-Feld ($Code)
    Das klappt!
    2. Ich ändere bzw. lösche Teile des Textes und klicke auf speichern
    Das Problem:
    Der geänderte Text wird der original-Textdatei hinzugefügt.
    Wenn ich versuche FileDelete einzubauen erhalte ich eine Fehlermeldung.

    Mein Code

    Spoiler anzeigen
    [autoit]


    Case $bnFilecode

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

    Local $message = "Um mehrere Dateien auszuwählen, ist die Strg-Taste oder die Shift-Taste zu drücken."

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

    Local $var = FileOpenDialog($message, @ScriptDir & "", "Code (*.au3;*.txt)", 1 + 4)

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

    If @error Then
    MsgBox(4096, "", "Keine Datei(en) ausgewählt")
    Else
    $var = StringReplace($var, "|", @CRLF)
    MsgBox(4096, "", "Es wurde(n) " & $var & " ausgewählt")
    Local $datei = FileOpen($var, 0)
    $inhalt_der_file = FileRead($datei)

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

    GUICtrlSetData($Code,$inhalt_der_file)

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

    EndIf

    ; bis hierhin PRIMA: Die Datei wird im EDITFELD $Code angezeigt
    ;Ich ändere nun den Text (im EDITFELD) und klicke auf speichern

    Case $btnsave

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

    Msgbox(4096,"",$var); der Pfad incl. Dateiname wird gezeigt!
    ;FileDelete($var) ; ging nicht (Berechtigung....?)
    FileWrite($var, GuictrlRead($Code)); mein GUI EDITFELD heißt $Code
    ;Hier wird der Text der Datei hinzugefügt.
    FileClose

    [/autoit]


    Liebe Grüße
    Ilse ;)

  • FileDelete löscht nicht

    • Ilse
    • 12. März 2014 um 11:31

    Dank Dir.

    Alles Prima jetzt.

    Liebe Grüße
    Ilse ;)

  • FileDelete löscht nicht

    • Ilse
    • 12. März 2014 um 10:41

    Hallo Skerg,

    schön dass du dich meldest.
    Habe den Fehler gefunden.

    Darf ich dich nochwas fragen?

    Ich habe ein Gui EDITFELD ($Code)
    In dieses Feld möchte ich den Inhalt laden.

    Komme da mit GuictrlSetData nicht weiter

    Spoiler anzeigen
    [autoit]


    Case $bnFilecode

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

    Local $message = "Um mehrere Dateien auszuwählen, ist die Strg-Taste oder die Shift-Taste zu drücken."

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

    Local $var = FileOpenDialog($message, @ScriptDir & "", "Code (*.au3;*.txt)", 1 + 4)

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

    If @error Then
    MsgBox(4096, "", "Keine Datei(en) ausgewählt")
    Else
    $var = StringReplace($var, "|", @CRLF)
    MsgBox(4096, "", "Es wurde(n) " & $var & " ausgewählt")
    Local $datei = FileOpen($var, 0)

    GUICtrlSetData($Code,$datei)

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

    EndIf

    [/autoit]

    Vielleicht kannst du ja kurz drüberschauen.

    Liebe Grüße
    Ilse ;)

  • FileDelete löscht nicht

    • Ilse
    • 12. März 2014 um 09:48

    Hallo,

    Folgendes Problem.
    Ich klicke einen Button um eine Datei zu löschen.

    Alles scheint korrekt...

    1. Ich lasse mir den Pfad ausgeben
    2. Datei ist auch da...

    [autoit]


    $Datei = $sDataDir2&""&$sLink
    Msgbox(4096,"",$Datei); korrektes Verzeichnis, Pfad c:\...\...\Google.au3

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

    FileDelete($Datei) ; Die Datei bleibt im Ordner und wird nicht gelöscht!
    ; das geht auch nicht
    FileDelete($sDataDir2&""&$sLink)

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


    FileDelete($sDataDir2&"\"&$sLink)

    Habe keine Ahnung woran das liegt!

    ;) Ilse

  • Ini Neu Numerieren

    • Ilse
    • 11. März 2014 um 19:37

    Hallo Tweaky,

    hab's geschafft!

    Zitat


    mit IniDelete die komplette Sektion löschen

    Das war der entscheidende Tipp!

    ;) Liebe Grüße
    Ilse

  • Ini Neu Numerieren

    • Ilse
    • 11. März 2014 um 18:51

    Hallo,

    ich habe folgendes Problem.
    Ich muß meine INI per Code neu durchnumerieren.

    Meine INI sieht am ANFANG so aus:

    Spoiler anzeigen


    [Namen]
    1=Peter
    2=Hans
    3=Erika
    4=Paul
    5=Ida
    [Link]
    1=exe\1.au3
    2=exe\2.au3
    3=exe\3.au3
    4=exe\4.au3
    5=exe\5.au3

    Dann werden aber z.B. Einträge gelöscht oder neu hinzugefügt.
    Danach sieht meine INI so aus.
    Z.B, Key 1 und 4 werden gelöscht!

    Spoiler anzeigen


    [Namen]
    2=Hans
    3=Erika
    5=Ida
    [Link]
    2=exe\2.au3
    3=exe\3.au3
    5=exe\5.au3

    Nun hätte ich gerne, dass die Nummern nochmal stimmen.
    Es soll neu nummeriert werden: So sollte es aussehen

    Spoiler anzeigen


    [Namen]
    1=Hans
    2=Erika
    3=Ida
    [Link]
    1=exe\2.au3
    2=exe\3.au3
    3=exe\5.au3

    So hier mal mein Code:

    Spoiler anzeigen
    [autoit]


    $AIni = $sDataDir & "" & GUICtrlRead($idcbo) & ".ini" ; der kpl Pfad zur INI also c:\.......Programm.ini = OK!
    ;Msgbox(4096,"",$Aini)

    Local $var = IniReadSection($AIni, "Namen"); alle Einträge der Sektion lesen!
    If @error Then
    MsgBox(4096, "", "Es ist ein Fehler aufgetreten. Warscheinlich keine INI Datei vorhanden.")
    Else
    For $i = 1 To $var[0][0]
    MsgBox(4096, "", "Nr: " & $var[$i][0] & @CRLF & "Name: " & $var[$i][1]); Die jeweilige Zahl+Eintrag wird angezeigt=OK!
    ;also

    ;~ 2=Hans
    ;~ 3=Erika
    ;~ 5=Ida

    ;Die Zähler sollten nun neu geschrieben werden: 1,2,3...

    ;ab hier komme ich nicht mehr weiter!

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



    ;IniWrite($AIni, "Namen", $var[$i][$i], $var[$i][1])

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

    ;IniDelete($AIni, "Namen", $var[$i][0])
    ;IniWrite($AIni, "Namen", $var[$i][$i], "")
    ;$Zahl = $var[$i][0]+1
    Next
    ;MsgBox(4096, "",$Zahl )
    EndIf

    [/autoit]


    Liebe Grüße
    Ilse ;)

  • INI allgemeine Frage

    • Ilse
    • 10. März 2014 um 18:51

    Hallo,

    möchte abschliesend auch meinen Kommentar dazu abgeben.
    Ich arbeite so am liebsten.
    Gerade wenn man programmiert.
    Jedesmal Rechtsklick.... finde ich nicht so toll.
    Rechtsklick RunScript ist mir auch bekannt.

    Aber die Lösung alles in der INI zu machen das funktioniert jetzt prima.

    Nochmals herzlichen DANK
    Skerg ;)

  • INI allgemeine Frage

    • Ilse
    • 10. März 2014 um 12:34

    Hallo Skerg,

    genau das habe ich gesucht!

    SUPER!

    Vielen Dank!

    Liebe Grüße
    Ilse ;)

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™