ich möchte in meinem VB-Programm einen Button einbauen, der, wenn man ihn
anklickt, automatisch das "Neue EMail verfassen"-Fenster von Outlook öffnet,
und zwar mit einem bestimmten Empfänger/Betreff.
Das soll etwa so funktionieren wie wenn man "Start->Ausführen" und dann
mailto:x...@irgendwo.de eingibt.
Wie mache ich das?
Danke,
--Michael
'Standard eMail-Client
Dim Textstring as String
Dim email As EmailInfo
Dim sTmpFile As String
Dim hFile As Long
TextString = Text1.text
TextString = Replace(TextString, " ", "%20")
TextString = Replace(TextString, "&", "+")
TextString = Replace(TextString, vbTab, "%20")
TextString = Replace(TextString, vbLf, "%0D%0A")
TextString = Replace(TextString, ",", "%2C")
TextString = Replace(TextString, ";", "%3B")
TextString = Replace(TextString, "?", "%3F")
TextString = Replace(TextString, "%", "%25")
TextString = Replace(TextString, Asc(10), "%0A")
TextString = Left$(TextString, 2040)
'the temp email file
sTmpFile = App.path & "\temp.eml"
'complete the fields to be used
With email
.sAddrFrom = "AdresseVon"
.sAddrTo = "AdresseAn"
.sAddrCC = ""
.sAddrBCC = ""
.sSubject = "Betreff"
.sMessage = Textstring
.sPriority = 1
End With
'create the temp file
hFile = EmailCreate(sTmpFile)
Debug.Print "hFile="; hFile
'if successful,
If hFile <> 0 Then
'write out the data and
'send the email
If EmailWrite(hFile, email) Then
RunShellExecute "Open", _
sTmpFile, _
vbNullString, _
vbNullString, _
vbNormalFocus
End If
End If
Gruss
Gunthard Pupke
> beantwortet sicherlich Deine Frage. Dabei bleibt aber die
> Übergabe von längeren Texten in den eMail-Body unzureichend.
> Es können nur zirka 250 Zeichen übergeben werden. Ich habe
> mal vor einiger Zeit folgenden Tip im Internet gefunden.
> Leider weiss ich nicht mehr von wem er stammt. Damit werden
> auch längere eMails über einen tmp-File an den Standard-Mailer
> übergeben.
War sicher der hier:
http://www.mvps.org/vbnet/index.html?code/internet/shellexecutelargeemail.htm
Thorsten Dörfler
--
vb-hellfire - einfach anders
http://www.vb-hellfire.de/XX-E