中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-06 19:50
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 哪位大虾出手帮忙啊 查看 695 回复 6
楼 主 哪位大虾出手帮忙啊 发表于 2007-12-07 16:13 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
我想把下面这段命令在"批处理"内寸存为"10000.vbs"
哪位热心大虾帮忙解决一下,不盛感激!
以下是代码:

NameSpace = "http://schemas.microsoft.com/cdo/configuration/"
set Email = CreateObject("CDO.Message")
Email.From = "123456789@163.com"
Email.To = "10000@126.com"
Email.Subject = "txt"
Email.Textbody = "txt"
Email.AddAttachment "D:\*.txt"
with Email.Configuration.Fields
.Item(NameSpace&"sendusing") = 2
.Item(NameSpace&"smtpserver") = "smtp.163.com"
.Item(NameSpace&"smtpserverport") = 25
.Item(NameSpace&"smtpauthenticate") = 1
.Item(NameSpace&"sendusername") = "123456789"
.Item(NameSpace&"sendpassword") = "*******"
.Update
end with
Email.Send
2 发表于 2007-12-07 16:21 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
@echo off&>10000.vbs more +1 < %0 &echo\已经在当前目录生成10000.vbs文件& pause& exit
NameSpace = "http://schemas.microsoft.com/cdo/configuration/"
set Email = CreateObject("CDO.Message")
Email.From = "123456789@163.com"
Email.To = "10000@126.com"
Email.Subject = "txt"
Email.Textbody = "txt"
Email.AddAttachment "D:\*.txt"
with Email.Configuration.Fields
.Item(NameSpace&"sendusing") = 2
.Item(NameSpace&"smtpserver") = "smtp.163.com"
.Item(NameSpace&"smtpserverport") = 25
.Item(NameSpace&"smtpauthenticate") = 1
.Item(NameSpace&"sendusername") = "123456789"
.Item(NameSpace&"sendpassword") = "*******"
.Update
end with
Email.Send


[ Last edited by lxmxn on 2007-12-7 at 04:23 PM ]
3 发表于 2007-12-07 16:56 ·  中国 河北 保定 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线

@echo off&>10000.vbs more +1 < %0 &echo\已经在当前目录生成10000.vbs文件& pause& exit


这一行命令太有技巧了,佩服之至。不过,可以将末尾的&exit去掉,因为纯属多余。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
4 谢谢版主lxmxn 发表于 2007-12-07 17:04 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
在此要谢谢版主lxmxn
还有一事不明,求解.
就是文件bat.bat内容如下:
echo .Item(NameSpace&"sendusing") = 2 >> d:\100000.vbs
双击运行.生成的10000.vbs 内没包含以下代码呢?
.Item(NameSpace&"sendusing") = 2

[ Last edited by ajon911 on 2007-12-12 at 09:30 PM ]
5 发表于 2007-12-07 21:00 ·  中国 山东 济南 移动
系统支持
★★★
积分 1,011
发帖 435
注册 2007-02-08 00:00
19年会员
UID 78999
性别 男
状态 离线
lxmxn太有才了...
我就会echo没完了...
6 发表于 2007-12-07 22:01 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
TO Climbing:

如果去掉最后的exit,不就执行了下面的“vbs”语句么?

TO ajon911:

在“>>”前面加上一个空格。

TO AlexZhang:

兄过讲了……
7 不可行啊 发表于 2007-12-12 21:25 ·  中国 广东 东莞 电信
初级用户
积分 49
发帖 24
注册 2007-12-03 21:34
18年会员
UID 104583
性别 男
状态 离线
TO lxmxn


在“>>”前面加上一个空格。
echo .Item(NameSpace&"sendusing") = 2 >> vbe.vbe
不可行啊!生成的”vbe.vbe“是空的


谢谢 lxmxn 的解答

echo .Item(NameSpace^&"sendusing" = 2 >> vbe.vbe
注意了,这里的&是特殊符号,需要在前面加一个^来使它转义。

[ Last edited by ajon911 on 2007-12-12 at 09:39 PM ]
论坛跳转: