我刚开始在Delphi 2010中使用indy10(今天),在阅读了所有内容后,我设法使其工作,我可以使用gmail发送电子邮件,它在我的计算机上运行良好,但当我在笔记本电脑上安装应用程序(用于测试)时,它不会发送电子邮件,我的应用程序也停止工作,我是否必须在笔记本电脑中安装其他东西,或者我如何使它在我安装程序的每台计算机上运行,到目前为止,我不得不在6台不同的计算机上安装它,有些使用WindowsXP,有些使用Windows7,我希望有一种方法可以使它成为多平台或其他什么的。
这是我的代码:
procedure SendIndyMail;
begin
Form_final.IdSMTP1 .IOHandler := Form_final.IdSSLIOHandlerSocketOpenSSL1;
Form_final.IdSMTP1.Host:= 'smtp.gmail.com';
Form_final.IdSMTP1.Password:= 'xxxxxx';
Form_final.IdSMTP1.Port := 587;
Form_final.IdSMTP1.UseTLS := utUseExplicitTLS;
Form_final.IdSMTP1.Username := 'xxxxxx';
Form_final.IdSSLIOHandlerSocketOpenSSL1.Destination := 'smtp.gmail.com:587';
Form_final.IdSSLIOHandlerSocketOpenSSL1.Host := 'smtp.gmail.com';
Form_final.IdSSLIOHandlerSocketOpenSSL1.Port := 587;
Form_final.IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvTLSv1;
Form_final.IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Mode := sslmUnassigned;
Form_final.IdSSLIOHandlerSocketOpenSSL1.SSLOptions.VerifyMode := [];
Form_final.IdSSLIOHandlerSocketOpenSSL1.SSLOptions.VerifyDepth := 0;
Form_final.IdMessage1.Subject:=conect.Q_selec_info_generalDescripcion.Text+' '+DateToStr(Date);
Form_final.IdMessage1.Recipients.EMailAddresses:=conect.Q_config_seleccorreo.Text;
TIdAttachmentFile.Create(Form_final.IdMessage1.MessageParts, conect.Q_config_selecfolder.Text+'\reporte_'+FormatDateTime('dddd d of mmmm yyyy', Date)+' Inventario '+Form_inventario.Edit_id_inventario.Text+'.pdf');
Form_final.IdSMTP1.Connect;
Form_final.IdSMTP1.Send(Form_final.IdMessage1);
Form_final.IdSMTP1.Disconnect;
end;
我在笔记本电脑上运行了这个项目,上面写着:
无法加载SSL库,现在,我做了很多事情来让它发挥作用,下载了很多东西,并尝试了很多其他东西,现在我不知道这些库在哪里,也不知道如何检索它们,我想知道一种在安装时加载它们的方法,这样我的安装程序就可以完成所需的一切。
提前谢谢。