| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1675 人关注过本帖
标题:关于VBS的CDO组件批量处理.eml文件的一个低级问题
只看楼主 加入收藏
ywfhack
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-4-8
结帖率:0
收藏
已结贴  问题点数:10 回复次数:4 
关于VBS的CDO组件批量处理.eml文件的一个低级问题
Dim objCDO, objMessage, objAtt, strPath, strAttPath, myReg
on error resume Next
Set myReg=WScript.CreateObject("WScript.Shell")
strPath = myReg.CurrentDirectory & "\"
strAttPath = strPath & "Attachments\"
Set objCDO = CreateObject("CDO.DropDirectory")
    For Each objMessage In objCDO.GetMessages(strPath)
        For Each objAtt In objMessage.Attachments
            dtmNowDate = Now()
            dtmNowDate = Year(dtmNowDate) & right("0"&month(dtmNowDate),2) & right("0"& day(dtmNowDate),2)& right("0"& hour(dtmNowDate),2) & right("0"& minute(dtmNowDate),2) & right("0"& second(dtmNowDate),2)
            objAtt.SaveToFile strAttPath & dtmNowDate & "_" & objAtt.Filename
        Next
    Next
Set objCDO = Nothing
Set objMessage = Nothing
Set objAtt = Nothing
Set myReg= nothing
Msgbox "OK, All of Attachments extract to " & strAttPath
______________________________________________________________
分割线以上是一段VBS,作用是批量提取.eml文件中的附件并单独保存为当前时间+附件名。
以上代码也是来自于互联网公开渠道
请大牛指导,如何在本段代码中获取.eml文件的完整文件名,并把提取出来的附件命名为.eml文件名+附件名的格式。
新人拜谢!
搜索更多相关主题的帖子: VBS eml 文件 Set 附件 
2018-04-08 14:27
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:10 

objAtt  这个对象中应该有  eml 的文件名,
在运行时,设个断点,然后在 本地窗口 中找一个属性名。


授人于鱼,不如授人于渔
早已停用QQ了
2018-04-08 15:10
ywfhack
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-4-8
收藏
得分:0 
回复 2楼 风吹过b
谢谢版主,本人小白,不知道怎么在VBS中下断点
2018-04-08 16:40
ywfhack
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-4-8
收藏
得分:0 
      For i = 1 To intCount
        filename = objMessage.Attachments.Item(i).filename
        extension = Mid(filename, InStrRev(filename, "."))
        subject = ValidWBName(objMessage.Subject)
          If filename <> "" Then
            objMessage.Attachments.Item(i).SaveAsFile "C:\tmp\extracts\" & subject & extension
          End If
      Next

网上又找到一段代码,似乎可以把邮件主题读取出来,但是邮件文件名木有资料
2018-04-08 16:46
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
你在 VB6 里新建一个工程,
然后 把代码,复制到 VB6 里 一个响应事件中去执行, 那里有立即窗口。

凡是用记事本写 VBS的人都不能算小白了。
记事本写VBS,任何提示,任何语法错误都没有提示。。

授人于鱼,不如授人于渔
早已停用QQ了
2018-04-09 08:41
快速回复:关于VBS的CDO组件批量处理.eml文件的一个低级问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030194 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved