技术论坛

利用vb实现wincc6.0发送Email

作者 主题
游侠

经验值: 439
发帖数: 190
精华帖: 1
主题:利用vb实现wincc6.0发送Email


只看楼主 楼主 2010-07-08 13:14:18
wincc6.0没有发送Email的功能,300的plc需要加模块CP341才能发送Email,其实利用wincc的开放性和vb的实用性,可以为wincc做一个发送Email的控件。
打开vb,新建一个ActiveX控件,在窗口上放置一个picturebox和一个timer控件,图片选以后在wincc上使用的简单明了的图片。编写如下程序:
Sub SendMail(Optional ByVal sSubject As String,_
Optional ByVal sBody As String, _
Optional ByVal sFileName As String)
Shell "regsvr32 /s c:\jmail.dll" '注册jmail,使用前需安装jmail。
Dim jmail
Set jmail = CreateObject("jmail.Message")
jmail.Charset = "gb2312"
jmail.Silent = False
jmail.Priority = 1
jmail.MailServerUserName = "Email帐号"
jmail.MailServerPassWord = "Email密码"
jmail.FromName = "邮件" '发信人姓名
jmail.From = "发邮件地址地址"
jmail.Subject = "电机过载" '标题
jmail.AddRecipient "收信人地址"
jmail.Body = "1#电机过载" '做内容
jmail.Send ("smtp.126.com") 'SMTP服务器,如smtp.sohu.com
Set jmail = Nothing
End Sub

Private Sub Timer1_Timer()
Dim WinCC As Object
Dim xx
Set WinCC = CreateObject("WinCC-Runtime-Project")
xx = WinCC.GetValue("NewTag") '报警触发的变量
If xx = 1 Then
SendMail
End If
End Sub
生成.OCX,简单实用的Email发送控件就做好了。wincc组态时先注册一下这个控件然后添加进去就可以了,当然还可以做出添加变量或者修改邮件内容之类的效果来。



美哉德乎!姚姚者乎
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=7&a_id=708907

游民

经验值: 142
发帖数: 14
精华帖: 0
回复:利用vb实现wincc6.0发送Email


只看楼主 1楼 2010-07-14 20:40:10
牛人,拜读了!
 
以下网友喜欢您的帖子:

  
游侠

经验值: 334
发帖数: 145
精华帖: 0
回复:利用vb实现wincc6.0发送Email


只看楼主 2楼 2010-11-02 18:49:20
其实局域网内的数据直接用WINSOCK控件来实时传输就可以了,EMAIL...呵呵。确实牛逼哈...
87178967@qq.com
以下网友喜欢您的帖子:

  
游民

经验值: 109
发帖数: 299
精华帖: 0
回复:利用vb实现wincc6.0发送Email


只看楼主 3楼 2011-02-21 21:55:26
有点不懂,慢慢研究。
 
以下网友喜欢您的帖子:

  
侠客

经验值: 814
发帖数: 671
精华帖: 1
回复:利用vb实现wincc6.0发送Email


只看楼主 4楼 2011-02-24 11:04:45
谢谢啊。。现在大家用VB.net的多吗。。
工控猪!
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
利用vb实现wincc6.0发送Email
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。