| |

VB.NET - Ein- und UmsteigerEmail mit Anhang in Outlook | |  | Autor: derDudeLe | Datum: 20.10.11 11:34 |
| Hi Forum Gemeinde,
ich komm eigentlich aus der Java Ecke und bastle mir grade ein Programm an das ich per Parameter eine Email Adresse, den Betreff und n - Anhänge übergeben kann um daraus eine neue Email für Outlook zu erstellen.
Soweit funktioniert das auch, nur mein Problem ist das die Script-Sprache aus dem heraus mein Programm aufgerufen werden soll eine maximal Zeichenkettenlänge von 2500 Zeichen zulässt.
Was heist möchte ich viele Anhänge mit langen Pfaden übergeben muss ich mein Programm 2 oder mehr mal aufrufen, mein Plan ist nun beim n-ten Aufruf dem Email-Objekt aus der ersten Instanz weiter Anhänge mit zu übergeben.
Hier mal der aktuelle Code:
Public Class Form1
Dim olApp As Object
Dim objOutlookMsg As Object
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
If My.Application.CommandLineArgs.Count > 1 Then
olApp = CreateObject("Outlook.Application")
Me.Text = My.Application.CommandLineArgs.Item(0) + " - " + _
My.Application.CommandLineArgs.Item(1)
objOutlookMsg = olApp.CreateItem(0)
With objOutlookMsg
.To = My.Application.CommandLineArgs.Item(0)
.Subject = My.Application.CommandLineArgs.Item(1)
For i As Integer = 2 To My.Application.CommandLineArgs.Count - 1
If Dir(My.Application.CommandLineArgs.Item(i)) = "" Then
MsgBox("Datei " + My.Application.CommandLineArgs.Item( _
i) + " existiert nicht.")
Else
.Attachments.Add(My.Application.CommandLineArgs.Item(i))
End If
Next
.Display()
End With
Else
MsgBox("Mindestens 2 Paramter, 1: Email Adresse, 2: Betreff, 3 und" & _
"Folgende wird als Anhang interpretiert.")
Me.Text = "Keine Parameter erhalten ..."
Me.Dispose()
End If
olApp = Nothing
objOutlookMsg = Nothing
End Sub
Public Sub NextDocument(ByVal e As _
Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventArgs)
'e.CommandLine
'Auf diesen Wert kannst Du dann reagieren
If e.CommandLine.Count > 0 Then
With objOutlookMsg
For i As Integer = 0 To e.CommandLine.Count - 1
If Dir(e.CommandLine.Item(i)) = "" Then
MsgBox("Datei " + e.CommandLine.Item(i) + " existiert" & _
"nicht.")
Else
.Attachments.Add(e.CommandLine.Item(i))
End If
Next
End With
End If
End Sub
End Class Problem ist er bricht immer beim 2 Aufruf ab mit der Fehlermeldung:
Informationen über das Aufrufen von JIT-Debuggen
anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.
************** Ausnahmetext **************
System.NullReferenceException: Die Objektvariable oder die With-Blockvariable wurde nicht festgelegt.
bei Microsoft.VisualBasic.CompilerServices.Symbols.Container..ctor(Object Instance)
bei Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGet(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack)
bei ParamToEmail2.Form1.NextDocument(StartupNextInstanceEventArgs e)
bei ParamToEmail2.My.MyApplication.MyApplication_StartupNextInstance(Object sender, StartupNextInstanceEventArgs e)
bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnStartupNextInstance(StartupNextInstanceEventArgs eventArgs)
bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnStartupNextInstanceMarshallingAdaptor(Object args)
....
Wäre schön wenn Ihr eine Idee hättet. Mein Gedanke dazu ist das er aus irgendwelchen Gründen ein Problem mit dem mailObjekt hat, ich hatte aber auch zeitweise eine Box Eingebaut in der der Betreff und die Anschrift mit ausgegeben wurden, dies funktionierte auch einwandfrei. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats Neu! sevPopUp 2.0 
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|