Board logo

标题: [网络工具] 电脑遥控器 远程批处理 OEInboxtool V6.2 [打印本页]

作者: cjiabing    时间: 2010-7-13 22:56     标题: 电脑遥控器 远程批处理 OEInboxtool V6.2

大家使用命令列表(执行 ******) orderlist.txt 时,注意修改 orderlist.txt 里程序的路径,否则提示无法找到系统文件和无法执行。本人的常用程序都安装在D盘,制作orderlist.txt 时程序路径都写D盘,因一时疏忽忘记修改为默认路径就打包了。
  1. @echo off&setlocal enabledelayedexpansion
  2. ::by cjiabing
  3. ::from http://hi.baidu.com/cjiabing
  4. title 电脑遥控器 远程批处理cmd@xp
  5. MODE con: COLS=80 LINES=30
  6. COLOR 3E
  7. echo.
  8. echo.
  9. echo.
  10. echo.
  11. echo.
  12. echo                            OE收件箱监控与主题提取工具
  13. echo                                OEInboxtool  V6.2
  14. echo.
  15. echo.
  16. echo      *********************************************************************
  17. echo             ◇本工具基于Outlook Express邮箱程序,用于网络通信;
  18. echo             ◇可提取OE收件箱的标题,但字数和格式受限,不读取信件内容;
  19. echo             ◇若邮件标题是有效的DOS命令本工具将执行该命令;
  20. echo             ◇如发送标题如“shutdown -s -t 0”的邮件将使电脑自动关机;
  21. echo             ◇若发件端为另一PC或Mobile你将可以远程控制该电脑;
  22. echo             ◇因此本工具可以作为一种被动的远程控制的客户端;
  23. echo             ◇专门为批处理设计,如使其充分发挥效用你需懂得DOS命令;
  24. echo             ◇需Outlook Express、base64、blat等第三方工具支持;
  25. echo             ◇需预设Outlook Express邮箱账户并每隔一分钟检查一次新邮件;
  26. echo             ◇本工具为你的生活提供方便和乐趣,请勿用于非法用途。
  27. echo      *********************************************************************
  28. echo.
  29. echo                                  设置选项:
  30. echo.        
  31. set /p timec=       ◇时间(自动循环时间;默认是60,约2分钟):
  32. if defined timec (goto set) else (set timec=60)
  33. :set
  34. echo.&set /p email=       ◇模式(是否发送邮件;默认N,聊天Y,外置W):
  35. if %email%==w (call :mail)
  36. if %email%==y (call :mail) else (set cmail=echo 不发送邮件)
  37. :set2
  38. setlocal enabledelayedexpansion
  39. set rdm=%random%
  40. echo set timec=%timec%>>OETool^!rdm^!.bat
  41. echo set cmail=%cmail%>>OETool^!rdm^!.bat
  42. echo set email=%email%>>OETool^!rdm^!.bat
  43. for /f "skip=82 tokens=*" %%a in ('type %0') do echo %%a>>OETool^!rdm^!.bat
  44. echo start ^"^"  batbot001^.bat>>OETool^!rdm^!.bat
  45. echo ping ^/n 5 127^.0^.1^>nul>>OETool^!rdm^!.bat
  46. echo goto ^:eof>>OETool^!rdm^!.bat
  47. echo.&echo        按任意键退出设置并开始执行程序&pause>nul
  48. start "" OETool^!rdm^!.bat&exit
  49. :mail
  50. set cmail=call :send
  51. set /p recive=           接收邮箱地址(如:987654@163.com):
  52. set /p sender=           发件邮箱地址(如:123456@qq.com):
  53. set /p smtp=           发件邮箱SMTP(如:smtp.qq.com):
  54. set /p pword=           发件邮箱密码(如:123456):
  55. set /p subj=           邮件标题(如:你好!):
  56. if not  exist body.txt cd.>body.txt
  57. set /p cont=           邮件内容文本路径(如:C:\body.txt):
  58. if %email%==w call :send12
  59. :talk
  60. echo ^@echo off>>_talk.bat
  61. echo title 即时通讯>>_talk.bat
  62. echo if exist talklog^.txt type talklog^.txt>>_talk.bat
  63. echo echo^.>>_talk.bat
  64. echo echo    【b-退出;cb-清空发送信息;cb-清空接收信息;cl-清空聊天记录】>>_talk.bat
  65. echo echo    【b-退出;fb-查看发送信息;ft-查看接收信息;fl-查看聊天记录】>>_talk.bat
  66. echo echo  —————————————————————————————————>>_talk.bat
  67. echo ^:talk>>_talk.bat
  68. echo if exist _talk^.txt for ^/f "tokens=*" %%%%a in (_talk^.txt) do echo ^●Itsay^:%%%%a ^&echo ^●Itsay^:%%%%a^>^>talklog^.txt>>_talk.bat
  69. echo set ^/p talk^= ^○Yousay^:>>_talk.bat
  70. echo if ^/i %%talk%%^=^=b exit>>_talk.bat
  71. echo if ^/i %%talk%%^=^=cb cd^.>body^.txt>>_talk.bat
  72. echo if ^/i %%talk%%^=^=ct cd^.>_talk^.txt>>_talk.bat
  73. echo if ^/i %%talk%%^=^=cl cd^.>talklog^.txt>>_talk.bat
  74. echo if ^/i %%talk%%^=^=fb type body^.txt^&echo  —————————————————————————————————>>_talk.bat
  75. echo if ^/i %%talk%%^=^=ft type _talk^.txt^&echo  —————————————————————————————————>>_talk.bat
  76. echo if ^/i %%talk%%^=^=fl type talklog^.txt^&echo  —————————————————————————————————>>_talk.bat
  77. echo echo   %%time:~0^,8%%^>^>talklog^.txt>>_talk.bat
  78. echo echo ^○Yousay^:%%talk%%^>^>talklog^.txt>>_talk.bat
  79. echo if ^/i  not %%talk%%^=^=b if ^/i  not %%talk%%^=^=cb if ^/i not %%talk%%^=^=ct if ^/i not %%talk%%^=^=cl if ^/i  not %%talk%%^=^=fb if ^/i not  %%talk%%^=^=ft if ^/i  not %%talk%%^=^=fl echo %%talk%%^>^>body^.txt>>_talk.bat
  80. echo ping /n 5 127.0.1^>nul>>_talk.bat
  81. echo exit>>_talk.bat
  82. goto :eof
  83. cls
  84. @echo off&setlocal enabledelayedexpansion
  85. title OEInboxtool  V6.2
  86. :start
  87. echo.
  88. echo.
  89. echo                               OEInboxtool  V6.2
  90. echo.
  91. echo.
  92. echo      *********************************************************************
  93. echo             ◇本工具基于Outlook Express邮箱程序,用于网络通信;
  94. echo             ◇可提取OE收件箱的标题,且字数和格式受限,不识别内容;
  95. echo             ◇若邮件标题是有效的DOS命令本工具将执行该命令;
  96. echo             ◇如发送标题如“shutdown -s -t 0”的邮件将使电脑自动关机;
  97. echo             ◇若发件端为另一PC或Mobile你将可以远程控制该电脑;
  98. echo             ◇因此本工具可以作为一种被动的远程控制的客户端;
  99. echo             ◇专门为批处理设计,如使其充分发挥效用你需懂得DOS命令;
  100. echo             ◇需Outlook Express、base64、blat等第三方工具支持;
  101. echo             ◇预先设置Outlook Express邮箱并每隔一分钟检查一次新邮件;
  102. echo             ◇本工具为你的生活提供方便和乐趣,请勿用于非法用途。
  103. echo      *********************************************************************
  104. echo.
  105. echo.
  106. ping /n 5 127.0.1>nul
  107. call :try
  108. set jici=0
  109. :loop
  110. set /a jici+=1
  111. echo.
  112. echo                             ——开始第“%jici%”轮任务——
  113. ping /n ^!timec^!  127.0.1>nul
  114. echo.
  115. call :sub
  116. echo.
  117. IF errorlevel 0  (echo             【第“%jici%”轮任务完成,将重新开始任务,退出请直接关闭】) else (echo no^!^!)
  118. echo.
  119. echo ——————————————————————————————————————
  120. if exist newitems.txt call :bbot
  121. if %jici% lss 13 goto loop
  122. taskkill /f /t /im msimn.exe
  123. ping /n 10 127.0.1>nul
  124. goto start
  125. :try
  126. echo.
  127. if  exist "%ProgramFiles%\Outlook Express\msimn.exe" start /min "" "%ProgramFiles%\Outlook Express\msimn.exe"
  128. ping /n 5 127.0.1>nul
  129. echo                             ……初始检测……
  130. echo.
  131. if not exist "%ProgramFiles%\Outlook Express\msimn.exe" echo     对不起,找不到你的Outlook Express程序!&ping /n 5 127.0.1>nul&exit
  132. if not exist base64.exe echo     对不起,找不到你的base64.exe程序!&ping /n 5 127.0.1>nul&exit
  133. for /r "%USERPROFILE%\Local Settings\Application Data\Identities\" %%i in (*) do (
  134. set dwx=%%~ni
  135. if  ^!dwx^!==收件箱  set sjxm=%%i
  136. )
  137. if  ^!dwx^!==收件箱  (echo     找到Outlook Express的收件箱!) else (echo     对不起,找不到Outlook Express的收件箱!&&ping /n 5 127.0.1>nul&exit)
  138. IF errorlevel 0  echo                             ……初始检测……ok
  139. goto :eof
  140. ::"%USERPROFILE%\Local Settings\Application Data\Identities\{1C7149FB-17FD-4ED9-B46C-B7C800F767FF}\
  141. Microsoft\Outlook Express\收件箱.dbx"
  142. ::C:\Documents and Settings\Administrator\Local Settings\Application Data\Identities\{ECFEDFFB-8EB4-4F0E-827F-1139C49E60D0}\Microsoft\Outlook Express
  143. :sub
  144. echo.
  145. echo                             ……1、提取邮件……
  146. if exist newitems.txt type newitems.txt>>Readmessageslog.txt
  147. if %email%==y cd.>_talk.txt
  148. if %email%==y if exist newitems.txt echo   %time:~0,8%>>_talk.txt&type newitems.txt>>_talk.txt
  149. del 收件箱.dbx,firstinbox.txt,editinbox.txt,subjectr.txt,newitems.txt>nul 2>nul 1>nul
  150. if  exist "%ProgramFiles%\Outlook Express\msimn.exe" start /min "" "%ProgramFiles%\Outlook Express\msimn.exe"&ping /n 30 127.0.1>nul
  151. setlocal enabledelayedexpansion
  152. for /l %%a in (1,2,10000) do (
  153. set cmt=%%a
  154. if ^!jici^!==^!cmt^!  goto cmt1
  155. )
  156. goto cmt2
  157. :cmt1
  158. taskkill /f /t /im msimn.exe
  159. ping /n 15 127.0.1>nul
  160. move "^!sjxm^!"   ^!cd^!
  161. goto cmt3
  162. :cmt2
  163. copy "^!sjxm^!"   ^!cd^!
  164. :cmt3
  165. ren %cd%\收件箱.dbx  firstinbox.txt
  166. for /f "tokens=*" %%a  in ('type firstinbox.txt') do echo %%a>>editinbox.txt
  167. for /f "tokens=2*" %%a in ('findstr /i /b "Subject" editinbox.txt') do echo %%a %%b>>subjectr.txt
  168. del firstinbox.txt,editinbox.txt>nul 2>nul 1>nul
  169. if exist body.txt ^!cmail^!
  170. if not exist subjectr.txt echo 收件箱没有邮件 &goto :eof
  171. ::if exist subjectr.txt ^!cmail^!
  172. cd.>mnewitems.txt
  173. findstr /v "^=?gbk?B?" subjectr.txt>>mnewitems.txt
  174. setlocal enabledelayedexpansion
  175. set numt1=0
  176. findstr  "^=?gbk?B?" subjectr.txt>nul 2>nul 1>nul &IF errorlevel 0 echo                             ……提取邮件……ok &goto gbkb
  177. goto :eof
  178. :gbkb
  179. echo.
  180. echo                             ……2、邮件解码……
  181. if  exist subjectr.txt for /f "tokens=*" %%i in ('findstr  "^=?gbk?B?" subjectr.txt') do (
  182. set /a numt1+=1
  183. echo ^!numt1^!>nul
  184. set fjmmd=%%i&echo ^!fjmmd:~8,400^!>subjectrjm1^!numt1^!.txt
  185. base64 -d -i subjectrjm1^!numt1^!.txt -o subjectrjm2^!numt1^!.txt
  186. for /f "tokens=*" %%x in (subjectrjm2^!numt1^!.txt) do echo %%x>>mnewitems.txt
  187. del subjectrjm2^!numt1^!.txt,subjectrjm1^!numt1^!.txt
  188. )
  189. IF errorlevel 0  (echo                             ……邮件解码……ok &goto old) else (echo no^!^!)
  190. if exist subjectr.txt del subjectr.txt
  191. goto :eof
  192. :old
  193. echo                             ……3、整理邮件……
  194. setlocal enabledelayedexpansion
  195. cd.>newitems.txt
  196. for /f "delims=" %%a in ('sort mnewitems.txt') do (
  197. set xav=%%a
  198. if not ^!xav^! equ ^!vbm^! echo ^!xav^!>>newitems.txt
  199. set vbm=%%a
  200. )
  201. del mnewitems.txt
  202. IF errorlevel 0  (echo                             ……整理邮件……ok) else (echo                             ……整理邮件……no)
  203. goto :eof
  204. :send
  205. start "" _talk.bat
  206. if %email%==y if not exist body.txt echo 没有邮件内容! &goto :eof
  207. if exist body.txt for /f %%a in (body.txt) do set kme=%%a
  208. if not defined kme   echo 没有邮件内容! &goto :eof  
  209. echo.
  210. echo                             ……4、发送邮件……
  211. echo    请事先设置一个文本文件,把信件内容写入,再设置路径。你可以使用txt被动发件,也可以通过命令使用bat发件。
  212. ::call "%ProgramFiles%\WinRAR\RAR.exe"  a  "%userprofile%\桌面\123456.rar"  npslist.txt pslist.txt runn.txt runr.txt
  213. cd  %cd%
  214. blat -install ^!smtp^!  ^!sender^!
  215. blat  ^!cont^!  -to ^!recive^!  -u  ^!sender^!   -base64 -charset Gb2312 -pw ^!pword^!  -subject  ^!subj^!
  216. ::-attach
  217. IF errorlevel 0  (echo                             ……发送邮件……ok&del body.txt>nul) else (echo ……no)
  218. echo.
  219. ping /n 5 127.0.1>nul
  220. goto :eof
  221. :send12
  222. if not exist _sendbbot.bat (
  223. echo blat -install ^!smtp^!  ^!sender^!>>_sendbbot.bat
  224. echo blat  ^!cont^!  -to ^!recive^!  -u  ^!sender^!   -base64 -charset Gb2312 -pw ^!pword^!  -subject  ^!subj^!>>_sendbbot.bat
  225. )
  226. goto :eof
  227. :bbot
  228. echo @echo off>batbot001.bat
  229. for /f "tokens=*" %%a in (newitems.txt) do echo %%a>>batbot001.bat
  230. echo cls>>batbot001.bat
  231. echo echo.>>batbot001.bat
  232. echo echo.>>batbot001.bat
  233. echo echo.>>batbot001.bat
  234. echo echo.>>batbot001.bat
  235. echo echo                    ……我是机器人batbot001,命令执行中……>>batbot001.bat
  236. echo echo.>>batbot001.bat
  237. echo echo.>>batbot001.bat
  238. echo echo.>>batbot001.bat
  239. echo echo       以下是收到的命令和执行的任务:>>batbot001.bat
  240. echo echo   ——————————————————————————————————————>>batbot001.bat
  241. echo findstr /b /v "[a-zA-Z]" newitems.txt>>batbot001.bat
  242. echo echo^.>>batbot001.bat
  243. echo del /f _folist.txt^>nul 2^>nul>>batbot001.bat
  244. echo for /f "tokens=1,2,*" %%%%a in (batbot001.bat) do if "%%%%a"=="执行" echo %%%%b^&set pvar=%%%%c^&findstr /i /b "%%%%b" orderlist.txt^>^>^_folist.txt^&^&for ^/f  "tokens=3*"  %%%%i in (_folist.txt) do echo %%%%i %%%%j^>^>batbot001.bat>>batbot001.bat
  245. echo if defined pvar echo %%pvar%%>>batbot001.bat
  246. echo.>>batbot001.bat
  247. echo del /f _folist.txt^>nul 2^>nul>>batbot001.bat
  248. echo echo ping /n 15 127.0.1^^^>nul^>^>batbot001.bat>>batbot001.bat
  249. echo echo exit^>^>batbot001.bat>>batbot001.bat
  250. echo echo.>>batbot001.bat
  251. start ""  batbot001.bat
  252. ping /n 5 127.0.1>nul
  253. goto :eof
复制代码
OEInboxtoolV6.2.rar
http://pan.baidu.com/share/link?shareid=3835046253&uk=1124163200
作者: cjiabing    时间: 2010-7-13 22:58

甲兵时代原创批处理


OE收件箱监控与主题提取工具


(电脑遥控器,远程批处理)


使用说明



  一、简介
        本工具通过提取邮箱程序Outlook Express 收件箱中邮件的标题与其它联网的电脑或手机进行远程通信,当远端的电脑或手机发送的是可执行的DOS命令时,本工具可以提取并执行该命令,因此,它可以用作远程控制的客户端。当远程控制端为可以联网发送邮件的智能手机时,该手机就变成了电脑的遥控器。
        某天,你出门在外,家里的电脑开着,本程序运行着,那么,你只需用邮件发送一个简单的命令,如“shutdown -s -t 0”,你的电脑就可以关机了,你不必担心你不在家而你的电脑没办法关掉,就这么简单!……
        适用于WINDOWS XP SP3系统;需懂DOS命令;请仔细阅读使用说明。
        本篇为原创,转载请注明出处。 http://hi.baidu.com/cjiabing 甲兵时代,为你服务。

       使用简单描述下:

       1、用过Outlook Express 收发邮件吗?用过就好说。
       2、你需要两个邮箱,假如是A和B。把A设置在Outlook Express 。至于B邮箱你可以在另外一台电脑登陆。
       3、运行本程序,只用设置时间为“1”、和默认模式“n”,摁任意键开始就可以了。
       4、现在用B邮箱给A邮箱发送信息,并注意观察程序运行,这个过程需要一两分钟   :(
       5、比如轮流发送邮件标题如:“你好啊!~”、“执行 QQ”、“执行 千千静听”、“echo   我喜欢批处理之家”、“tasklist”、“执行 关机”的邮件……你就能知道我这个东东是用来做什么的了!~
        二、预先设置
        (一)设置Outlook Express邮件程序
        Outlook Express属于XP系统自带的邮件客户端程序,其设置方法可以参考后面的图文介绍。
        该部分设置主要是设置Outlook Express的账户,也就是把你的邮箱设置到Outlook Express中以便接收邮件。一般按默认设置即可,以下两个选项需设置:
选项——常规——启动时接收和发送邮件——打勾
选项——常规——每隔【1】分钟检查一次新邮件——打勾
        (二)设置本工具OEInboxtool.bat
        1、自动循环时间设置
        程序运行的过程为:读取Outlook Express邮箱——提取邮件标题——以邮件标题为命令执行。这个过程是自动循环的,每循环一次用将近一分钟的时间。
        该时间不准确,只是用于模糊控制运行速度。测试或聊天模式时,为了较快地提取邮件,建议时间设置为1;


        离家外出时,不必频繁地读取邮件,时间可以设置为120以上。

        因为程序访问服务器、接收和读取邮件需要一定的时间,过多、过快的访问服务器,服务器有可能判断为恶意攻击而拒绝访问。
        2、自动发送邮件设置
        有三种模式:默认、聊天和外置。默认为不发送任何邮件。
        1)默认。程序运行时不自动发送邮件,输入“n”。
        2)聊天。程序运行时自动发送邮件,输入“y”。
        设置聊天模式后,主程序释放子程序talk.bat,用于两个邮箱之间的对话。它能自动接收远程邮箱的邮件(标题),并且将你输入的内容写入body.txt,然后自动发送给远程邮箱。因此,talk.bat自动接收和发送邮件,可以当做即时通讯工具使用。
        接收和发送的邮箱设置参考后面内容(或参考附带的图片)。

        3)外置。输入“w”。将邮箱设置的信息独立到主程序外的子程序 _sendbbot.bat 中,以便在需要时通过其它命令调用。可以用来反馈执行命令结果,具体使用参考后面实例。
            三、开始使用
        (一)基本操作

        准备工作:
        1、将本程序OEInboxtool.bat与base64.exe、blat.dll、blat.exe、blat.lib,orderlist.txt放到同一目录下,并且目录名不能有空格。
        2、在另外一台电脑上,或手机上网,用另外一个邮箱[email=aaa@163.com]aaa@163.com[/email],给Outlook Express上的邮箱[email=bbb@163.com]bbb@163.com[/email] 发送邮件,邮件标题(主题)为“执行 千千静听”,注意“执行”后面留一个空格,邮件内容随便填几个字。
        注意,需要两个邮箱,捆绑在Outlook Express上的邮箱[email=bbb@163.com]bbb@163.com[/email]和用于远程发送指令的邮箱[email=aaa@163.com]aaa@163.com[/email],并且确保你的电脑或手机连接互联网。

        开始步骤:
        1、双击运行OEInboxtool.bat,进入设置选项。
        2、◇时间(自动循环时间;默认是60,约2分钟):1
        3、◇模式(是否发送邮件;默认N,聊天Y,外置W):N
        4、摁任意键开始运行监控程序。
        5、尝试向Outlook Express发送一封邮件,标题如,“执行 QQ”、“你好啊,向我开炮!”。
        OEInboxtool.bat自动打开Outlook Express,Outlook Express自动接收邮件。
        Outlook Express接收到邮件,OEInboxtool.bat自动将其转为命令,并交给batbot001.bat执行。

        batbot001.bat能显示中文信息,命令自动在后台执行,并且batbot001.bat会在15秒后自动结束,如不自动结束可能命令尚在执行当中。
        因为我们发送的邮件主题是“执行 千千静听”,故命令将自动搜索千千静听程序并执行。
        其实这个过程只用等待观看即可,全过程由程序自动操作,不需要人去干预。更多实例请往后阅读。

        (二)常用命令
        1、邮件标题的类型
        在设置选项之后,我们只需要用手机给电脑上的邮箱发送邮件即可远程控制电脑。对本程序而言,邮件正文内容不具有任何意义,程序只通过邮件标题发挥作用,因此,你需要了解一些编写邮件标题的方法。
        1)邮件标题是普通的中文,将直接显示邮件标题,可用于聊天发送信息等。如:你好啊,我是甲兵时代。
        2)邮件标题带“执行”字头,用于执行命令列表中的命令。如:“执行 千千静听”将自动搜索并打开千千静听程序。该类命令是根据预先设置好的命令列表执行命令,具体设置参照后面。
        3)邮件标题是DOS命令,该DOS命令将被直接执行。如:“taskkill /f /t /im ttplayer.exe”将被用于关闭千千静听。
        2、命令列表的使用
        为了避免发送邮件时每次都要输入太多的DOS命令,故预先设置了一个命令文本orderlist.txt,只需用邮件发送一定格式的命令词就可以运行相应复杂的组合命令,省时省力。
        1)命令列表指令,用于制作命令列表orderlist.txt的内容格式。
        基本格式:命令词+空格+参数+空格+命令组
        常见类型:命令词+空格+%pvar%+空格+命令组
        示       例:千千静听 %pvar% "D:\Program Files\TTPlayer\TTPlayer.exe"
                         关闭迅雷 %pvar% taskkill /f /t /im Thunder.exe
        当命令需要指定变量时使用“%pvar%”,如:
                         定时关机 %pvar% at %pvar% shutdown -s -f -t 60
        当命令不需要其它变量时可以用“0”或其它符号替代“%pvar%”,如:
                         取消关机 0   shutdown –a
                         QQ   0   "%ProgramFiles%\Tencent\QQ\Bin\QQ.exe"



        2)发件标题指令,发送邮件标题中用以执行命令列表中的特定命令组的指令格式。
        基本格式:声明词+空格+命令词
        常见类型:执行+空格+命令词
        示      例:执行 千千静听
                          执行 QQ
        注意两点:
        第一、发件标题指令中的命令词和命令列表指令中的命令词是对应一致的。如不相同则无法执行命令。
        第二、因为已经设定声明词为“执行”,因此,如果你想呼叫命令列表中的指令,需在每一封邮件的标题前补上“执行”一词,并在其后留一个空格。并且“执行+空格+命令词”只对命令列表起作用。

        3)命令列表的意义
        搜索系统内某个文件的搜索命令,需要发送邮件标题如下的指令:
                for /f "skip=1" %%i in ('wmic logicaldisk where "drivetype='3'" get caption') do (dir /b /a-d /b /s "%%i\*%pvar%*.*" >nul 2>nul >>body.txt)
        显然,该命令太长,如果使用手机发送邮件,一个是命令难记,一个是输入不便。有没有好点的办法呢?有,就是使用命令列表。制作方法如下。
        按照格式要求,预先把该命令复制粘贴到命令列表orderlist.txt文本中,并在该命令前面设置一个“命令词”为“搜索文件”,留一个空格,增加一个搜索变量为“%pvar%”,再留一个空格。保存。结果如下:
                搜索文件 %pvar% for /f "skip=1" %%i in ('wmic logicaldisk where "drivetype='3'" get caption') do (dir /b /a-d /b /s "%%i\*%pvar%*.*" >nul 2>nul >>body.txt)
        制作好命令列表之后就可以使用了。发送邮件标题格式为:搜索文件+空格+要搜索的文件名。如搜索QQ程序,发送邮件标题为:
                搜索文件 qq.exe
        命令列表的意义就在于化繁为简,它可以将复杂的DOS命令变成简单的指令以提高输入效率。命令列表orderlist.txt文件内容可以编辑扩充,丰富本程序的功能,具体参照后面内容。
        命令列表的内容可参照:用于OEInboxtool V6.2命令列表的指令搜集


        3、常用邮件标题命令列举
        以下是我常用的一些邮件主题(执行命令),每行一封邮件,以供参考:
        你好啊,我是甲兵时代
        echo 哈哈,我在饭堂吃饭
        for /r d:\ %%a in (ttplayer.exe) do if exist “%%a” start “” “%%a”
        Start “” “%programfiles%\ttplayer\ttplayer.exe”
        Taskkill /t /f /im ttplayer.exe
        “D:\Program Files\PPStream\PPStream.exe”
        执行 千千静听
        执行 QQ
        执行 关机
        执行 下载
        At 13:50 Shutdown –s –t 30
        Shutdown –s –t 30
        at 19:45 “D:\Program Files\TTPlayer\TTPlayer.exe”
        at 19:45 “D:\Program Files\TTPlayer\TTPlayer.exe”
        Cd.>body.txt&For /r e:\ %%a in (*.jpg) do %%a>>body.txt
        Tasklist>>body.txt
        clean.bat&taskkill /f /t /im ttplayer.exe
        Dir c:\>>body.txt
        call _sendbbot.bat
        _sendbbot.bat
        说明:可以组合后面的命令形成复杂的操作以达到其它目的
        (三)实战实例
        你只需设置好相关内容,运行OEInboxtool.bat,然后躺在床上,通过手机发送邮件,你就可以轻松的远程控制你的电脑了。
        1、远程关机
        使用A邮箱(远程端)给B邮箱(Outlook Express接收端)发送邮件,邮件标题为:
                执行 关机
        邮件内容随意填写。
        运行OEInboxtool.bat,自动循环时间设置为“1”,是否自动发送邮件设置为“N”,摁任意键开始运行。
        解说:程序接收到邮件后将提示倒计时60秒自动关机。如需取消关机请在开始运行中运行命令“shutdown -a”即可取消自动关机。
        以上使用的是命令列表的方式,无需打DOS命令,当然你也可以直接使用DOS命令关机,此时邮件标题为:
                shutdown -s -t 60
        60是倒计时间,直接关机可以不写。


        2、远程定时关机
        运行OEInboxtool.bat,设置选项,然后发送邮件,标题为:
                执行 定时关机 21:01
        解说:程序OEInboxtool.bat将于21:01自动关机。
        假如命令列表orderlist.txt中没有该项,需在命令列表中加入如下一行命令:
                定时关机 %pvar%   sc start schedule&at %pvar% shutdown -s -f -t 60
        “sc start schedule”用于开启计划任务服务,“%pvar%”是用作时间变量。
        如要取消自动关机,只需发送标题如下的邮件:
                执行 取消关机
        取消的命令是“shutdown –a”,一般用于shutdown执行当时取消关机,不懂对计划命令at是否有效,如无效可能要用到at或SCHTASKS命令中的delete参数重新制作命令列表。
        3、远程播放歌曲
        发送邮件标题为:
                执行 播放 刘德华
        解说:程序将自动全盘搜索MP3,生成歌曲列表_mp3lists.txt,然后找到刘德华的歌曲自动播放。事前可以设置用千千静听关联播放MP3,并设置千千静听为程序运行自动播放。
        邮件指令是“执行 播放 歌曲名”,其中,“歌曲名”就是你想听的歌名,或者歌手名。支持模糊搜索,比如“华”,将播放歌名、歌手中带“华”字的歌曲,比如刘德华、周华健、华谊群星、田华、爱我中华、中华民谣、华人群星、胡松华……
        4、远程登陆QQ、电驴下载、打开和关闭程序等
        发送邮件标题为:
                执行 QQ
        需事先设置你的QQ自动登录模式。只是能登陆,无法进行其它操作。
        关闭QQ发送邮件标题为:
                执行 关闭QQ
        解说:在命令列表中,通常,打开程序的命令使用start,如:
                电驴 0 Start "" "%ProgramFiles%\Xtreme\emule.exe"
        但可以直接使用程序路径而不必加命令:
                电驴 0 "%ProgramFiles%\Xtreme\emule.exe"
        在命令列表中,关闭程序,使用taskkill命令来关闭程序的进程,如:
                关闭电驴 0   taskkill /f /t /im emule.exe
        需要注意的是,DOS命令只是能够打开和关闭程序,具体的程序操作如果支持DOS还可以进行下一步操作,但大部分EXE程序都不支持DOS,所以,为了达到更好的效果,你还需对被运行的程序本身进行设置。比如,本程序能够运行电驴,但你还需设置电驴运行自动下载,否则电驴打开了却没有下载。电驴默认程序运行自动下载,但是迅雷则默认不下载,如果你使用迅雷则需事先设置自动下载。
        5、系统检测等
        发送邮件标题为:
                Tasklist>>body.txt& call _sendbbot.bat
        解说:“Tasklist>>body.txt”查看当前所有系统进程,并把结果输入body.txt。
        “call _sendbbot.bat”发送内容为body.txt的邮件到远程邮件。子程序_sendbbot.bat发送的邮件内容是写在body.txt中的内容,故前面把tasklilst的结果写入body.txt。需先在OEInboxtool.bat的“设置选项”中设置“外置”模式,得到发送邮件的子程序_sendbbot.bat,以便随时调用发送邮件。
        通过该封邮件,你可以远程查看系统的进程,其它问题与此类似,如:
                Dir e:\>>body.txt& call _sendbbot.bat
        此命令用于查看系统E盘的内容。再如:
                For %%i in (c:,d:,e:,f do cd /d %%i & for /r %%j in (qq.exe) do if exist %%j echo %%j >>body.txt& call _sendbbot.bat
        用以查找系统上是否存在QQ程序。
        因此,发送邮件的子程序_sendbbot.bat 可以用来反馈信息,将命令执行的结果反馈到发送指令的邮箱上来,方便我们获取远程计算机的信息。
        本程序不仅可以执行简单的命令,也可以执行复杂的命令,你可以使用组合命令来达到更复杂的操作。当然,受邮件标题的限制,命令的长度会受到限制。改变此限制的方法就是使用命令列表,将复杂的命令写入命令列表,然后通过邮件发送简单的命令词就可以执行了。
        通过此例子,你可以得到一个启发,本工具OEInboxtool.bat 相当于一个远程DOS平台,它通过邮件远程发送指令的方式来实现,假如你懂得DOS命令(批处理),你将能够最大的发挥OEInboxtool.bat的作用,这正是OEInboxtool.bat的潜力所在。
        6、聊天
        本工具的聊天其实是两个邮箱之间的邮件通讯,因没有多大的现实意义此处仅做简单的示例。
        1)OEInboxtool.bat的“设置选项”中,将时间设置为“1”,模式为“外置”(输入“w”),然后输入接收和发送邮件的一些信息。监控程序正式运行后得到子程序talk.bat。
        2)使用A邮箱(远程端)给B邮箱(Outlook Express接收端)发送邮件,标题为“我爱北京天安门,伟大毛主席万岁!”,邮件内容随便填。
        3)在弹出的talk.bat 子程序中查收信息,得到内容为“我爱北京天安门,伟大毛主席万岁!”。
        4)在talk.bat中输入你需要发送的内容并回车。
        5)查看接收邮件的A邮箱,你将收到talk.bat发送过来的信息。根据OEInboxtool.bat的运行速度和邮箱接收邮件的速度,一般需要一两分钟时间。
        需要说明的是,发送邮件,只有标题内容是有意义的,邮件正文将无法查收。但通过 talkbat 发送的 body.txt 可以查收。


                四、常见问题
        (一)有关outlook express问题解答
        1、关于outlook express的下载安装?
        我使用的是XP-SP2自带的outlook express6.0,它的默认安装路径是C:\Program Files\Outlook Express\msimn.exe。
        如你的系统没有安装outlook express可以通过以下方式安装:
控制面板——添加WINDOWS组件——outlook express——打勾——确定安装。
        网上可以下载outlook2003,outlook2007,安装Microsoft Office时自带,但不清楚本工具是否支持(一个是路径支持,一个是解码支持)。
        2、关于outlook express的邮箱账号设置
        首先是账号设置,我用的是163邮箱收件,QQ邮箱发件,QQ邮箱收件有时候会出现延迟等问题。
        下面提供这两种邮箱的outlook express设置,其它邮箱的设置请到网上搜索。
1)163邮箱的设置
第一、Outlook Express的设置方法?
http://help.163.com/09/1222/17/5R5GPV6C00753VB8.html
第二、其它问题?
http://help.163.com/special/007525G0/163mail_guide.html?id=2640
2)QQ邮箱的设置
第一、如何开启QQ邮箱的POP服务?
http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=26&&no=308
第二、常用邮件客户端软件设置?
http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=371
第三、其它问题?
http://service.mail.qq.com/cgi-bin/help?id=28
        3、关于outlook express的邮箱功能设置
        基本上不用设置什么,但个别地方稍微设置下方便接收邮件。
选项——常规——启动时接收和发送邮件——打勾
选项——常规——每隔【1】分钟检查一次新邮件——打勾
其它的按照默认和你的需要设置。
        (二)其它常见问题
        1、为什么有时候发送的邮件没有接收到?
部分邮箱如QQ邮箱可能存在服务延迟的现象,也就是你发送的邮件有可能第二天才接收到,或者根本就接收不了。可能同一种邮箱不会出现此类问题,因此建议全部使用同一种邮箱进行接收和发送。
        我通常使用163的邮箱在Outlook Express中接收邮件,而使用QQ邮箱发送指令。我经常遇到一个情况,使用QQ以外的邮箱如163邮箱给一个QQ号发送邮件,经常无法接收到,但其它QQ号则很正常。
        2、聊天和外置这两种模式有什么区别?
聊天与外置的区别就在于,聊天是随时接收和发送邮件,通常是有新的信息内容(根据body.txt确定)就自动发送,受OEInboxtool.bat控制,可以用于逆向反馈信息。
        外置就是将发送邮件的邮箱地址和密码保存到独立的_sendbbot.bat中,不随OEInboxtool.bat运行,只有在使用其它命令调用时运行。
        3、聊天模式的邮件如何设置?
        设置示例:
                            设置选项:
◇设置程序自动循环时间。默认是60(约2分钟):1
◇是否自动发送邮件?不必/聊天/外置(n/y/w):y
      接收邮箱地址(如:[email=987654@163.com]987654@163.com[/email]):[email=978376955@qq.com]978376955@qq.com[/email]
      发件邮箱地址(如:[email=123456@qq.com]123456@qq.com[/email]):[email=272768887@qq.com]272768887@qq.com[/email]
      发件邮箱SMTP(如:smtp.qq.com):smtp.qq.com
      发件邮箱密码(如:123456):123456
      邮件标题(如:你好!):hello
      邮件内容文本路径(如:C:\body.txt):E:\Batch\body.txt
