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

Beiträge von vism

  • Word.au3 .Doc öffnen Zeile bearbeiten, speichern und drucken.

    • vism
    • 21. August 2012 um 11:00
    Zitat von water

    $oRange.Font.Size = n
    Link zu MSDN.


    Danke, alles ist geregelt nur eins noch, ich möchte das Dokument am Ende drucken, mehrmals allerdings, kann ich das irgentwie einstellen?

    [autoit]

    _Word_DocPrint($oDoc)

    [/autoit]


    hatte ich gefunden, damit komme ich aber nicht weiter, jedenfalls nicht was die Anzahl betrifft, meine sowas aber vorhin gelesen zu haben.

    € wie benutze ich denn $iCopies in dem Zusammenhang? Einfach im Dokument geht es leider nicht =(

  • Word.au3 .Doc öffnen Zeile bearbeiten, speichern und drucken.

    • vism
    • 21. August 2012 um 09:45
    Zitat von water

    Dann musst Du Dich vorab etwas mehr mit AutoIt beschäftigen ;)
    Wie man eine UDF einbindet und Funktionen aufruft, findest Du in den Tutorials bzw. der Hilfe.
    Für Deine Aufgabe sieh Dir in meiner UDF die Funktionen _Word_Create, _Word_DocOpen, _Word_DocPrint sowie mein oben gepostetes Code-Fragment an.

    Danke, kann ich auch formatieren? Also zentrieren und die Schriftgröße ändern? Italic Bold Underline etc. habe ich gefunden, aber size? oä? Oder Div? Oder so?

  • Word.au3 .Doc öffnen Zeile bearbeiten, speichern und drucken.

    • vism
    • 21. August 2012 um 08:13

    Erst einmal vielen Dank dafür,

    wie kann ich das nun einpflegen? Von der Word.au3 hatte ich schon keine Ahnung, wie ich jetzt dies zu handhaben habe, ist ebenfalls eher schwierig für mich =/
    Wie verweise ich denn auf das Dokument ? Und welcher Befehl ist da voranzustellen.

  • Word.au3 .Doc öffnen Zeile bearbeiten, speichern und drucken.

    • vism
    • 20. August 2012 um 16:55

    Hallo,

    Frage am Rande, wie kann ich mit Word (vll mit der word.au3) eine .doc-Datei öffnen, diese in den Zeilen 3, 5 und 9 editieren, also die Zeile komplett ersetzen und im Anschluss drucken.
    Wenn ich wenigstens bis zum editieren käme wäre ich schon glücklich, am besten ohne das es sichtbar ist, alles durch eine .cfg.
    Möglich müsste das ja sein oder?

    Habe leider nichts mit der word.au3 am Hut und blicke nicht durch wie man zB Zeilen editiert.

  • PrintMG.dll - Drucken mit AutoIT Anzahl einstellen

    • vism
    • 15. August 2012 um 12:54

    Hallo,

    habe eine Frage, mit folgender Schleife

    [autoit]

    For $Zahl = 1 to GUICtrlRead($Anzahl) Step 1
    _PrintStartPrint($hp)
    $title = "$Name"
    $title2 = $ArtikelBeschreibung
    $title3 = " " & GUICtrlRead($ArtNr)
    $title4 = GUICtrlRead($Lieferant) & " | " & GUICtrlRead($Datum)
    $twid = _PrintGetTextWidth($hp,$title)
    $tht = _PrintGetTextHeight($hp,$title)
    _PrintSetLineWid($hp,0)
    _PrintSetLineCol($hp,0xffffff)
    $pw = _PrintGetPageWidth($hp)
    $tx = $AbstY
    $ty = $AbstX
    _PrintSetFont($hp,'Arial',$ArtGR1,0,'bold,underline')
    _PrintText($hp,$title,$tx,$ty+$AbstY_1)
    _PrintSetFont($hp,'Arial',$ArtGR2,0,'bold')
    _PrintText($hp,$title2,$tx,$ty+$AbstY_2)
    _PrintSetFont($hp,'Arial',$ArtGR3,0,'bold')
    _PrintText($hp,$title3,$tx-320,$ty+$AbstY_3)
    _PrintSetFont($hp,'Arial',$ArtGR4,0,'bold')
    _PrintText($hp,$title4,$tx+$ZeileDTLL,$ty+$AbstY_4)
    _PrintEndPrint($hp)
    sleep($Wartezeit)
    Next
    _PrintDllClose($hp)
    iniwrite("config.ini","Lieferanten", "Last", GUICtrlRead($Lieferant))
    iniwrite("config.ini","Settings", "EtiZahlLast", GUICtrlRead($Anzahl))
    run("ITCEti.exe")
    Exit

    [/autoit]

    kann ich problemlos drucken, auch mehrmals, allerdings fehlen einzelne Teile bei dem teilweise 5, 6ten oder mehr Kopien.
    D.h. gebe ich als Stückzahl 1 ein, druckt er eine perfekt - 2,3 teilweise 4 auch wunderbar, doch dann passieren ab und an fehler, Teile fehlen, oder alles fehlt und es wird leer gedruckt, danach wieder normal.

    Woran könnte das liegen, kann ich mit printMG eine bessere Lösung finden ? Oder vll. sogar was ganz anderes um mit AutoIT zu drucken?.
    Wichtig wäre auf jeden Fall, dass wie dem Script zu entnehmen ist, ich Die einzelnen Teile verschieben kann.
    Sonst wird das nichts.

    Ich hoffe ihr versteht das Problem, hoffe ich könnt mir helfen.
    Danke im Voraus!

  • Alle Dateien öffnen

    • vism
    • 10. Juli 2012 um 08:34

    [Sorry für Doppelpost]
    Leider ist es nun so, (ich teste gerade), dass die XML-Datein zwar verändert werden aber nicht vollständig, insgesammt müssten 10 Änderungen vorgenommen werden, also diese beiden Werte, die geändert werden müssen existieren zusammen genommen, 10 mal - in jeder Datei.
    Der Rest sollte eigentlich soweit klappen, lediglich eine Schleife müsste gemacht werden, bzw. jede Datei müsste öfter geändert werden, kann ich das loopen?

  • Alle Dateien öffnen

    • vism
    • 9. Juli 2012 um 23:26
    Zitat von Protaris

    :D bei der For schleife muss man 1 und nicht -1 einztragen, es soll ja hochgezählt werden

    weiterhin benötigen einige Funktionen die Dateireferenz und andere den dateipfad. So geht es:

    [autoit]


    #include <File.au3>
    #include <Array.au3>
    local $i = 0
    local $srcFileList = _FileListToArray("C:\", "*.xml", 1)
    _ArrayDelete($srcFileList,0) ;0te Element beinhaltet die Aazhl der Dateien
    If UBound($srcFileList) <> 0 Then ;prüfen ob Array nicht leer ist

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

    For $elements In $srcFileList
    $path = "C:\" & $elements
    $File = FileOpen($path, 1)
    FileSetPos($File, 0, 0)
    For $i = 0 To _FileCountLines($path) Step 1
    $text = FileReadLine($File)
    If StringInStr($text, "<Land><![CDATA[F]]></Land>") > 0 then
    _FileWriteToLine($path, $i, "<Land><![CDATA[FR]]></Land>", 1)
    ElseIf StringInStr($text, "<LLand><![CDATA[F]]></Land>") > 0 then
    _FileWriteToLine($path, $i, "<Land><![CDATA[FR]]></Land>", 1)
    EndIf
    Next
    FileClose($File)

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

    Next
    EndIf

    [/autoit]
    Alles anzeigen


    Es passiert endlich das, was passieren soll, Problem jetzt aber, das ganze Zeilen entfernt werden, also wenn bspw. etwas vor der zu suchenden Wortkonstellation steht, wird das mit entfernt, also die ganze Zeile, kann man das nicht so machen, dass nur die Passage entfernt wird? Am Anfang, also das Ursprungsscript, - dort klappte das, hier sieht es ja eigentlich unten (optisch) nicht anders aus, aber klappen tut es nicht. =( Ich verzweifele noch! X(

  • Alle Dateien öffnen

    • vism
    • 9. Juli 2012 um 14:05
    Zitat von Protaris
    Spoiler anzeigen

    Na ja die For-Schleife sollte schon so aussehen :)

    [autoit]

    for $i=0 To _FileCountLines($File) Step -1

    [/autoit]

    und der Ordner darf natürlich nicht leer sein, deshalb könnte mannoch folgende Abfrage noch einbauen:

    [autoit]

    #include <File.au3>
    #include <Array.au3>
    local $i = 0
    local $srcFileList = _FileListToArray("C:\", "*.xml", 1)
    If UBound($srcFileList) <> 0 Then ;prüfen ob Array nicht leer ist
    _ArrayDelete($srcFileList,0) ;0te Element beinhaltet die Aazhl der Dateien
    For $elements In $srcFileList
    $File = FileOpen("C:\" & $elements, 1)
    FileSetPos($File, 0, 0)
    for $i = 0 To _FileCountLines($File) Step -1
    $text = FileReadLine($File, $i)
    If StringInStr($text, "<Land><![CDATA[F]]></Land>") <> 0 then
    _FileWriteToLine($File, $i, "<Land><![CDATA[FR]]></Land>", 1)
    elseif StringInStr($text, "<LLand><![CDATA[F]]></LLand>") <> 0 then
    _FileWriteToLine($File, $i, "<LLand><![CDATA[FR]]></LLand>", 1)
    EndIf
    Next
    FileClose($File)

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

    Next
    EndIf

    [/autoit]

    habe leider kein Autoit auf dem Firmenrechner :)

    Alles anzeigen

    Verständlich, alle auf der Arbeit aber am surfen. :D - Also - keine Fehler etc. aber auch keine Änderung habs mal nur mit C:\ versucht, auch in dem Fall keine Änderung innerhalb der XML, also als einzel ging es, wie oben bei meinem ursprünglichen Code, aber wenn ich mehrere ändern möchte, tut sich leider nichts. =(

  • Alle Dateien öffnen

    • vism
    • 9. Juli 2012 um 13:46
    Zitat von Protaris
    Spoiler anzeigen

    Fehler von mir bitte folgendes ändern:

    [autoit]

    for $i = 0 To _FileCountLines("test.xml")

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

    nach

    [autoit]

    for $i = 0 To _FileCountLines($File)

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

    und natürlich bei

    [autoit]

    $text = FileReadLine($File, $i)

    [/autoit]

    komma nicht vergessen :)

    Alles anzeigen

    Nun gut hab das jetzt so:

    [autoit]

    #include <File.au3>

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

    local $srcFileList = _FileListToArray("Dein Pfad", "*.xml", 1)
    For $elements In $srcFileList
    $File = FileOpen("Dein Pfad" & $elements , 1)
    FileSetPos($File,0,0)
    for $i = 0 To _FileCountLines($File)
    $text = FileReadLine($File, $i)
    If StringInStr($text, "<Land><![CDATA[F]]></Land>") <> 0 then
    _FileWriteToLine($File, $i, "<Land><![CDATA[FR]]></Land>", 1)
    elseif StringInStr($text, "<LLand><![CDATA[F]]></LLand>") <> 0 then
    _FileWriteToLine($File, $i, "<LLand><![CDATA[FR]]></LLand>", 1)
    EndIf
    Next
    FileClose($File)
    Next

    [/autoit]

    und natürlich stimmt noch immer etwas nicht, -

    [autoit]

    For $elements In $srcFileList
    For $elements In $srcFileList^ ERROR

    [/autoit]


    habe momentan auch dermaßen Kopfschmerzen, das ich solche Dinge wie das Komma, nicht sehe, bzw den Fehler nicht sehe, sorry.
    Ziemlich viel Stress auf der Arbeit heut. =/

    EDIT: Sorry, Pfad vergessen, nun gibt es keinen Fehler aber die Zeile wird nicht geändert, das F wird nicht durch FR ersetzt =/

  • Alle Dateien öffnen

    • vism
    • 9. Juli 2012 um 13:21
    Zitat von Protaris
    Spoiler anzeigen

    Ja sehr dreist :-)... Spaß

    [autoit]

    #include <File.au3>
    local $srcFileList = _FileListToArray("Dein Pfad", "*.xml", 1)
    For $elements In $srcFileList
    $File = FileOpen("Dein Pfad" & $elements , 1)
    FileSetPos($File,0,0)
    for $i = 0 To _FileCountLines("test.xml")
    $text = FileReadLine($File $i)
    If StringInStr($text, "<Land><![CDATA[F]]></Land>") <> 0 then
    _FileWriteToLine($File, $i, "<Land><![CDATA[FR]]></Land>", 1)
    elseif StringInStr($text, "<LLand><![CDATA[F]]></LLand>") <> 0 then
    _FileWriteToLine($File, $i, "<LLand><![CDATA[FR]]></LLand>", 1)
    EndIf
    Next
    FileClose($File)
    Next

    [/autoit]

    NICHT GETESTET! "Dein Pfad" kann auch aus einem Control kommen, z.B. ein input Feld

    Habe Dein Code für das ersetzen genommen... geht auch anders, aber müsste auch so Funktionieren

    Alles anzeigen

    Danke dafür,
    nunja folgendes:

    [autoit]

    $text = FileReadLine($File $i)
    $text = FileReadLine(^ ERROR

    [/autoit]


    - aber = da steht ja auch,

    [autoit]

    for $i = 0 To _FileCountLines("test.xml")

    [/autoit]


    bedeutet das nun, dass ich auch nur auf eine XML anwenden kann wenn diese nun so heißt? Oder fehlte da nun was?
    Sorry habe noch nie mit diesem FileRead gearbeitet bzw CountLines etc. =(

    Edit: - Danke auch an $var, bei deiner Lösung bekommen ich

    [autoit]

    If StringRight ($a_List[$i], 4) <> ".xml" Then ContinueLoop
    If StringRight ($a_List[^ ERROR

    [/autoit]


    Fehlen mir nun Includes? =/ Oder woran liegt das?

  • Alle Dateien öffnen

    • vism
    • 9. Juli 2012 um 12:45
    Zitat von Protaris

    Einfach dein destination folder die Dateien auslesen mit

    [autoit]

    local $srcFileList = _FileListToArray()

    [/autoit]

    und dann mit

    [autoit]

    For $elements In $srcFileList
    deine Funktion....
    Next

    [/autoit]

    ich hoffe Dein Problem richtig verstanden zu haben

    EDIT: ach ja in der For-Schleife musst Du jeweils den Pfad kompletieren um die Datei zu öffnen

    [autoit]

    $path = ("C:\" & $elements)
    $File = FileOpen($path)

    [/autoit]

    u.s.w.

    Alles anzeigen


    Danke schon mal für die Antwort, muss ich da jetzt noch was bestimmtes festlegen?
    Hättest du eventuell einen Beispielcode?, - mir geht es darum, (um die Frage etwas zu konkretisieren) dass ich bspw. 20 .xml Dateien habe, alle einen anderen Namen, in jeder dieser Dateien müssen bestimmte Wörter geändert werden, dies soll in allen XML-Daten erfolgen.
    Wäre es zu dreist nach einem Code zu fragen? =/

  • Alle Dateien öffnen

    • vism
    • 9. Juli 2012 um 10:03

    Guten Tag,

    ich habe ein Problem, bin derzeit auf der Arbeit habe deshalb auch keinen Code zur verfügung.
    Deswegen die Frage etwas unverschämt, ich müsste .XML daten ändern, bzw bestimmte Zeilen (bzw. Begriffe) müssten geändert werden.
    Als Beispiel, in der XML nach A suchen (nur ganze wörter) - und durch AB ersetzen, dann die XML neu speichern.
    Das wäre alles, weis leider nicht wie ich das bewerkstellige.
    Ich hoffe es gibt eine Lösung!
    Verzeihung, dass ich keinen Code zur verfügung habe!

    Edit: Soweit habe ich das Prob. gelöst aber nur für EINE Datei, ALLE Endungen sollen geändert werden.

    Script:

    [autoit]

    #Include <File.au3>

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

    for $i=0 To _FileCountLines("test.xml")
    $text=FileReadLine("test.xml",$i)
    If StringInStr($text,"<Land><![CDATA[F]]></Land>")<>0 then
    _FileWriteToLine("test.xml",$i,"<Land><![CDATA[FR]]></Land>",1)
    elseif StringInStr($text,"<LLand><![CDATA[F]]></LLand>")<>0 then
    _FileWriteToLine("test.xml",$i,"<LLand><![CDATA[FR]]></LLand>",1)
    EndIf
    Next

    [/autoit]
  • _WinAPI_MoveWindow + _WinAPI_SetWindowLong + $WS_POPUP = weißer Rand unten am Bildschirm - wie entfernen?

    • vism
    • 26. Dezember 2010 um 21:12

    Hallo zusammen, ich hab' ein kleines Problem.
    Ich möchte ein Prozess-Fenster aus dem Fenstermodus in den Vollbildmodus versetzen. Ein Pseudo-Vollbild sozusagen.
    Das funktioniert auch alles ganz gut soweit, jedoch habe ich nun im Pseudevollbild, einen weißen Rand an der unteren Seite des Bildschirms.
    Die Frage die ich nun habe ist > wie entferne ich diesen Rand?
    Overscaling will nicht. Also zB

    [autoit]

    _WinAPI_MoveWindow($win, 0, 0, $width_cfg + 6, $height_cfg + 20) ;-- Hier funktioniert leider nur das erhöhen der Breite

    [/autoit]


    Die Breite lässt sich mit + <value> scalen, die Höhe allerdings nicht, egal welchen Wert ich dabei verwende.

    Script:

    [autoit]


    [...]
    WinWait($title)
    $win = WinGetHandle($title)
    $width_cfg = iniread("config.ini", "", "width", "")
    $height_cfg = iniread("config.ini", "", "height", "")
    _WinAPI_MoveWindow($win, 0, 0, $width_cfg+6, $height_cfg) ;-- Hier funktioniert leider nur das erhöhen der Breite
    _WinAPI_SetWindowLong($win, $GWL_STYLE, $WS_POPUP)
    WinSetOnTop($title,"", 1)
    WinSetState($title, "", @SW_SHOW)
    Exit
    [...]

    [/autoit]
  • Runterzählen im Tooltip inkl Std, Min und Sec. Angabe.

    • vism
    • 12. Dezember 2010 um 16:51
    Zitat von funkey

    Hab auch noch was :D

    Spoiler anzeigen
    [autoit]

    Global $Zeit = IniRead("test.ini", "Counter", "Zeit", "13700")
    ;~ $11 = iniread("test.ini", "MSG", "11", "")

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

    HotKeySet("{Esc}", "_Exit")

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

    Local $h, $m, $s

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

    AdlibRegister("_Count", 1000)

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

    While 1
    Sleep(20000)
    WEnd

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

    Func _Count()
    $h = Floor($Zeit / 3600)
    $m = Floor(Mod($Zeit, 3600) / 60)
    $s = $Zeit - $h * 3600 - $m * 60

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

    ToolTip(StringFormat("%i Stunden, %i Minuten, %i Sekunden", $h, $m, $s))
    $Zeit -= 1
    EndFunc ;==>_Count

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

    Func _Exit()
    Exit
    EndFunc ;==>_Exit

    [/autoit]
    Alles anzeigen

    Erstmal danke an alle, ich hab mich jetzt für das Script von funkey entschieden, hab jetzt allerdings eine Frage, so funktioniert des alles bestens, doch es soll eine Aktion ausgeführt werden nachdem der Coutner auf 1 schlägt. Wie mache ich das nun? Finde den Einsprungspunkt nicht, wo der ich weitere Befehle anhänge. =(

  • Runterzählen im Tooltip inkl Std, Min und Sec. Angabe.

    • vism
    • 12. Dezember 2010 um 16:30

    Hi, mal wieder eher eine Frage als ein Problem, den Counter zu machen ist kein Problem, allerdings hätte ich anstatt nur einer Sekundenanzeige, eine Std, Min und Sekunden-Anzeige.

    Sprich anstatt > 3700 Sek verbleiben. >>> 1 Std.; 1 Min.; 40 Sek. verbleiben.

    Und so sah das bis jetzt aus:

    Spoiler anzeigen
    [autoit]

    $Zeit = iniread("test.ini", "Counter", "Zeit", "")
    $11 = iniread("test.ini", "MSG", "11", "")

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

    For $i = $Zeit To 1 Step -1
    ToolTip($11 & " " & $i & " sek.)", 1, 1)
    Sleep(1000)
    Next
    ;- [...]

    [/autoit]

    Hoffe jemand kann mir einen Rat geben.

    Edit: Bitte keine Funktion, der Counter soll in einer Funktion verbaut werden, brauche eine For - Schleife (soweit ich weis xD)
    Sobald der Counter auf 0 (sec) fällt soll die nächste Aktion ausgeführt werden. THX

    Thx > MFG*

  • While schleife + Counter

    • vism
    • 14. August 2010 um 14:05

    Dankeschön. =)

  • While schleife + Counter

    • vism
    • 14. August 2010 um 13:54

    Hallo, ich habe ein kurze Frage,

    Ich möchte eine Whileschleife 3mal durchlaufen lassen und dazu einen Counter laufen lassen.
    Sprich, Die Whileschleife wie gesagt 3mal + einen Tooltip der dann 1,2 und 3 anzeigt.

    Das man die Whileschleife mit Exitloop verlässt ist mir klar, allerdings weis ich nicht wie ich sie mehrmals durchlaufen lasse.
    Wenn ich mich nicht irre ging das mit nem' $i = "" Befehl oä. Bin mir da nicht sicher.
    Wie ich das mit nem' Tooltip verknüpfen kann, weis ich auch nich genau.^^

  • Eingabe der Inputbox, verschlüsselt in der .ini speichern. Bei Start wieder auslesen und wiedergeben.

    • vism
    • 6. Juni 2010 um 01:22
    Zitat von Zeitriss
    Spoiler anzeigen
    [autoit]


    #NoTrayIcon
    #include <GUIConstants.au3>
    #include <EditConstants.au3>
    #include <String.au3>

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

    GUICreate("Battlefield Heroes - Launcher",367,240)
    GUICtrlCreateLabel("Launcher - Starter - Updater - de_DE_Mod Scripted by VisM.OwnZ?>*",17,225)
    GUICtrlCreateLabel("E-Mail Adresse",75,99)
    GUICtrlCreateLabel("Acc: 1",5,115)
    GUICtrlCreateLabel("Acc: 2",5,145)
    GUICtrlCreateLabel("Passwort (max. 20 Zeichen)",205,99)
    $vlauncher = iniread("version.ini","Launcher","Version","")
    GUICtrlCreateLabel("Version: " & $vlauncher,40,203)
    $nameread = iniread("version.ini","login","email","")
    $pwread = iniread("version.ini","login","pw","")
    If Not $pwread = "" Then $pwread = _StringEncrypt(0,$pwread,"iwas")
    $nameread1 = iniread("version.ini","login","email2","")
    $pwread1 = iniread("version.ini","login","pw2","")
    If Not $pwread1 = "" Then $pwread = _StringEncrypt(0,$pwread1,"iwas")
    $save_name = GUICtrlCreateInput($nameread,40,112,150,20)
    $save_pass = GUICtrlCreateInput($pwread,195,112,150,20, $ES_PASSWORD)
    $save_name1 = GUICtrlCreateInput($nameread1,40,142,150,20)
    $save_pass1 = GUICtrlCreateInput($pwread1,195,142,150,20, $ES_PASSWORD)
    GuiSetState(@SW_Show)
    $Save = GUICtrlCreateButton("Speichern",40,175,150,20)
    $Game = GUICtrlCreateButton("Start (Acc1)",195,175,150,20)
    $Game1 = GUICtrlCreateButton("Start (Acc2)",195,200,150,20)
    GUICtrlCreatePic("GFX\Logo.jpg",0,0,367,97)
    GuiSetState(@SW_Show)

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

    $msg = 0
    While $msg <> $GUI_EVENT_CLOSE
    $msg = GUIGetMsg()
    Select
    Case $msg = $Save
    iniwrite("version.ini","login","email", GUICtrlRead($save_name))
    iniwrite("version.ini","login","pw", _StringEncrypt(1,GUICtrlRead($save_pass),"iwas"))
    iniwrite("version.ini","login","email2", GUICtrlRead($save_name1))
    iniwrite("version.ini","login","pw2", _StringEncrypt(1,GUICtrlRead($save_pass1),"iwas"))
    msgbox(0,"Gespeichert!","Die Daten wurden gespeichert." & @CRLF & "Das Spiel kann nun gestartet werden.")
    Case $msg = $Game
    run("Quask.exe")
    exit
    Case $msg = $Game1
    run("Queskex.exe")
    exit
    EndSelect
    WEnd

    [/autoit]
    Alles anzeigen


    Danke für die Mühe, jetz aber nochn Problem, die 0 wird nicht angezeigt, aber wenn man was eingegeben hatte und dann neugestartet hatte stimmte das 2te PW nichmehr bzw es war dann nich 8 zeichen sondern 25zeichen lang oä.
    €: ES_PASSWORD mal removed, - sieht so aus als würde er nur die kryptische-Zeile wiedergeben also halt nich wieder decrypten wie es der Fall bei der ersten PWzeile is - allerdings stelle ich keinen Unterschied zwischen den beiden fest...

    €2: So gehts anscheinend.

    [autoit]

    If Not $pwread = "" Then $pwread = _StringEncrypt(0,$pwread,"iwas")
    $nameread1 = iniread("version.ini","login","email2","")
    $pwread1 = iniread("version.ini","login","pw2","")
    If Not $pwread1 = "" Then $pwread1 = _StringEncrypt(0,$pwread1,"iwas")

    [/autoit]

    Vielen Danke nochmal an alle ! =)

  • Eingabe der Inputbox, verschlüsselt in der .ini speichern. Bei Start wieder auslesen und wiedergeben.

    • vism
    • 6. Juni 2010 um 00:56
    Zitat von Zeitriss

    Sorry ich habe in meinem Beispiel 2 Klammern vergessen wie ich oben schon rein Editiert habe. :whistling:
    Also müsste dein Script so aussehen:

    Spoiler anzeigen
    [autoit]


    #NoTrayIcon
    #include <GUIConstants.au3>
    #include <EditConstants.au3>
    #include <String.au3>

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

    GUICreate("Battlefield Heroes - Launcher",367,240)
    GUICtrlCreateLabel("Launcher - Starter - Updater - de_DE_Mod Scripted by VisM.OwnZ?>*",17,225)
    GUICtrlCreateLabel("E-Mail Adresse",75,99)
    GUICtrlCreateLabel("Acc: 1",5,115)
    GUICtrlCreateLabel("Acc: 2",5,145)
    GUICtrlCreateLabel("Passwort (max. 20 Zeichen)",205,99)
    $vlauncher = iniread("version.ini","Launcher","Version","")
    GUICtrlCreateLabel("Version: " & $vlauncher,40,203)
    $nameread = iniread("version.ini","login","email","")
    $pwread = _StringEncrypt(0,iniread("version.ini","login","pw",""),"iwas")
    $nameread1 = iniread("version.ini","login","email2","")
    $pwread1 = _StringEncrypt(0,iniread("version.ini","login","pw2",""),"iwas")
    $save_name = GUICtrlCreateInput($nameread,40,112,150,20)
    $save_pass = GUICtrlCreateInput($pwread,195,112,150,20, $ES_PASSWORD)
    $save_name1 = GUICtrlCreateInput($nameread1,40,142,150,20)
    $save_pass1 = GUICtrlCreateInput($pwread1,195,142,150,20, $ES_PASSWORD)
    GuiSetState(@SW_Show)
    $Save = GUICtrlCreateButton("Speichern",40,175,150,20)
    $Game = GUICtrlCreateButton("Start (Acc1)",195,175,150,20)
    $Game1 = GUICtrlCreateButton("Start (Acc2)",195,200,150,20)
    GUICtrlCreatePic("GFX\Logo.jpg",0,0,367,97)
    GuiSetState(@SW_Show)

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

    $msg = 0
    While $msg <> $GUI_EVENT_CLOSE
    $msg = GUIGetMsg()
    Select
    Case $msg = $Save
    iniwrite("version.ini","login","email", GUICtrlRead($save_name))
    iniwrite("version.ini","login","pw", _StringEncrypt(1,GUICtrlRead($save_pass),"iwas"))
    iniwrite("version.ini","login","email2", GUICtrlRead($save_name1))
    iniwrite("version.ini","login","pw2", _StringEncrypt(1,GUICtrlRead($save_pass1),"iwas"))
    msgbox(0,"Gespeichert!","Die Daten wurden gespeichert." & @CRLF & "Das Spiel kann nun gestartet werden.")
    Case $msg = $Game
    run("Quask.exe")
    exit
    Case $msg = $Game1
    run("Queskex.exe")
    exit
    EndSelect
    WEnd

    [/autoit]
    Alles anzeigen

    Dankeschön =) eine Frage hab ich allerdings noch, isses mir möglich dafür zu sorgen das keine "0" beim ersten Start gelesen wird? (Sprich: diese beim ersten Start im PW Feld angegeben wird...)

  • Eingabe der Inputbox, verschlüsselt in der .ini speichern. Bei Start wieder auslesen und wiedergeben.

    • vism
    • 6. Juni 2010 um 00:48
    Zitat von name22

    Erstens ist in diesem Script kein _StringEncrypt eingebaut und zweitens kommt bei mir kein Error...


    Das is ja auch das Script, was ich voher hatte^^

    Wie ichs richtich einbau weis ich ja nich, ich kanns ja nochmal so machen wie ichs hatte.

    Spoiler anzeigen
    [autoit]

    #NoTrayIcon
    #include <GUIConstants.au3>
    #include <EditConstants.au3>
    #include <String.au3>

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

    GUICreate("Battlefield Heroes - Launcher",367,240)
    GUICtrlCreateLabel("Launcher - Starter - Updater - de_DE_Mod Scripted by VisM.OwnZ?>*",17,225)
    GUICtrlCreateLabel("E-Mail Adresse",75,99)
    GUICtrlCreateLabel("Acc: 1",5,115)
    GUICtrlCreateLabel("Acc: 2",5,145)
    GUICtrlCreateLabel("Passwort (max. 20 Zeichen)",205,99)
    $vlauncher = iniread("version.ini","Launcher","Version","")
    GUICtrlCreateLabel("Version: " & $vlauncher,40,203)
    $nameread = iniread("version.ini","login","email","")
    $pwread = _StringEncrypt(0,iniread("version.ini","login","pw",""),"iwas")
    $nameread1 = iniread("version.ini","login","email2","")
    $pwread1 = _StringEncrypt(0,iniread("version.ini","login","pw2",""),"iwas")
    $save_name = GUICtrlCreateInput($nameread,40,112,150,20)
    $save_pass = GUICtrlCreateInput($pwread,195,112,150,20, $ES_PASSWORD)
    $save_name1 = GUICtrlCreateInput($nameread1,40,142,150,20)
    $save_pass1 = GUICtrlCreateInput($pwread1,195,142,150,20, $ES_PASSWORD)
    GuiSetState(@SW_Show)
    $Save = GUICtrlCreateButton("Speichern",40,175,150,20)
    $Game = GUICtrlCreateButton("Start (Acc1)",195,175,150,20)
    $Game1 = GUICtrlCreateButton("Start (Acc2)",195,200,150,20)
    GUICtrlCreatePic("GFX\Logo.jpg",0,0,367,97)
    GuiSetState(@SW_Show)

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

    $msg = 0
    While $msg <> $GUI_EVENT_CLOSE
    $msg = GUIGetMsg()
    Select
    Case $msg = $Save
    iniwrite("version.ini","login","email", GUICtrlRead($save_name))
    iniwrite("version.ini","login","pw", _StringEncrypt(1,GUICtrlRead($save_pass),"iwas")
    iniwrite("version.ini","login","email2", GUICtrlRead($save_name1))
    iniwrite("version.ini","login","pw2", _StringEncrypt(1,GUICtrlRead($save_pass1),"iwas")
    msgbox(0,"Gespeichert!","Die Daten wurden gespeichert." & @CRLF & "Das Spiel kann nun gestartet werden.")
    Case $msg = $Game
    run("Quask.exe")
    exit
    Case $msg = $Game1
    run("Queskex.exe")
    exit
    EndSelect
    WEnd

    [/autoit]

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™