Printfunktion

  • Hier der Code:

    Spoiler anzeigen
    [autoit]


    Func print()
    ;diese beiden Zeilen funktionieren, also Ausgabe in eine MsgBox
    $data_print = _GUICtrlListView_GetSelectedIndices($hListView)
    MsgBox(0, "Datensatz soll gedruckt werden", "Autor: " & _GUICtrlListView_GetItemText($hListView, Abs($data_print)) & @CRLF & "Autor: " & _GUICtrlListView_GetItemText($hListView, Abs($data_print), 1) & @CRLF & "ISBN: " & _GUICtrlListView_GetItemText($hListView, Abs($data_print), 7))

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

    ; Textdatei erstellen,funktioniert auch
    Local $file = FileOpen("test.txt", 1)
    ; Prüfen, ob Datei im Schreibmodus geöffnet ist
    If $file = -1 Then
    MsgBox(0, "Fehler", "Die Datei konnte nicht geöffnet werden.")
    Exit
    EndIf
    FileWrite($file, _GUICtrlListView_GetItemText($hListView, Abs($data_print)) & @CRLF)
    FileWrite($file, _GUICtrlListView_GetItemText($hListView, Abs($data_print), 1) & @CRLF)
    FileWrite($file, _GUICtrlListView_GetItemText($hListView, Abs($data_print), 7))
    FileClose($file)

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

    ; Textdatei aus drucken
    Local $file = FileOpenDialog("zu druckende Datei ", " ", "Textdokumente (*.txt) ", 1)
    If @error Then Exit

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

    Local $print = _FilePrint($file)
    If $print Then
    MsgBox(0, "Drucken ", "Die Datei wurde gedruckt. ")
    Else
    MsgBox(0, "Drucken ", "Fehler: " & @error & @CRLF & "Die Datei wurde nicht gedruckt. ")
    EndIf

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

    EndFunc ;==>print

    [/autoit]

    1.)
    Daten können in eine MSgBox ausgegeben werden: ja einwandfrei.

    2.)
    Textdatei kann erstellt werden: ja, einwandfrei.

    3.)
    Textdatei kann ausgedruckt werden: NEIN es komtm folgende Fehlermeldung:
    Fehler 10
    Die Datei wurde nicht gedruckt


    ABER WIESO und wie bekomme ich die Datei ausgedruckt??? :cursing::cursing::cursing:

    Das kann ja eine lange Nacht werden und dann morgen früh übermüdet.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

    2 Mal editiert, zuletzt von Alina (18. Dezember 2013 um 10:04)

  • howdy

    spontan würd ich raten das noch ein filehandle offen ist vom schreiben...
    funktioniert denn das drucken mit autoit mit einer vorher preperierten textdatei? also ohne das die datei von autoit erstellt wurde

    mfg
    sgtigram

    • Offizieller Beitrag

    Warum hast du FileClose auskommentiert? FileClose ist immer sinnvoll.

    Btw. Prindfunktion heißt Printfunktion :D

  • SgtIgram: negativ

    Raupi : FileClose ist jetzt nicht mehr auskommentiert, dennoch funktioniert es nicht.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

  • Habe es auf die wohl einfachste Weise gelöst.
    Nachdem die Datei erstellt ist mit
    ShellExecute("test.txt", "", @ScriptDir, "edit")
    Textdatei Ausgabe an Standartediter und dort brauch ich dann nur noch ganz normal Drucken. ;)
    Billig, aber eine Lösung !!!

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

    • Offizieller Beitrag

    Hi. Lina.

    Teste doch mal, ob bei dir der Print Befehl überhaupt etwas macht.
    _FilePrint ist nichts anderes als Print per ShellExecute auszuführen.

  • ShellExecute war vor dem zu Bett gehen die Lsg.

    Habe es so gelöst: ShellExecute("test.txt", "", @ScriptDir, "edit")

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

  • Hi,
    vielleicht so?

    [autoit]


    Func print2()
    Local $data_print = _GUICtrlListView_GetSelectedIndices($hListView)
    ;i Alle drei Einträge in "$output" speichern.
    Local $output = ''
    $output &= _GUICtrlListView_GetItemText($hListView, Abs($data_print)) & @CRLF
    $output &= _GUICtrlListView_GetItemText($hListView, Abs($data_print), 1) & @CRLF
    $output &= _GUICtrlListView_GetItemText($hListView, Abs($data_print), 7) & @CRLF
    ;i Alle drei Einträge in "$output" als MsgBox anzeigen.
    MsgBox(0, "Datensatz drucken", $output)
    ;i Ausgabe.txt-Datei öffnen.
    Local $file = FileOpen(@ScriptDir & '\output.txt', 1)
    If $file = -1 Then
    MsgBox(0, "Fehler", "Die Datei konnte nicht geöffnet werden.")
    Exit
    EndIf
    ;i Ausgabe.txt-Datei einmalig schreiben.
    FileWrite(@ScriptDir & '\output.txt', $output)
    ;i Ausgabe.txt-Datei schließen.
    FileClose(@ScriptDir & '\output.txt')
    ;i Ausgabe.txt-Datei drucken.
    Local $print = _FilePrint(@ScriptDir & '\output.txt')
    If $print Then
    MsgBox(0, "Drucken ", "Die Datei wurde gedruckt. ")
    Else
    MsgBox(0, "Drucken ", "Fehler: " & @error & @CRLF & "Die Datei wurde nicht gedruckt. ")
    EndIf
    EndFunc ;==>print2
    ; Ende

    [/autoit]