按任意键退出设置并开始执行程序
        需要注意的地方:
        1)自动循环时间设置为“1”以提高提取邮件的速度。
        2)发送邮件(SMTP)服务器端口号通常为“25”,填写如“smtp.qq.com”。
        3)密码填写暂时没有设置星号加以隐藏,并且外置到 _sendbbot.bat中的密码没有加密。因此不建议在本程序中使用重要的邮箱。
        4)默认发送邮件内容使用文本body.txt,把你需要发送的内容保存到body.txt中。
4、使用“执行”类的命令时,提示无法找到系统文件?

可能程序的路径不对,请根据自己系统实际情况修改程序的路径。

本人通常将程序安装在D盘,但许多程序默认安装在系统盘下的"C:\Program Files\"文件夹,如千千静听的默认安装路径是:"C:\Program Files\TTPlayer\TTPlayer.exe"。

修改的办法就是把命令列表文件orderlist.txt中,千千静听 0 "D:\Program Files\TTPlayer\TTPlayer.exe",一行的驱动器“D:\”改为“C:\”或者你自定义安装的路径即可。


        五、声明
        本程序OEInboxtool.bat由甲兵时代所开发,甲兵时代拥有所有版权专利。用于交流学习,改善生活,不得用于商业目的和非法用途。因水平有限,缺陷难免,使用本程序意味着自担风险,由于使用产生任何问题本人一概不负责。
        欢迎访问本人空间:http://hi.baidu.com/cjiabing
作者: breakme    时间: 2010-8-3 19:16     标题: 兄弟,我也在写这个,没想到你先出来一步

兄弟,我也在写这个,没想到你先出来一步

先学习了.
不过我的与Outlook Express无关,不调用Outlook Express程序,也不使用第三方工具,使用的是VBS脚本 +  bat  ,目前已实现::

收邮件执行命令,目前还在实现邮件主体的命令(当然可以加以标题判断,)
另外可以将命令执行的结果然后发送邮件到指定邮箱里面.

我写得头都痛了,原来想找人合作的人,但是没找到合适的

[ 本帖最后由 breakme 于 2010-8-3 19:31 编辑 ]
作者: cjiabing    时间: 2010-8-5 12:34

原帖由 breakme 于 2010-8-3 19:16 发表
兄弟,我也在写这个,没想到你先出来一步

先学习了.
不过我的与Outlook Express无关,不调用Outlook Express程序,也不使用第三方工具,使用的是VBS脚本 +  bat  ,目前已实现::

收邮件执行命令,目前还在实现邮件主 ...

哈哈,我不会写VB哦
作者: xiaoshiwei    时间: 2010-8-7 09:47     标题: 羡慕至极啊

呵呵

原来批处理可以做这么多事情

        看来得加强学习了

不过,平时用的较少,喜欢它批处理式的解决问题
作者: cjiabing    时间: 2010-8-7 09:53

原帖由 xiaoshiwei 于 2010-8-7 09:47 发表
呵呵

原来批处理可以做这么多事情

        看来得加强学习了

不过,平时用的较少,喜欢它批处理式的解决问题


只要你 想得到的,没有做不到的,哈哈,批处理简单好玩!~
花了N久写得哦,新手看看是否有值得学习的东西!~
有空再加一个隐藏窗口的代码……
作者: caruko    时间: 2010-8-7 14:35

其实,OFFICE OUTLOOK可以设置规则,检测到某个邮件主题后执行程序或者脚本。

只不过执行命令自定义的命令也可以做到,如果你对VBA,VBS比较熟,可以去看看这个

http://support.microsoft.com/kb/324568

[ 本帖最后由 caruko 于 2010-8-7 14:43 编辑 ]
作者: 529112036yk    时间: 2010-8-10 23:36

实在是太强大了,佩服!
作者: hfg1977    时间: 2010-8-11 01:30

的确很有用处,谢谢楼主分享啦.
学习用用....
作者: xiaoshiwei    时间: 2010-8-11 22:35     标题: 代表多数人发言————看不懂,但还是要支持

估计多数是看不懂滴
          但确实还是有些用处滴

看到有552的访问量,但顶帖者屈屈几人
            做为看不懂的典型,特来顶贴,呵呵
