张志松
记录工作点滴,留下人生轨迹。(zezese@163.com)
posts - 68,  comments - 11,  trackbacks - 0

首先要导入jmail.dll 

#import "jmail.dll"

还要初始化COM套间

CoInitialize(NULL);

调用代码如下

 typedef HRESULT (__stdcall* pfnDllGetClassObject)(REFCLSID, REFIID, void**);

 HINSTANCE hDllInst = LoadLibrary(_T("jmail.dll"));

 pfnDllGetClassObject fnDllGetClassObject = (pfnDllGetClassObject)GetProcAddress(hDllInst, "DllGetClassObject");

 if (fnDllGetClassObject != NULL)
 {
  IClassFactory* lpClassFactory = NULL;

  HRESULT hr = (fnDllGetClassObject)(__uuidof(jmail::Message), IID_IClassFactory, (void**)&lpClassFactory);

  if (SUCCEEDED(hr) && (lpClassFactory != NULL))
  {
   IUnknown* lpUnknown = NULL;

   hr = lpClassFactory->CreateInstance(NULL, __uuidof(jmail::IMessage), (void**)&lpUnknown);

   if (SUCCEEDED(hr) && (lpUnknown != NULL))
   {
    jmail::IMessagePtr MyMessage(lpUnknown);

    //不抛出错误
    MyMessage->PutSilent(VARIANT_TRUE);

    MyMessage->PutISOEncodeHeaders(VARIANT_TRUE);

    //字符集,缺省为"US-ASCII"
    MyMessage->PutCharset(_T("GB2312"));
    
    //发件人姓名
    MyMessage->PutFromName(_T("test"));
    
    //发件人邮箱
    MyMessage->PutFrom(_T("***@***.com"));

    //发件人邮件用户名
    MyMessage->PutMailServerUserName(_T("***"));

    //发件人邮件密码
    MyMessage->PutMailServerPassWord(_T("***"));

    //设置邮件标题
    MyMessage->PutSubject(_T("邮件标题"));

    //邮件内容
    MyMessage->PutBody(_T("邮件内容"));

    //发送对象  
    MyMessage->AddRecipient(_T("***@***.com"), _T(""), _T(""));

    //Jmail发送的方法
    MyMessage->Send(_T("smtp.***.com"), VARIANT_FALSE);

    MyMessage->Close();

    MyMessage.Release();
   }

   lpClassFactory->Release();
  }
 }

 FreeLibrary(hDllInst);

posted on 2010-10-09 13:44 张志松 阅读(3253) 评论(3)  编辑 收藏 引用 所属分类: VC/MFC

FeedBack:
# re: VC调用JMail发邮件(无需注册JMail.dll)
2012-05-16 10:05 | 愚者自虑
亲,这样的代码在WIN7 64位的操作系统上能成功调用吗?  回复  更多评论
  
# re: VC调用JMail发邮件(无需注册JMail.dll)
2012-06-25 09:33 | sunnysab
能不能将dll包含到自身后在进行调用呢?一个程序和一个dll在一起太烦  回复  更多评论
  
# re: VC调用JMail发邮件(无需注册JMail.dll)
2012-07-21 10:12 | 小和
@愚者自虑
这样的代码在WIN7 64位的操作系统没办法使用!  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理



<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

常用链接

留言簿(2)

随笔分类

随笔档案

文章分类

文章档案

转载

搜索

  •  

最新评论

阅读排行榜

评论排行榜