软件注册站
热情软件屋

 
不使用外部控件,如何编写一个发送邮件的程序
编号: QA004686    
建立日期: 2003年5月18日 最后修改日期: 2003年12月21日
所属类别: Visual Basic - Internet编程
   
    vb6 · 网络
    请问编写一个发送邮件的程序,不使用外部控件如winsock,也不使用任何引用dll?
    问题是这样,我编写的程序放在别人的机子上没法运行,因为缺少相应控件或无法创建对象。而我又不方便制作安装程序,也不愿意将所需要的控件拷贝在一起,只想使用单一的一个文件来运行,怎么办?(李忠银)
   
    你可以调用Winsock的函数来实现你要的功能。所有能上网的计算机肯定有Winsock函数,所以你不用担心分发的问题。不过使用这些函数意味着你需要对Winsock和SMTP有所了解。这里有一个现成的例子:mail.zip。其中包括SMTP、POP3、IMAP、DNS协议的使用。
    
    aij问:请教一下,能用CGI或其他语言写一个程序,直接加在网页上,远程控制服务器把客户填写好的表单以email的形式发送到指定的邮箱吗。我想知道假设没有服务器或不知道服务器信息的情况下(例如租用虚拟服务器,服务器没有asp,php,acceess等数据库的支持)还能不能通过程序把客户的表单发到指定邮箱。万望指教,感激不尽!
    :首先纠正你的一个说法,CGI是运行在服务器端的,而不是运行在客户端。如果你的虚拟主机支持CGI,那么这个问题最简单,可以使用现成的CGI脚本来实现你的目的,具体内容参考QA001458 "如何使用Perl建立一个信息反馈表单"
    。如果所使用的虚拟主机不支持CGI,则大致有以下几个方法:
    1、编写自己的客户端程序或者ActiveX控件,象前面解答中那样,不过对于你的要求不是最简单的。
    2、使用mailto表单方式。例如下面的代码:
    <form name="form1" action="mailto:abc@sina.com" method="post" enctype="text/plain">
    
<p>您的姓名: <input type="text" name="text1" size="12" maxlength="20">
    
您的E_mail: <input type="text" name="text2" size="20" maxlength="24" value="*****@*.*">
    
输入口令: <input type="password" name="text3" size="8" maxlength="8"> </p>
    
<p align="center">
    
<input type="submit" name="提交" value="提 交">
    
<input type="reset" name="重写" value="重 写">
    
</p>
    
</form>
    

    使用时,将action="mailto:abc@sina.com"中的邮件地址替换为你的地址就可以了。
    实际的效果如下:

    

您的姓名:
    您的E_mail:
    输入口令:


    
    


    
用户点击提交后,浏览器会调用默认的邮件软件发送EMAIL到指定信箱。缺点有两个:一是需要客户端的邮件软件支持;二是你收到的邮件是编码的,可能需要手工解码。手工解码的问题参考QA000114 "怎样才能作出一个主页上用于提交的表格"。 3、使用一些远程服务商提供的服务。你在http://www.cgi-resources.com/Remotely_Hosted/Form_Processing/可以找到很多这样的服务商,你只需要按照服务商规定的格式设置好客户端的HTML代码。提交的时候,用户的内容先提交给服务商,再转发给你。有的服务是收费的,也有免费的。 相关问题: QA001314 "如何用VB做一个邮件发送程序" QA001964 "如何获得POP3和SMTP协议" QA003775 "怎样增加smtp身份认证功能"

    

此问题由李海回答。

附加关键字:编程, 源程序, programming, source code, Visual Basic, VB, Internet编程, INET, www, internet, ie

   
 
把这个问题推荐给朋友
   
 
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio