Email 如何通过testcomplete在PC中发送outlook邮件而不打开outlook
我正在尝试在testcomplete中使用vb脚本语言发送outlook邮件。我可以发送,但如果outlook在我的电脑中打开,则只发送邮件;如果我的电脑中未打开outlook,则即使在执行此脚本后,在打开outllok之前,我的邮件也不会发送 这是我的密码:Email 如何通过testcomplete在PC中发送outlook邮件而不打开outlook,email,vbscript,outlook,testcomplete,Email,Vbscript,Outlook,Testcomplete,我正在尝试在testcomplete中使用vb脚本语言发送outlook邮件。我可以发送,但如果outlook在我的电脑中打开,则只发送邮件;如果我的电脑中未打开outlook,则即使在执行此脚本后,在打开outllok之前,我的邮件也不会发送 这是我的密码: Function SendMail Dim objOutLook, NamespaceMAPI,objNewMail, fso, SendReceiveControls Dim strTo,strCc ,strBcc ,strSubje
Function SendMail
Dim objOutLook, NamespaceMAPI,objNewMail, fso, SendReceiveControls
Dim strTo,strCc ,strBcc ,strSubject, AccountName,strAttachmentPath
strSubject="test"
strTo=yyy@yy.com
strCc=XXX@XX.com
strBcc =zzz@zzz.com
strAttachmentPath="c:\text.txt"
If strTo ="" and strCc = "" and strBcc =""Then
Exit function
ElseIf strSubject =""Then
Exit function
End If
Set objOutLook = CreateObject("Outlook.Application")
Set NamespaceMAPI = objOutLook.GetNamespace("MAPI")
Set objNewMail = objOutLook.CreateItem(olMailItem)
objOutLook.DisplayAlerts =True
objNewMail.TO = strTo
objNewMail.CC = strCc
objNewMail.BCC=strBcc
objNewMail.Subject = strSubject
objNewMail.Body = strMsg
If strAttachmentPath <> "" Then
Set fso =CreateObject("Scripting.FileSystemObject")
If fso.FileExists(strAttachmentPath) Then
objNewMail.Attachments.Add(strAttachmentPath)
objNewMail.display
Else
msgbox "Attachment File Does not exists"
End If
End If
AccountName="XXXXXX@XXXX.com"
' Finding the "Send/Receive" control
Set SendReceiveControls = NamespaceMAPI.GetDefaultFolder("Inbox")._
CommandBars("STANDARD").Controls("Send/Receive")
Set Item = Nothing
'msgbox "send:"&SendReceiveControls.Controls.Count
For I = 1 To SendReceiveControls.Controls.Count
If InStr(SendReceiveControls.Controls(I).Caption, AccountName) > 0 Then
Set Item = SendReceiveControls.Controls(I)
'msgbox "send1"&SendReceiveControls.Controls(I)
Exit For
End If
Next
' Executing the "Send/Receive" action
Item.Controls(1).Execute()
objOutLook.Quit
''''''' Releasing objects '''''''
Set objOutLook =Nothing
Set objNewMail = Nothing
Set fso = Nothing
End Function
函数SendMail
Dim objOutLook、名称空间MAPI、objNewMail、fso、SendReceiveControls
Dim strTo、strCc、strBcc、strSubject、AccountName、strAttachmentPath
strSubject=“测试”
斯特托=yyy@yy.com
strc=XXX@XX.com
strBcc=zzz@zzz.com
strAttachmentPath=“c:\text.txt”
如果strTo=“”和strCc=“”和strBcc=“”,则
退出功能
ElseIf strSubject=“”然后
退出功能
如果结束
设置objOutLook=CreateObject(“Outlook.Application”)
Set NamespaceMAPI=objOutLook.GetNamespace(“MAPI”)
设置objNewMail=objOutLook.CreateItem(olMailItem)
objOutLook.DisplayAlerts=True
objNewMail.TO=strTo
objNewMail.CC=strCc
objNewMail.BCC=strBcc
objNewMail.Subject=strSubject
objNewMail.Body=strMsg
如果是strAttachmentPath“”,则
设置fso=CreateObject(“Scripting.FileSystemObject”)
如果存在fso.files(strAttachmentPath),则
objNewMail.Attachments.Add(strAttachmentPath)
objNewMail.display
其他的
msgbox“附件文件不存在”
如果结束
如果结束
AccountName=”XXXXXX@XXXX.com"
'查找“发送/接收”控件
设置SendReceiveControls=NamespaceMAPI.GetDefaultFolder(“收件箱”)_
命令栏(“标准”)控件(“发送/接收”)
设置项=无
“msgbox”发送:“&SendReceiveControls.Controls.Count”
对于I=1,发送ReceiveControls.Controls.Count
如果InStr(SendReceiveControls.Controls(I).Caption,AccountName)>0,则
Set Item=SendReceiveControls.Controls(I)
'msgbox“send1”&SendReceiveControls.Controls(I)
退出
如果结束
下一个
'执行“发送/接收”操作
Item.Controls(1.Execute)()
objOutLook,退出
释放物体
设置objOutLook=Nothing
Set objNewMail=Nothing
设置fso=无
端函数
请建议我如何处理此问题…提前谢谢尝试
objNewMail.Body.Send
而不是尝试执行发送和接收按钮。下面是一个简单的例子:
Function SendMail()
Dim objOutlook, objNewMail
Set objOutLook = CreateObject("Outlook.Application")
Set objNewMail = objOutLook.CreateItem(olMailItem)
objNewMail.TO = "myrecip@test.com"
objNewMail.Subject = "test"
objNewMail.Body = "test"
objNewMail.Send
End Function
尝试
objNewMail.Body.Send
,而不是尝试执行发送和接收按钮。下面是一个简单的例子:
Function SendMail()
Dim objOutlook, objNewMail
Set objOutLook = CreateObject("Outlook.Application")
Set objNewMail = objOutLook.CreateItem(olMailItem)
objNewMail.TO = "myrecip@test.com"
objNewMail.Subject = "test"
objNewMail.Body = "test"
objNewMail.Send
End Function
尝试
objNewMail.Body.Send
,而不是尝试执行发送和接收按钮。下面是一个简单的例子:
Function SendMail()
Dim objOutlook, objNewMail
Set objOutLook = CreateObject("Outlook.Application")
Set objNewMail = objOutLook.CreateItem(olMailItem)
objNewMail.TO = "myrecip@test.com"
objNewMail.Subject = "test"
objNewMail.Body = "test"
objNewMail.Send
End Function
尝试
objNewMail.Body.Send
,而不是尝试执行发送和接收按钮。下面是一个简单的例子:
Function SendMail()
Dim objOutlook, objNewMail
Set objOutLook = CreateObject("Outlook.Application")
Set objNewMail = objOutLook.CreateItem(olMailItem)
objNewMail.TO = "myrecip@test.com"
objNewMail.Subject = "test"
objNewMail.Body = "test"
objNewMail.Send
End Function
您真的需要将其与outlook一起发送吗 我使用此javascript代码发送电子邮件,然后在outlook中,您只需将其标记为非垃圾邮件,否则,它将直接进入垃圾邮件收件箱
function SendEmail(mFrom, mTo, mSubject, mBody, username, password)
{
var i, schema, mConfig, mMessage;
try
{
schema = "http://schemas.microsoft.com/cdo/configuration/";
mConfig = Sys.OleObject("CDO.Configuration");
mConfig.Fields.Item(schema + "sendusing") = 2; // cdoSendUsingExchange
mConfig.Fields.Item(schema + "smtpserver") = "STMP SERVER ADDRESS HERE"; // SMTP server
mConfig.Fields.Item(schema + "smtpserverport") = 25; // Port number
mConfig.Fields.Item(schema + "smtpauthenticate") = 1; // Authentication mechanism
mConfig.Fields.Item(schema + "sendusername") = username; // User name (if needed)
mConfig.Fields.Item(schema + "sendpassword") = password; // User password (if needed)
mConfig.Fields.Update();
mMessage = Sys.OleObject("CDO.Message");
mMessage.Configuration = mConfig;
mMessage.From = mFrom;
mMessage.To = mTo;
mMessage.Subject = mSubject;
mMessage.HTMLBody = mBody;
mMessage.Send();
}
catch (exception)
{
Log.Error("E-mail cannot be sent", exception.description);
return false;
}
Log.Message("Message to <" + mTo + "> was successfully sent");
return true;
}
函数sendmail(mFrom、mTo、mSubject、mBody、用户名、密码)
{
变量i、模式、mConfig、消息;
尝试
{
架构=”http://schemas.microsoft.com/cdo/configuration/";
mConfig=Sys.OleObject(“CDO.Configuration”);
mConfig.Fields.Item(模式+“sendusing”)=2;//cdoSendUsingExchange
mConfig.Fields.Item(schema+“smtpserver”)=“此处的STMP服务器地址”;//SMTP服务器
mConfig.Fields.Item(模式+“smtpserverport”)=25;//端口号
mConfig.Fields.Item(schema+“smtpauthenticate”)=1;//身份验证机制
mConfig.Fields.Item(schema+“sendusername”)=username;//用户名(如果需要)
mConfig.Fields.Item(schema+“sendpassword”)=password;//用户密码(如果需要)
mConfig.Fields.Update();
mMessage=Sys.OleObject(“CDO.Message”);
mMessage.Configuration=mConfig;
mMessage.From=mFrom;
M消息To=mTo;
mMessage.Subject=mSubject;
mMessage.HTMLBody=mBody;
mMessage.Send();
}
捕获(例外)
{
Log.Error(“无法发送电子邮件”,异常。说明);
返回false;
}
Log.Message(“发送到的消息已成功发送”);
返回true;
}
您真的需要将其与outlook一起发送吗
我使用此javascript代码发送电子邮件,然后在outlook中,您只需将其标记为非垃圾邮件,否则,它将直接进入垃圾邮件收件箱
function SendEmail(mFrom, mTo, mSubject, mBody, username, password)
{
var i, schema, mConfig, mMessage;
try
{
schema = "http://schemas.microsoft.com/cdo/configuration/";
mConfig = Sys.OleObject("CDO.Configuration");
mConfig.Fields.Item(schema + "sendusing") = 2; // cdoSendUsingExchange
mConfig.Fields.Item(schema + "smtpserver") = "STMP SERVER ADDRESS HERE"; // SMTP server
mConfig.Fields.Item(schema + "smtpserverport") = 25; // Port number
mConfig.Fields.Item(schema + "smtpauthenticate") = 1; // Authentication mechanism
mConfig.Fields.Item(schema + "sendusername") = username; // User name (if needed)
mConfig.Fields.Item(schema + "sendpassword") = password; // User password (if needed)
mConfig.Fields.Update();
mMessage = Sys.OleObject("CDO.Message");
mMessage.Configuration = mConfig;
mMessage.From = mFrom;
mMessage.To = mTo;
mMessage.Subject = mSubject;
mMessage.HTMLBody = mBody;
mMessage.Send();
}
catch (exception)
{
Log.Error("E-mail cannot be sent", exception.description);
return false;
}
Log.Message("Message to <" + mTo + "> was successfully sent");
return true;
}
函数sendmail(mFrom、mTo、mSubject、mBody、用户名、密码)
{
变量i、模式、mConfig、消息;
尝试
{
架构=”http://schemas.microsoft.com/cdo/configuration/";
mConfig=Sys.OleObject(“CDO.Configuration”);
mConfig.Fields.Item(模式+“sendusing”)=2;//cdoSendUsingExchange
mConfig.Fields.Item(schema+“smtpserver”)=“此处的STMP服务器地址”;//SMTP服务器
mConfig.Fields.Item(模式+“smtpserverport”)=25;//端口号
mConfig.Fields.Item(schema+“smtpauthenticate”)=1;//身份验证机制
mConfig.Fields.Item(schema+“sendusername”)=username;//用户名(如果需要)
mConfig.Fields.Item(schema+“sendpassword”)=password;//用户密码(如果需要)
mConfig.Fields.Update();
mMessage=Sys.OleObject(“CDO.Message”);
mMessage.Configuration=mConfig;
mMessage.From=mFrom;
M消息To=mTo;
mMessage.Subject=mSubject;
mMessage.HTMLBody=mBody;
mMessage.Send();
}
捕获(例外)
{
Log.Error(“无法发送电子邮件”,异常。说明);
返回false;
}
Log.Message(“发送到的消息已成功发送”);
返回true;
}
您真的需要将其与outlook一起发送吗
我使用此javascript代码发送电子邮件,然后在outlook中,您只需将其标记为非垃圾邮件,否则,它将直接进入垃圾邮件收件箱
function SendEmail(mFrom, mTo, mSubject, mBody, username, password)
{
var i, schema, mConfig, mMessage;
try
{
schema = "http://schemas.microsoft.com/cdo/configuration/";
mConfig = Sys.OleObject("CDO.Configuration");
mConfig.Fields.Item(schema + "sendusing") = 2; // cdoSendUsingExchange
mConfig.Fields.Item(schema + "smtpserver") = "STMP SERVER ADDRESS HERE"; // SMTP server
mConfig.Fields.Item(schema + "smtpserverport") = 25; // Port number
mConfig.Fields.Item(schema + "smtpauthenticate") = 1; // Authentication mechanism
mConfig.Fields.Item(schema + "sendusername") = username; // User name (if needed)
mConfig.Fields.Item(schema + "sendpassword") = password; // User password (if needed)
mConfig.Fields.Update();
mMessage = Sys.OleObject("CDO.Message");
mMessage.Configuration = mConfig;
mMessage.From = mFrom;
mMessage.To = mTo;
mMessage.Subject = mSubject;
mMessage.HTMLBody = mBody;
mMessage.Send();
}
catch (exception)
{
Log.Error("E-mail cannot be sent", exception.description);
return false;
}
Log.Message("Message to <" + mTo + "> was successfully sent");
return true;
}
函数sendmail(mFrom、mTo、mSubject、mBody、用户名、密码)
{
变量i、模式、mConfig、消息;
尝试
{
架构=”http://schemas.microsoft.com/cdo/configuration/";
mConfig=Sys.OleObject(“CDO.Configuration”);
mConfig.Fields.Item(模式+“sendusing”)=2;//cdoSendUsingExchange
mConfig.Fields.Item(架构+“smtpserver”)=“S