kostenloser Webspace werbefrei: lima-city


Drucken mit AppData

lima-cityForumProgrammiersprachenBasic

  1. Autor dieses Themas

    marvinkleinmusic

    Kostenloser Webspace von marvinkleinmusic

    marvinkleinmusic hat kostenlosen Webspace.

    Hallo Zusammen,

    Ich stehe derzeit vor einem Problem.

    Ich möchte in meinen Programm den Nutzer gerne die Möglichkeit geben "das Programm" auszudrucken.

    Derzeit wird es noch über einen Button gesteuert , wird aber Später in die Menüleiste Integriert.

    Ich bin derzeit bei dem Punkt das ein Screenshot , nur vom Porgamm erstellt wird und dieser auch Speicherbar ist als .png.
    Private Sub print_Click(sender As System.Object, e As System.EventArgs) Handles print.Click
            Dim scr As Bitmap
            Dim w As Integer = Me.Width
            Dim h As Integer = Me.Height
    
            SaveFileDialog1.Filter = "Images|.png"
    
            scr = New Bitmap(w, h)
            Me.DrawToBitmap(scr, Rectangle.FromLTRB(0, 0, w, h))
            SaveFileDialog1.ShowDialog()
            If SaveFileDialog1.FileName = "" Then
                SaveFileDialog1.FileName = "Rechner.png"
            Else
                scr.Save(SaveFileDialog1.FileName)
                PrintDialog1.ShowDialog()
            End If
    
        End Sub


    Nun möchte ich aber das der Nutzer nicht die möglichkeit hat das Bild selber zu Speichern unter einem Pfad und Namen , sonder das Bild soll unter %appdata%/Umrechner als Dateiname print.png gespeichert werden.

    Nun tauchen die ersten Probleme auf:
    -Wie kann ich den Ordner in AppData erstellen?
    -Wie mche ich es das er es direkt dort Speichert , ohne eine SveFileDialog abfrage?
    -Wie rufe ich diese Datei Später beim Drucken auf?
    -Wie kann ich den Ordner inklusive Inhalt nach dem Drucken wieder löschen?


    LG
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Basic kann ich leider nicht, aber zu %APPDATA% kann ich ein paar Sachen sagen:

    Es handelt sich um eine Systemvariable die auf das AppData/Roaming Verzeichnis zeigt. Ich würde mal suchen ob du irgendwo in Basic Systemvariablen aufrufen kannst und dann kannst du den Pfad erzeugen.

    Vieleicht reicht ja auch schon der Pfad aufs Home-Verzeichnis (Ab Vista normalerweise: C:\Users\<Username>)

    In deinem Programm musst du dir halt den gesamten Pfad zur Datei halten. Dann kannst du ihn sicher auch zum Drucken verwenden.

    Vieleicht hilft dir das Verzeichnis %TEMP% auch weiter. In meinen Java-Programmen leg ich temporäre Sachen (Grafiken, Dokumente, etc.) da drin ab.
  4. burgi

    Co-Admin Kostenloser Webspace von burgi

    burgi hat kostenlosen Webspace.

    marvinkleinmusic schrieb:
    -Wie kann ich den Ordner in AppData erstellen?
    -Wie mche ich es das er es direkt dort Speichert , ohne eine SveFileDialog abfrage?
    -Wie rufe ich diese Datei Später beim Drucken auf?
    -Wie kann ich den Ordner inklusive Inhalt nach dem Drucken wieder löschen?

    Bin zwar auch kein wirklicher VB-Fuzzi, aber die Windows-API lässt sich Gott sei Dank aus allen gängigen Programmiersprachen gleichermaßen aufrufen :thumb:

    Anfangen würde ich damit, den gesamten Pfad für "AppData" zu bekommen, was sich mit Funktionsaufrufen in der Windows-API bewerkstelligen lässt:
    http://msdn.microsoft.com/en-us/library/windows/desktop/ms724373%28v=vs.85%29.aspx
    http://msdn.microsoft.com/en-us/library/windows/desktop/bb762181%28v=vs.85%29.aspx
    Damit lassen sich sämtliche Windows-spezifischen Pfade auslesen, siehe hier:
    http://p-s-soft.at/delphi/images/06_content_systempaths_screenshots_syspaths_xp.jpg
    Ordner erstellen sollte auch kein Problem darstellen:
    http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.fileio.filesystem.createdirectory.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1
    Angenommen, du willst einen Unterordner "MeinProgramm" erstellen, dann hängst du einfach an den AppData-Pfad, den du mit den Funktionen von vorhin rausbekommst einfach den String "MeinProgramm\" an, und rufst damit CreateDirectory auf.
    Wenn Du damit auch weißt, wo du das hinspeichern willst, benötigst du auch den SaveFileDialog nicht mehr.
    Wie man mit VB druckt lässt sich sicher auch unter Zuhilfenahme einer Suchmaschine rausfinden.
    Aufräumen wirst du dann auch mit div. Funktionsaufrufen, siehe hier
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!