作者: cjiabing    时间: 2010-8-12 11:30

原帖由 xiaoshiwei 于 2010-8-11 22:35 发表
估计多数是看不懂滴
          但确实还是有些用处滴

看到有552的访问量,但顶帖者屈屈几人
            做为看不懂的典型,特来顶贴,呵呵


哈哈,没关系的啊,想玩的肯定懂!~
1、简单描述下,用过Outlook Express 收发邮件吗?用过就好说。
2、你需要两个邮箱,假如是A和B。把A设置在Outlook Express 。至于B邮箱你可以在另外一台电脑登陆。
3、运行本程序,只用设置时间为“1”、和默认模式“n”,摁任意键开始就可以了。
4、现在用B邮箱给A邮箱发送信息,并注意观察程序运行,这个过程需要一两分钟  :(
5、比如轮流发送标题如:“你好啊!~”、“执行 QQ”、“执行 千千静听”、“echo  我喜欢批处理之家”、“tasklist”、“执行 关机”的邮件……你就能知道我这个东东是用来做什么的了!~

[ 本帖最后由 cjiabing 于 2010-8-13 18:14 编辑 ]
作者: raymai97    时间: 2010-8-12 20:56

楼主真是个高手呀!佩服!
作者: sxw    时间: 2011-2-28 22:46     标题: for

用了一下  显示:
对不起,找不到Outlok Express的收件箱!
作者: drew2003    时间: 2011-12-17 10:38

学习了,好东西
作者: web    时间: 2012-10-16 22:12

批处理简单方便
作者: flaven    时间: 2013-1-9 15:35

真不错,但是批量部署的话要一个个设置outlook express,还是麻烦,要有个与收邮件一体性的bat就更好了
作者: lengyff    时间: 2013-1-26 14:00

真好啊,手机和电脑的思路早就有,但是一直没有实践
谢谢楼主,真是有心人
用短信操作,用手机操作,是个好方向,毕竟手机比电脑多,电话信号比网络覆盖面广泛
简便和效率是重点
作者: 狱渊    时间: 2013-5-1 13:57

都写你的分享
作者: zhshh    时间: 2013-8-23 11:07

使用ftp也行,更省事,但不支持手机




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2