2 Fragen

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Alteran.

    Hi wieder ich :S



    Ich habe 2 Fragen und hoffe ihr könnt mir weiterhelfen.

    1) Ich hab ein Probramm mit einem Button. Der Button löst "sendkeys.send("{PRTSC}"), also printscreen aus.

    Dieses bild ist jetzt ja in der zwischenablage gespeichert wie kann ich dass jetzt im dokumenteordner speichern?

    2) Wie verschickt man "Email Anhänge"? (ueber smtp?)





    Mein code zum mails verschicken:



    VB.NET-Quellcode

    1. Dim MymailMessage As New MailMessage
    2. Try
    3. MymailMessage.From = New MailAddress("berken.sayilir@gmail.com")MymailMessage.To.Add("berken4133@hotmail.com")
    4. MymailMessage.Subject = TextBox2.Text
    5. MymailMessage.Body = TextBox1.Text
    6. Dim SMTP As New SmtpClient("smtp.gmail.com")
    7. SMTP.port = 587SMTP.EnableSsl = True
    8. SMTP.Credentials = New System.Net.NetworkCredential("berken.sayilir@gmail.com", "XXX")
    9. SMTP.Send(MymailMessage)TextBox1.Text = ""
    10. MsgBox("Feedback erfolgreich gesendet!", MsgBoxStyle.Information, "Information")
    11. Catch ex As Exception
    12. End Try
    "I think Microsoft has abused the Windows brand so much that it has lost its cachet."
    Paul Thurrott
    Hey. Danke aber ich werde aus beidem irgendiew nicht schlau.

    zu 1. Kannst du mir da ein Beispiel geben für z.B "text.txt" im "dokumentenordner"?

    zu 2. komm ich 100% ned draus. :o ja ich will das der timer jede 30sec einen screetshot macht und ihn im dokumentenordner speichert.



    Sry, wenn das jetzt so nach dem Typ "Ich will den Code, schreib ihn mir" kling aber ich blick da echt nicht durch..
    "I think Microsoft has abused the Windows brand so much that it has lost its cachet."
    Paul Thurrott
    Hi

    Zu 1. (das war der Screenshot):

    VB.NET-Quellcode

    1. Dim S As Screen = Screen.PrimaryScreen
    2. Dim Bmp As Bitmap, G As Graphics
    3. Bmp = New Bitmap(S.Bounds.Width, S.Bounds.Height)
    4. G = Graphics.FromImage(Bmp)
    5. G.CopyFromScreen(S.Bounds.Left, S.Bounds.Top, 0, 0, S.Bounds.Size) 'Hier wird der Screenshot gemacht
    6. Bmp.Save(Environment.GetFolderPath(Environment.SpecialFolders.MyDocuments) & "\Screen.png") 'Und hier abgespeichert
    7. G.Dispose()
    8. Bmp.Dispose()


    Zu 2.:

    Einfach im Bereich des Try-Catch-Blocks diese Zeile einfügen (aber bitte bevor die Email abgeschickt wird (vor dem Send)):

    VB.NET-Quellcode

    1. Msg.Attachments.Add(New Attachment(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Text.txt")


    Was war da jetzt so schwer??

    lg
    Wenn dein Anbieter das Versenden über einen SMTP-Server erlaubt dann ist das kein Problem:

    VB.NET-Quellcode

    1. Imports System.Web.Mail
    2. ...
    3. Dim m_Mail As New MailMessage()
    4. SmtpMail.SmtpServer = "pop.gmx.net"
    5. With m_Mail
    6. .From = "Absender Email"
    7. .To = "Empfänger Email"
    8. .Subject = "Test-Betreff"
    9. .Body = "Test"
    10. .Attachments.Add(New MailAttachment("Dateiname"))
    11. End With
    12. Try
    13. SmtpMail.Send(m_Mail)
    14. MsgBox("Nachricht wurde versandt.")
    15. Catch Ex As Exception
    16. MsgBox("Fehler: " & Ex.Message.ToString)
    17. End Try


    Gruß,

    f0x
    Danke ich teste das ma. :)) dankeeee :)



    EDIT//

    Hey Screenshot Futzt. Danke viel mals.

    Aber den Anhang hab ich bei mir eingefügt:

    VB.NET-Quellcode

    1. Dim MymailMessage As New MailMessageTry
    2. MymailMessage.From = New MailAddress("berken.sayilir@gmail.com")MymailMessage.To.Add("berken4133@hotmail.com")
    3. MymailMessage.Subject = TextBox2.Text
    4. MymailMessage.Body = TextBox1.Textmsg.Attachments.Add(New Attachment(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Screen.png")Dim SMTP As New SmtpClient("smtp.gmail.com")
    5. SMTP.port = 587
    6. SMTP.EnableSsl = TrueSMTP.Credentials = New System.Net.NetworkCredential("berken.sayilir@gmail.com", "hallo123")
    7. SMTP.Send(MymailMessage)
    8. TextBox1.Text = ""
    9. MsgBox("Feedback erfolgreich gesendet!", MsgBoxStyle.Information, "Information")Catch ex As Exception
    10. End Try




    und da kommt der fehler:

    Fehler 1 Der Name "msg" wurde nicht deklariert. C:\Users\User\AppData\Local\Temporary Projects\WindowsApplication1\Form1.vb 24 13 WindowsApplication1


    Fehler 2 ")" erwartet. C:\Users\User\AppData\Local\Temporary Projects\WindowsApplication1\Form1.vb 24 128 WindowsApplication1



    "I think Microsoft has abused the Windows brand so much that it has lost its cachet."
    Paul Thurrott

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „mottzi“ ()

    Beim 1. Fehler wenn du das davor nicht Msg nennst, kannst du das dann auch im Code nicht mit Msg bennen, sondern

    VB.NET-Quellcode

    1. MymailMessage.Attachments.Add(...)


    AUßerdem sagt ja bereits der 2. Fehler, dass du irgendwo ein Klammer vergessen hast. In Zeile 4 musst du hinter

    VB.NET-Quellcode

    1. (Msg) MymailMessage.Attachments.Add(New Attachment(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\Screen.png")
    noch eine Klammer setzen

    Da hättest du aber auch selbst draufkommen können.