我的邮箱客户端是foxmail,(VBA)
我希望在使用完excel的工作簿后,点击一个按钮后,把此文件作为附件,并在发送地址处自动填充接受方地址?如果我使用OutExpress,则程序调用OE,如果我使用Foxmail,则foxmail启动。
希望程序不是很长!!!1
我希望在使用完excel的工作簿后,点击一个按钮后,把此文件作为附件,并在发送地址处自动填充接受方地址?如果我使用OutExpress,则程序调用OE,如果我使用Foxmail,则foxmail启动。
希望程序不是很长!!!1
解决方案 »
- MCROSOFT ACTIVEX DATA OBJECTS 2.6 LIBRARY这个vb控件我没有,怎么加载?
- 3dxml控件如何在VB中使用?是一个非常强大的预览软件
- 可不可以截取WebBrowser1中网页表单内的值?
- 请教SQL语句的问题,救命
- 头疼的问题,也许很简单
- 怎样使窗体像QQ一样在屏幕的上方和左右两边伸缩?
- 免费程序赠送!!!!!!
- ASP调用vb组件问题!
- 告诉你如何列出局域网所有计算机资源(包括机器名、共享名等 酷)
- ADO Recordset問題:如何更新基于多表的查詢?80分喲
- InternetGetConnectedState函数检测在线问题
- 〓〓〓求助:在WIN2000系统中使用VB构造ICMP数据包并向指定地址发送的代码〓〓〓
http://search.csdn.net/Expert/topic/555/555798.xml?temp=6.335086E-02
Private Sub Command1_Click() Call ShellExecute(Me.hwnd, "Open", "mailto:[email protected]&subject=MySubject&body=haha", "", App.Path, 1)End Sub
注意:是在excel中实现的
那只能用外挂
直接用mailto系统能自己去找默认客户端吗?
Public Const SW_MINIMIZE = 6
Public Const HKEY_CURRENT_USER = &H80000001
Public Const KEY_QUERY_VALUE = &H1
Public Const REG_SZ = 1 ' Unicode nul terminated stringPublic Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As LongSub Foxmail()
'
On Error Resume Next
'HKEY_CURRENT_USER\Software\Aerofox\FoxMail\V3.1
'FoxMailPath
Dim hKey As Long
Dim tmpStr As String * 255
Dim PathLen As Long
If RegOpenKeyEx(HKEY_CURRENT_USER, "Software\Aerofox\FoxMail\", 0, KEY_QUERY_VALUE, hKey) <> 0 Then
Exit Sub
End If
PathLen = Len(tmpStr)
If RegQueryValueEx(hKey, "FoxmailPath", 0, REG_SZ, ByVal tmpStr, PathLen) <> 0 Then
Exit Sub
RegCloseKey hKey
End If
RegCloseKey hKey
FoxmailPath = Trim(Left(tmpStr, PathLen)) ActiveDocument.Save
If (ActiveDocument.Path <> "") And (ActiveDocument.FullName <> "") Then
ShellExecute 0, "Open", FoxmailPath, """" & ActiveDocument.FullName & """", "", SW_NORMAL
End If
End Sub以上是Foxmail的内置的一段word的宏,Excel可以模仿一下
' 调用系统默认邮件程序向指定邮箱地址发送邮件
' Address 为收件人的邮箱地址, CopyTo 为抄送地址, Subject 为邮件主题, MailText 为邮件正文
Function SendMail(ByVal Address As String, Optional ByVal CopyTo As String, Optional ByVal Subject As String, Optional ByVal MailText As String) As Boolean
SendMail = ShellExecute(0, "open", "mailto:" & Address & "?" & "&CC=" & CopyTo & "&Subject=" & Subject & "&Body=" & MailText, vbNullString, vbNullString, 5)
End Function