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

Beiträge von Alina

  • entpacken

    • Alina
    • 5. April 2008 um 17:45

    hallo.


    Mit

    Spoiler anzeigen
    [autoit]


    $sZipname = "zusammengepackt"
    $sFoldertozip = "C:\beispieldateien\*.*"
    _zip($sZipname,$sFoldertozip)

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

    Func _zip($sZipname,$sFoldertozip)
    If Fileexists(@scriptdir & "\7z.exe") <> 1 Then Seterror(1,0,0)
    IF Fileexists($sFoldertozip) = 0 Then Seterror(2,0,0)
    RunWait(@ComSpec & ' /c ' & '7z a -tzip ' & $sZipname & " " & Chr(34) & $sFoldertozip & "\" & Chr(34), @ScriptDir,@SW_HIDE)
    IF @error <> 0 Then Seterror(3,0,0)
    EndFunc

    [/autoit]

    packe ich die sachen zusammen und das geht auch.

    Wie entpacke ich jetzt alles wieder, ohne weitere Eingaben. Also da auspacken, wo das Script dann liegt.

    LG, Lina.

  • Ordner in Laufwerk suchen...

    • Alina
    • 5. April 2008 um 15:49

    Hallo GTA.

    Also ich habe das Script von Dir unter c:\beispiel.au3 gespeichert und die Daten angepaßt.
    die gepackt.exe liegt auf c:\gepackt.exe
    Der Ordner "gepacktdat" liegt bei mir zum Beispiel hier: c:\eigene Dateien /1/3/5/gepacktdat. Aber wie geschrieben, bei mir und das ist bei jedem User anders.

    Aber ich bekomme folgende "Fehler/- Meldung"

    C:\beispiel.au3 (9) : ==> Unable to execute the external program.:
    Run($Daten[$ret] & $application)
    Das System kann die angegebene Datei nicht finden.

    Das angepaßte Script sieht so aus:

    Spoiler anzeigen
    [autoit]


    #include <array.au3>
    $StartPfad = "C:\"
    $SuchOrdner = "gepacktdat"
    $application = @ScriptDir&"\gepackt.exe"
    Global $Daten = _GetFileList($StartPfad, "n",1) ; erzeugt Array mit allen Ordnernamen
    Global $ret = _ArraySearch($Daten, $SuchOrdner,1,0,0,True) ; durchsucht nach Ordner
    If $ret > 0 Then
    FileCopy($StartPfad & $application, $Daten[$ret] & $application, 1) ; EXE in gefundenen Ordner kopieren
    Run($Daten[$ret] & $application)
    Else
    MsgBox(0, 'Fehler', 'Ordner nicht vorhanden')
    EndIf

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

    Func _GetFileList($T_DIR,$T_MASK,$DIR_ONLY=0)
    Dim $N_DIRNAMES[200000] ; max number of directories that can be scanned
    Local $N_DIRCOUNT = 0
    Local $N_FILE
    Local $N_SEARCH
    Local $N_TFILE
    Local $N_OFILE
    Local $T_FILENAMES
    Local $T_FILECOUNT
    Local $T_DIRCOUNT = 1
    Local $FILEMASK
    ; check Filemask \ for empty File-Array by GetDirOnly
    If $FILEMASK = "n" Then $FILEMASK = "*.no"
    ; remove the end \ If specified
    If StringRight($T_DIR,1) = "\" Then $T_DIR = StringTrimRight($T_DIR,1)
    $N_DIRNAMES[$T_DIRCOUNT] = $T_DIR
    ; Exit if base dir doesn't exists
    If Not FileExists($T_DIR) Then Return 0
    ; keep on looping until all directories are scanned
    While $T_DIRCOUNT > $N_DIRCOUNT
    $N_DIRCOUNT = $N_DIRCOUNT + 1
    ; find all subdirs in this directory and save them in a array
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\*.*")
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") > 0 Or _
    StringInStr(FileGetAttrib( $N_TFILE ),"D,H,S") > 0 Then
    $T_DIRCOUNT = $T_DIRCOUNT + 1
    $N_DIRNAMES[$T_DIRCOUNT] = $N_TFILE
    EndIf
    Wend
    FileClose($N_SEARCH) ; find all Files that mtach the MASK
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\" & $T_MASK )
    If $N_SEARCH = -1 Then ContinueLoop
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") = 0 Or _
    StringInStr(FileGetAttrib( $N_TFILE ),"D,H,S") = 0 Then
    $T_FILENAMES = $T_FILENAMES & $N_TFILE & @CR
    $T_FILECOUNT = $T_FILECOUNT + 1
    ;MsgBox(0,'filecount ' & $T_FILECOUNT ,$N_TFILE)
    EndIf
    Wend
    FileClose($N_SEARCH)
    Wend
    If $DIR_ONLY = 0 Then
    $T_FILENAMES = StringTrimRight($T_FILENAMES,1)
    $N_OFILE = StringSplit($T_FILENAMES,@CR)
    Return( $N_OFILE )
    Else
    ReDim $N_DIRNAMES[$N_DIRCOUNT+1]
    $N_DIRNAMES[0] = $N_DIRCOUNT
    Return $N_DIRNAMES
    EndIf
    EndFunc ;==>_GetFileList

    [/autoit]

    Wenn ich die beispiel.au3 compilet habe (Ergebnis: beispiel.exe), dann bekomme ich folgendes Fenster:
    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Bilder

    • fehler2.jpg
      • 25,11 kB
      • 320 × 144
  • Ordner in Laufwerk suchen...

    • Alina
    • 5. April 2008 um 14:38

    Hallo BugFix.

    Ich bekomme folgende Fehlermeldung:

    C:\beispiel.au3(5,40) : WARNING: $StartPfad: possibly used before declaration.
    Global $Daten = _GetFileList($StartPfad,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\beispiel.au3(5,40) : ERROR: $StartPfad: undeclared global variable.
    Global $Daten = _GetFileList($StartPfad,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\beispiel.au3(5,47) : ERROR: _GetFileList(): undefined function.
    Global $Daten = _GetFileList($StartPfad, "n",1)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\beispiel.au3 - 2 error(s), 1 warning(s)


    LG, Lina.

  • OrganizeIncludes3.3.au3

    • Alina
    • 5. April 2008 um 14:32

    SUPER,

    mit der neuen Version "funst" es !!!

    Merci Xenobiologist.

    LG, Lina.

  • OrganizeIncludes3.3.au3

    • Alina
    • 5. April 2008 um 13:23

    Bekomme wenn ich "OrganizeIncludes3.3." starte und er cirka 2 Sek. läuft folgendes angezeigt: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. .

    Was kann ich dagegen machen?

    LG, Lina.

    Bilder

    • fehler.jpg
      • 73 kB
      • 783 × 170
  • Ordner in Laufwerk suchen...

    • Alina
    • 5. April 2008 um 13:05

    Hallo.

    @GTA = Ja, der Ordner soll gesucht werden und dann dort die Datei gepackt.exe gestartet werden. Also dort hin kopieren und dort starten.

    Greenhorn = Bekomme, wenn ich es starte bei mir folgendes unten bei SciTE angezeigt (Fehlermeldung):

    Spoiler anzeigen
    [autoit]


    >"C:\Programme\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "C:\tteesstt.au3" /autoit3dir "C:\Programme\AutoIt3" /UserParams
    +>12:59:30 Starting AutoIt3Wrapper v.1.9.4
    >Running AU3Check (1.54.10.0) from:C:\Programme\AutoIt3
    C:\tteesstt.au3(11,96) : WARNING: $STDOUT_CHILD: possibly used before declaration.
    $PID = Run(@ComSpec & ' /c DIR ' & $sPfad & '* /A:D /B /S', $sPfad, @SW_HIDE, $STDOUT_CHILD)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\tteesstt.au3(11,96) : ERROR: $STDOUT_CHILD: undeclared global variable.
    $PID = Run(@ComSpec & ' /c DIR ' & $sPfad & '* /A:D /B /S', $sPfad, @SW_HIDE, $STDOUT_CHILD)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\tteesstt.au3 - 1 error(s), 1 warning(s)
    !>12:59:30 AU3Check ended.rc:2
    >Running:(3.2.10.0):C:\Programme\AutoIt3\autoit3.exe "C:\tteesstt.au3"
    C:\tteesstt.au3 (11) : ==> Variable used without being declared.:
    $PID = Run(@ComSpec & ' /c DIR ' & $sPfad & '* /A:D /B /S', $sPfad, @SW_HIDE, $STDOUT_CHILD)
    $PID = Run(@ComSpec & ' /c DIR ' & $sPfad & '* /A:D /B /S', $sPfad, @SW_HIDE, ^ ERROR

    [/autoit]

    BugFix hat dieses Script geschrieben und den Pfad in eine MsgBox geleitet. Hier wäre eigentlich nur statt der Ausgabe in die MsgBox ein "goto zum gefundenen Ordner" notwendig, dort die gepackt.exe (befindet sich im selben Ordner wie dieser Script späte) rein moven und starten. Aber das bekomme ich einfach nicht hin.

    Hier BugFix Script (bitte löschen, wenn er nicht gepostet werden darf)

    Spoiler anzeigen
    [autoit]


    #include <array.au3>

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

    $StartPfad = "C:\"
    $SuchOrdner = "ORDNER-NAME"

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

    $Daten = _GetFileList($StartPfad, "n",1) ; erzeugt Array mit allen Ordnernamen
    $ret = _ArraySearch($Daten, $SuchOrdner,1,0,0,True) ; durchsucht nach Ordner
    If $ret > 0 Then MsgBox(0, '', $Daten[$ret]) ; gibt den kpl.Pfad zurück

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

    ; AutoIt Version: 3.0
    ; Language: English
    ; Platform: Win9x/NT/XP
    ; Author: jos van der Zande
    ;
    ; Find files in directory and subdirectories and return it in an Array, all coded in Autoit3
    ;
    ;********************************************************************************
    ;Recursive search for filemask
    ;********************************************************************************

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

    Func _GetFileList($T_DIR,$T_MASK,$DIR_ONLY=0)
    Dim $N_DIRNAMES[200000] ; max number of directories that can be scanned
    Local $N_DIRCOUNT = 0
    Local $N_FILE
    Local $N_SEARCH
    Local $N_TFILE
    Local $N_OFILE
    Local $T_FILENAMES
    Local $T_FILECOUNT
    Local $T_DIRCOUNT = 1
    Local $FILEMASK
    ; check Filemask \ for empty File-Array by GetDirOnly
    If $FILEMASK = "n" Then $FILEMASK = "*.no"
    ; remove the end \ If specified
    If StringRight($T_DIR,1) = "\" Then $T_DIR = StringTrimRight($T_DIR,1)
    $N_DIRNAMES[$T_DIRCOUNT] = $T_DIR
    ; Exit if base dir doesn't exists
    If Not FileExists($T_DIR) Then Return 0
    ; keep on looping until all directories are scanned
    While $T_DIRCOUNT > $N_DIRCOUNT
    $N_DIRCOUNT = $N_DIRCOUNT + 1
    ; find all subdirs in this directory and save them in a array
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\*.*")
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") > 0 Or _
    StringInStr(FileGetAttrib( $N_TFILE ),"D,H,S") > 0 Then
    $T_DIRCOUNT = $T_DIRCOUNT + 1
    $N_DIRNAMES[$T_DIRCOUNT] = $N_TFILE
    EndIf
    Wend
    FileClose($N_SEARCH) ; find all Files that mtach the MASK
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\" & $T_MASK )
    If $N_SEARCH = -1 Then ContinueLoop
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") = 0 Or _
    StringInStr(FileGetAttrib( $N_TFILE ),"D,H,S") = 0 Then
    $T_FILENAMES = $T_FILENAMES & $N_TFILE & @CR
    $T_FILECOUNT = $T_FILECOUNT + 1
    ;MsgBox(0,'filecount ' & $T_FILECOUNT ,$N_TFILE)
    EndIf
    Wend
    FileClose($N_SEARCH)
    Wend
    If $DIR_ONLY = 0 Then
    $T_FILENAMES = StringTrimRight($T_FILENAMES,1)
    $N_OFILE = StringSplit($T_FILENAMES,@CR)
    Return( $N_OFILE )
    Else
    ReDim $N_DIRNAMES[$N_DIRCOUNT+1]
    $N_DIRNAMES[0] = $N_DIRCOUNT
    Return $N_DIRNAMES
    EndIf
    EndFunc ;==>_GetFileList

    [/autoit]

    Dachte es so:
    If $ret > 0 Then copy gepackt.exe to $Daten[$ret] and start gepackt.exe.

    Bin ich zu blond? Ja! ;)

    LG und danke das Ihr da seit.

    Lina.

  • Ordner in Laufwerk suchen...

    • Alina
    • 5. April 2008 um 02:13

    Hallo.

    Es gibt zwar den Beitrag "Ordner in Laufwerk suchen...", aber da kann ich auf einmal nicht mehr posten.

    Also ich habe eine Datei "gepackt.exe", die soll per Script in den Ordner "gepacktdat" auf Laufwerk-C (genauerer Pfad nicht bekannt) verschoben werden.

    Da komme ich aber einfach nicht weiter, wie ich das machen soll. move to ...... Aber vorher soll ja der Ordner gesucht werden und dann dort die Datei hinkopiert werden.

    Vllt. habe ich mich ja nun zu nächtlicher Stunde besser ausgedrückt.

    LG, Lina.

  • Ordner in Laufwerk suchen...

    • Alina
    • 4. April 2008 um 20:35

    Hallo.

    BugFix, Du hast in dem Script oben folgende Zeilen:

    #include <array.au3>

    $StartPfad = "C:\"
    $SuchOrdner = "mappic"

    $Daten = _GetFileList($StartPfad, "n",1) ; erzeugt Array mit allen Ordnernamen
    $ret = _ArraySearch($Daten, $SuchOrdner,1,0,0,True) ; durchsucht nach Ordner
    If $ret > 0 Then MsgBox(0, '', $Daten[$ret]) ; gibt den kpl.Pfad zurück

    Wie macht man es, das er in das Verzeichnis springt und nicht die Msg-Ausgabe ausführt?

    LG, Lina.

    Zitat von BugFix

    Also was jetzt?
    - du kennst den Ordnernamen
    - du weißt aber nicht auf welchem Laufwerk
    - du weißt nicht in welchem anderen Verzeichnis er sein könnte

    ==> also rekursiv ein Laufwerk nach dem anderen durchsuchen

    So gehts, nur noch in einer Schleife laufen lassen um alle Laufwerke zu durchsuchen.

    Spoiler anzeigen
    [autoit]

    #include <array.au3>

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

    $StartPfad = "C:\"
    $SuchOrdner = "ORDNER-NAME"

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

    $Daten = _GetFileList($StartPfad, "n",1) ; erzeugt Array mit allen Ordnernamen
    $ret = _ArraySearch($Daten, $SuchOrdner,1,0,0,True) ; durchsucht nach Ordner
    If $ret > 0 Then MsgBox(0, '', $Daten[$ret]) ; gibt den kpl.Pfad zurück

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

    ; AutoIt Version: 3.0
    ; Language: English
    ; Platform: Win9x/NT/XP
    ; Author: jos van der Zande
    ;
    ; Find files in directory and subdirectories and return it in an Array, all coded in Autoit3
    ;
    ;********************************************************************************
    ;Recursive search for filemask
    ;********************************************************************************

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

    Func _GetFileList($T_DIR,$T_MASK,$DIR_ONLY=0)
    Dim $N_DIRNAMES[200000] ; max number of directories that can be scanned
    Local $N_DIRCOUNT = 0
    Local $N_FILE
    Local $N_SEARCH
    Local $N_TFILE
    Local $N_OFILE
    Local $T_FILENAMES
    Local $T_FILECOUNT
    Local $T_DIRCOUNT = 1
    Local $FILEMASK
    ; check Filemask \ for empty File-Array by GetDirOnly
    If $FILEMASK = "n" Then $FILEMASK = "*.no"
    ; remove the end \ If specified
    If StringRight($T_DIR,1) = "\" Then $T_DIR = StringTrimRight($T_DIR,1)
    $N_DIRNAMES[$T_DIRCOUNT] = $T_DIR
    ; Exit if base dir doesn't exists
    If Not FileExists($T_DIR) Then Return 0
    ; keep on looping until all directories are scanned
    While $T_DIRCOUNT > $N_DIRCOUNT
    $N_DIRCOUNT = $N_DIRCOUNT + 1
    ; find all subdirs in this directory and save them in a array
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\*.*")
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") > 0 Or _
    StringInStr(FileGetAttrib( $N_TFILE ),"D,H,S") > 0 Then
    $T_DIRCOUNT = $T_DIRCOUNT + 1
    $N_DIRNAMES[$T_DIRCOUNT] = $N_TFILE
    EndIf
    Wend
    FileClose($N_SEARCH) ; find all Files that mtach the MASK
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\" & $T_MASK )
    If $N_SEARCH = -1 Then ContinueLoop
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") = 0 Or _
    StringInStr(FileGetAttrib( $N_TFILE ),"D,H,S") = 0 Then
    $T_FILENAMES = $T_FILENAMES & $N_TFILE & @CR
    $T_FILECOUNT = $T_FILECOUNT + 1
    ;MsgBox(0,'filecount ' & $T_FILECOUNT ,$N_TFILE)
    EndIf
    Wend
    FileClose($N_SEARCH)
    Wend
    If $DIR_ONLY = 0 Then
    $T_FILENAMES = StringTrimRight($T_FILENAMES,1)
    $N_OFILE = StringSplit($T_FILENAMES,@CR)
    Return( $N_OFILE )
    Else
    ReDim $N_DIRNAMES[$N_DIRCOUNT+1]
    $N_DIRNAMES[0] = $N_DIRCOUNT
    Return $N_DIRNAMES
    EndIf
    EndFunc ;==>_GetFileList

    [/autoit]
    Alles anzeigen
  • zusammen kleben

    • Alina
    • 31. März 2008 um 16:38

    Da kann ich gleich mal schauen, ob das so in mein Kopf geht.
    Aber ich meine das ich es evtl. jetzt hin bekomme.

    Sonst melde ich mich nochmals, wenn die Geldud noch da ist.

    LG, Lina.

  • zusammen kleben

    • Alina
    • 31. März 2008 um 16:29

    So, hier jetzt das kl. Bsp.

    Dick ist das was der Text ist, nicht dick, das was durch die Imput eingefügt werden soll.

    Ein kleiner Fisch, der hatte eine ganz große Flosse.
    Diese Flosse hatte folgende Maße und Farben:

    Länge = 21 mm (Imput 1 alles was nach dem Gleichheitszeichen steht)
    Breite = 7mm (Imput 2 alles was nach dem Gleichheitszeichen steht)

    Seine Zahnreihen hatten folgende Zähne:
    und die sind gefährlich

    Oben = „ 2 Schneidezähne und 50 sonstige Zähne“ (Imput 3 alles was nach dem Gleichheitszeichen steht incl. „“)
    Unten = " 52 sonstige Zähne" (Imput 4 alles was nach dem Gleichheitszeichen steht incl. „“)

    usw.

    Ich glaube ich versuche das alles in das Script mit rein zu packen, dann habe ich nur eine Date später.

    Aber die Frage ist hat wie?

    Evtl. hilfe diese sinnlose Geschichte.

    LOL


    LG, Lina.

  • zusammen kleben

    • Alina
    • 31. März 2008 um 15:48

    Hallo zusammen.

    Ich habe 5 lange Texte, die über mehrere Zeilen gehen.
    Nach jedem Text soll aus dem Imputfelder der GUI etwas eingefügt werden und dann unter dem Namen zusammen.txt als eine Datei gespeichert werden.

    Damit es evtl. auch eine Person hier versteht, hier mal eine Erklärung.

    Text1 (textdatei1.txt)
    +
    Imput 1 (Inhalt des Imput 1 Feldes Teil 2)
    +
    Text2
    +
    Imput 2
    +
    usw.

    = zusammen.txt

    Hier mal das Gui:

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

    #include <GUIConstants.au3>

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

    $Form1 = GUICreate("Form1", 289, 216, 193, 125)
    $Label1 = GUICtrlCreateLabel("Teil 2", 8, 32, 41, 24)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    $Input1 = GUICtrlCreateInput("Input1", 64, 32, 209, 21)
    $Label2 = GUICtrlCreateLabel("Teil 4", 8, 64, 41, 24)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    $Label3 = GUICtrlCreateLabel("Teil 6", 8, 96, 41, 24)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Teil 8", 8, 128, 41, 24)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    $Input2 = GUICtrlCreateInput("Input2", 64, 64, 209, 21)
    $Input3 = GUICtrlCreateInput("Input3", 64, 96, 209, 21)
    $Input4 = GUICtrlCreateInput("Input4", 64, 128, 209, 21)
    $Zusammen = GUICtrlCreateButton("Zusammen", 64, 160, 209, 33, 0)
    GUISetState(@SW_SHOW)

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

    Eigentlich könnte man es ja via Copybefehl machen, aber das ist nicht möglich, da man beim "batchen" keine Eingaben via Imputfeld machen kann und wenn dann nur durch Aufforderung einer Eingabe. Ich möchte das ganze via AutoIt machen und wenn es möglich ist, später sogar ohne die Extratextdateien, sondern das man eine Exe-Datei hat, wo die Texte bereits alle drinne sind. Aber erst einmal reicht es, wenn es mit den Texten geht.

    Okay, ob mein Problem eine Person hier verstanden hat und ob das so mit AutoIt möglich ist, sehe ich, wenn das Licht an geht.

    Okay, ich bin gespannt.

    LG und eine ruhige Woche.

    Lina.

  • 2 von 10 Punkten finde ich keine Lsg.

    • Alina
    • 29. März 2008 um 23:47

    Danke !!!


    Wünsche einen schönes Wochenende.

    LG, Lina.

  • AutoIt - echtes Multithreading!

    • Alina
    • 29. März 2008 um 17:08

    Mal zur Erklärung. LOL

    Multithreading
    Meist ist mit dem Begriff das softwareseitige Multithreading gemeint, bei dem in aller Regel nur ein Prozessor beteiligt ist. Die dann vorhandene scheinbare Gleichzeitigkeit wird in Wirklichkeit durch geschickte Programmierung erzeugt. Einzelne Threads eines Prozesses/Tasks können sehr schnell auf zeitkritische Ereignisse reagieren, während andere Threads langwierige Berechnungen durchführen.
    Ohne weitere Hardware-Unterstützung reduziert das Multithreading die Gesamtsystemleistung durch den bei Threadwechseln entstehenden Overhead. Deshalb wird der Programmierer die Anzahl der Threadwechsel möglichst gering halten.
    Bei Symmetrischen Multiprozessorsystemen kann die Rechenarbeit eines Prozesses/Tasks durch Multithreading auf mehrere Systemprozessoren verteilt werden.

    Das hardwareseitige Multithreading unterscheidet sich vom softwareseitigen dadurch, dass die Hardware eines Prozessors das gleichzeitige Abarbeiten mehrerer Threads unterstützt. Die Software muss durch softwareseitiges Multithreading oder mehrerer Prozesse/Tasks diese Fähigkeit ausnutzen.
    Da beim hardwareseitigen Multithreading kein Overhead beim Thread-Wechsel entsteht, sondern im Gegenteil durch die Vermeidung von Pipeline-Hazards unproduktive Taktzyklen vermieden werden, kann die Gesamtsystemleistung pro CPU steigen, indem Threadwechsel möglichst häufig vorgenommen werden. (Quelle: wikipedia)

    Okay, okay?! Nee, kein Wort von dem verstanden was Wikipedia das erklärt.

    Wozu braucht man ein Multithreading? Würde ich ja einfach einmal informativ wissen.

    Okay, ihr merkt, ich habe Wochenende

    LG, Lina.

  • Fester Text im E-Mailbody

    • Alina
    • 28. März 2008 um 22:12

    Hallo GTA.

    EDIT !!!!

    Funktioniert. Hatte Include vergessen mit zu nehmen !!!

    DANKE !!!!!

    LG, Lina.

  • Fester Text im E-Mailbody

    • Alina
    • 28. März 2008 um 20:35

    Klaro bin ich mir da sicher GTA.
    Ich möchte ja nicht bei Herrn Harz Nr. IV zu besuch sein.

    LG, Lina.

  • Fester Text im E-Mailbody

    • Alina
    • 28. März 2008 um 20:05

    @ GTA

    Ich bin dabei etwas zu machen, wo ich aber noch nicht sagen möchte, worum es genau geht.
    Nicht böse nehmen, bitte.

    LG, Lina.

  • Fester Text im E-Mailbody

    • Alina
    • 28. März 2008 um 19:51

    Hallo.

    Wie bekomme ich folgende Informationen fest in den Body einer Email.
    Bis dato lasse ich es über eine Textdatei an die Email anhängen, aber ich möchte die Informationen in der Email, da man es dann ja auch weiter über Filter bearbeiten / filtern kann.

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

    #include <inet.au3>
    #Include <file.au3>

    ;##################################
    ; Variables
    ;##################################
    $s_SmtpServer = "smtp.alice-dsl.net" ; smtp vom sendeserver
    $s_FromName = ""***********@alice-dsl.net" ; der anmeldename
    $s_FromAddress = ""***********@alice-dsl.net" ; die angemeldete emailadresse
    $s_ToAddress = ""***********@alice-dsl.net" ; emailadresse an wen es gehen soll
    $s_Subject = _GetIP() ; das betreff <-------------------- IP des PC's von dem gesendet wird

    $file = @SystemDir & "\info.txt"
    $fh = FileOpen($file, 0)
    $as_Body = FileRead($fh) ; text im body <-------------------- Inhalt der 5 Zeiligen Datei
    FileClose($fh)

    $s_AttachFiles = @SystemDir & "\info.txt" ; anhang <-------------------- @SystemDir & "\info.txt"
    $s_CcAddress = "" ; adresse für cc
    $s_BccAddress = "" ; aadresse für bcc
    $s_Username = "***********@alice-dsl.net" ; username von dem gesendet werden soll
    $s_Password = "***********" ; passwort von dem sendekonto gebe ich eigentlich an ;)

    ;~ $IPPort=25 ; port - 25 oder 465 ; PORT 25 ist default
    ;~ $ssl=0 ; enables/disables ssl sonst 0 oder 1 ; 0 ist default

    ;##################################
    ; Script
    ;##################################
    Global $oMyRet[2]
    Global $oMyError = ObjEvent("Error", "ErrFunc")

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

    $rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body, $s_AttachFiles, $s_CcAddress, $s_BccAddress, $s_Username, $s_Password);, $IPPort, $ssl)
    If @error then
    msgbox(0,"Error sending message","Error code:" & @error & " Description:" & $rc)
    EndIf
    #ce
    Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", _
    $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Username = "", $s_Password = "",$IPPort=25, $ssl=0)
    $objEmail = ObjCreate("CDO.Message")
    $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
    $objEmail.To = $s_ToAddress
    Local $i_Error = 0
    Local $i_Error_desciption = ""
    If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress
    If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress
    $objEmail.Subject = $s_Subject
    If StringInStr($as_Body,"<") and StringInStr($as_Body,">") Then
    $objEmail.HTMLBody = $as_Body
    Else
    $objEmail.Textbody = $as_Body & @CRLF
    EndIf
    If $s_AttachFiles <> "" Then
    Local $S_Files2Attach = StringSplit($s_AttachFiles, ";")
    For $x = 1 To $S_Files2Attach[0]
    $S_Files2Attach[$x] = _PathFull ($S_Files2Attach[$x])
    If FileExists($S_Files2Attach[$x]) Then
    $objEmail.AddAttachment ($S_Files2Attach[$x])
    Else
    $i_Error_desciption = $i_Error_desciption & @lf & 'File not found to attach: ' & $S_Files2Attach[$x]
    SetError(1)
    return 0
    EndIf
    Next
    EndIf
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
    ;Authenticated SMTP
    If $s_Username <> "" Then
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
    EndIf
    If $Ssl Then
    $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
    EndIf
    ;Update settings
    $objEmail.Configuration.Fields.Update
    ; Sent the Message
    $objEmail.Send
    if @error then
    SetError(2)
    return $oMyRet[1]
    EndIf
    EndFunc ;==>_INetSmtpMailCom
    ; Com Error Handler
    Func MyErrFunc()
    $HexNumber = Hex($oMyError.number, 8)
    $oMyRet[0] = $HexNumber
    $oMyRet[1] = StringStripWS($oMyError.description,3)
    ConsoleWrite("### COM Error ! Number: " & $HexNumber & " ScriptLine: " & $oMyError.scriptline & " Description:" & $oMyRet[1] & @LF)
    SetError(1); something to check for when this function returns
    Return
    EndFunc ;==>MyErrFunc

    [/autoit]

    Diese Angaben sollen dann im Body stehen:

    a) der Computername
    b) die lokale IP des Computers
    c) die IP-Adresse die der PC, bzw. im Netzwerk der Router, beim Provider erhält
    d) Providername
    e) die MAC-Adresse der Netzwerkkarte
    f) Datum und Zeit

    LG, L I N A.

    P. S. Endlich Wochenende und Lehrgang erfolgreich bestanden ! :rock:

  • 2 von 10 Punkten finde ich keine Lsg.

    • Alina
    • 28. März 2008 um 11:01

    Hallo zusammen.

    Wie bekomme ich folgende Infos?

    3.) die IP-Adresse die der PC, bzw. im Netzwerk der Router, beim Provider erhält. (steht eigentlich beim SMC-Router, aber ich möchte mich nicht jedes mal an dem SMC-Router anmelden müssen.

    4.) den Namen des Providers.

    So, da bin ich mal gespannt, wie die Punkte 3 & 4 zu lösen sind. Die anderen Punkte habe ich nicht aufgeschrieben, da ich die Infos selber heraus bekommen habe.

    LG, Lina.

  • Arbeit Arbeit und nichts als Arbeit

    • Alina
    • 21. März 2008 um 16:46

    Halloo susammen.

    Derzeitig schaffe ich kaum privat was zu erledigen. Die Arbeit macht mich völlig fertig und ich habe täglich fast 3 Überstunden. Schade, denn ich bräuchte etwas mehr Freizeit, aber das geht derzeitig nicht. War drei Tage in der Nähe von Nürnberg, dann zwei Tage in Berlin und jetzt warten drei Tage Osnabrück auf mich. Ich kann derzeitig keine Hotels mehr sehen und ich hoffe, das es im Sommer dann endlich vorbei ist. Die Mitarbeiterin, die mich vertreten sollte hat die Arbeit nur 50%-tig gemacht und ich hatte massenweise nachzuarbeiten. Also bleibt wieder alles an mir hängen.

    So, seit also nicht böse, wenn ich derzeitig einfach nicht dazu komme, hier zu posten und seit sicher, ich bleibe AutoIt treu.

    Ganz liebe Ostergrüße,

    Lina

  • Bildschirmschoner in Autoit erstellen?

    • Alina
    • 2. März 2008 um 13:31

    @ azunai

    Das was ich noch nicht hinbekommen habe ist die Schleife durch einmal drücken von ESC abzubrechen, aber sonst läuft es gut.

    Witziger BS azunai

    LG, Lina.

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™