Bild speichern und zahl erhöhen

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von w-a-r-u-m.

    Bild speichern und zahl erhöhen

    Hallo!

    Hier ermal der Code:

    VB.NET-Quellcode

    1. If IO.File.Exists("C:\Screenshots\NICHT LOESCHEN.txt") = True Then
    2. PictureBox1.Image.Save(TextBox1.Text + "\Screenshot" + IO.File.ReadAllText("C:\Screenshots\NICHT LOESCHEN.txt") + ".bmp")
    3. IO.File.WriteAllText("C:\Screenshots\NICHT LOESCHEN.txt", IO.File.ReadAllText("C:\Screenshots\NICHT LOESCHEN.txt") + 1)
    4. Else
    5. IO.Directory.CreateDirectory("C:\Screenshots")
    6. IO.File.WriteAllText("C:\Screenshots\NICHT LOESCHEN.txt", 1)
    7. PictureBox1.Image.Save(TextBox1.Text + "\Screenshot" + IO.File.ReadAllText("C:\Screenshots\NICHT LOESCHEN.txt") + ".bmp")
    8. IO.File.WriteAllText("C:\Screenshots\NICHT LOESCHEN.txt", IO.File.ReadAllText("C:\Screenshots\NICHT LOESCHEN.txt") + 1)
    9. End If


    Ich hab mir ein kleines Screenshot Programm zusammengebaut und der speichert dann das bild automatisch falls die Checkbox 1 angekreuzt ist. Es speichert das Bild aus der PictureBox1 in dem in der TextBox1 angebenem Ordner und fügt dann "\Screenshot" hinzu und danach eine Zahl hinter das "\Screenshot" um zu verhindern das die Screenshots sich immer wieder gegenseitig überschreiben. Diese zahl ist in einer Textdatei gespeichert und erhöht sich nach jedem speichern um 1. Aber wenn ich das durchlaufen lasse steht in der Zeile:

    VB.NET-Quellcode

    1. PictureBox1.Image.Save(TextBox1.Text + "\Screenshot" + IO.File.ReadAllText("C:\Screenshots\NICHT LOESCHEN.txt") + ".bmp")

    Eine Ausnahme (Allgemeiner Fehler in GDI+.).

    Kann mir einer helfen?
    Schon mal danke im Voraus.

    MfG w-a-r-u-m
    Das wäre eine gute Idee aber dann steht da: "Das angegebene Pfadformat wird nicht unterstützt."
    Ich glaube das liegt an den Doppelpunkten...

    Ich habe auch es schon mit

    VB.NET-Quellcode

    1. PictureBox1.Image.Save(TextBox1.Text + "\Screenshot_" + Now.Date.ToString + ".bmp")

    versucht aber dann kommt da wieder: "Das angegebene Pfadformat wird nicht unterstützt."
    Oder hab ich deine Antwort falsch verstanden?

    Und eine ganz lang Version:

    VB.NET-Quellcode

    1. PictureBox1.Image.Save(TextBox1.Text + "\Screenshot_" + Now.Day.ToString + "." + Now.Month.ToString + "." + Now.Year.ToString + "--" + Now.Hour.ToString + "." + Now.Minute.ToString + "." + Now.Second.ToString + ".bmp")

    die geht auch nicht dann steht da wieder:"Allgemeiner Fehler in GDI+."

    MfG w-a-r-u-m

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „w-a-r-u-m“ () aus folgendem Grund: Rechtschreibfehler

    ich glaub ich bin zu blöd... xD

    Danke für die Blitzschnelle Antwort, aber entweder bin ich zu blöd (hier mein Code)

    VB.NET-Quellcode

    1. Dim MNow As String = Now.ToString()
    2. MNow = MNow.Replace(":", "")
    3. Dim DateiName As String = "\Screenshot_" & MNow
    4. PictureBox1.Image.Save(TextBox1.Text + DateiName + ".bmp")

    oder irgendwas stimmt nich denn da kommt wieder "Allgemeiner Fehler in GDI+" in der Zeile

    VB.NET-Quellcode

    1. PictureBox1.Image.Save(TextBox1.Text + DateiName + ".bmp")


    MfG w-a-r-u-m
    Die Probleme fangen dann erst an, wenn jemand versucht, mit einem String zu rechnen. (Kombi String und Integer, oder umgekehrt). Und da dies leider immer noch oft hier im Forum vorkommt, ist es sicher kein Fehler, darauf hinzuweisen.
    Ok danke das funktioniert!
    DANKE!

    Aber eine frage habe ich noch.
    Alsoo so sieht mein Code jetzt aus:

    VB.NET-Quellcode

    1. Dim Zeitstempel As String = Now.ToString.Replace(":", "_")
    2. PictureBox1.Image.Save(My.Computer.FileSystem.SpecialDirectories.MyPictures & "/Screenshot " & Zeitstempel & ".jpeg", Imaging.ImageFormat.Jpeg)


    Wieso kommt aber in desem Code:

    VB.NET-Quellcode

    1. Dim Zeitstempel As String = Now.ToString.Replace(":", "_")
    2. PictureBox1.Image.Save(TextBox1.Text & "/Screenshot " & Zeitstempel & ".jpeg", Imaging.ImageFormat.Jpeg)

    Die Ausnahme "Allgemeiner fehler in GDI+"?

    MfG w-a-r-u-m
    Hi
    Die Probleme fangen dann erst an, wenn jemand versucht, mit einem String zu rechnen. (Kombi String und Integer, oder umgekehrt). Und da dies leider immer noch oft hier im Forum vorkommt, ist es sicher kein Fehler, darauf hinzuweisen.
    Deshalb sollte man ja immer Option Strict On verwenden.

    lg SeriTools
    | Keine Fragen per PN oder Skype.

    Es geht! (?)

    Hey ich habs noch mal mit

    VB.NET-Quellcode

    1. Dim Zeitstempel As String = Now.ToString.Replace(":", "_")
    2. PictureBox1.Image.Save(TextBox1.Text & "/Screenshot " & Zeitstempel & ".jpeg", Imaging.ImageFormat.Jpeg)

    Versucht und jetzt gehts! Ich glaube es hatte etwas damit zu tun das vorher in der Textbox1 der Pfad "C:\Screenshots" stand der ja nicht existiert. Deshalb hab ich jetzt in das Form_Load Ereigniss geschrieben das es Der Pfad zu den Eigene Bilder sein soll. Man kann den Pfad aber auch mit einem FolderBrowserDialog ändern (oder Manuell). Naja dann wäre das Problem gelöst. Ich bedanke mich für alle Beiträge und wer den Code (kleiner Abschnitt der das Bild speichert) haben will: siehe oben ;)

    MfG w-a-r-u-m

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „w-a-r-u-m“ () aus folgendem Grund: Rechtschreibfehler