![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-12 18:46 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]经过批处理用手机控制电脑 |
| 可打印版本 2,775 / 16 |
| 第1楼 cjiabing | 发表于 2010-02-28 21:46 |
| 新手上路 发帖 18 积分 19 | |
|
[求助]经过批处理用手机控制电脑 一直想弄个手机和电脑互动的东东,可能力有限,发个帖,大家一起来研究研究吧。
大概构思是这样的,出门的时候忘记关电脑了,但最近三天可能不回家,想通过手机发送一条指令给电脑,说,电脑,我不回家,你关机睡觉吧。批处理如何实现此功能? 电脑和电脑之间可以通过浏览器、聊天工具等方式通信,手机和手机之间可以通过手机号码通信。手机和电脑之间通过什么方式通信呢? 1、飞信:可以在电脑上发送免费短信,也可以在智能手机上安装飞信。 2、QQ:电脑和手机上的QQ都已经很普及了。 3、邮件:现在手机同样很轻松的就可以接收邮件。 以上是三种常见的手机和电脑的通信方式,可见,手机和电脑之间的通信已经大概的有了一个基础,那么,我们的批处理能够在中间扮演什么角色呢? 飞信命令行版、QQ命令行版、邮件命令行版我都找到了。飞信命令行版给我弄丢失了,可以再找。QQ命令行版可以用,但似乎它和官方版本的一样是独立的,需要手工操作,批处理无法“嵌入”它的程序里面(可能我的能力有限),因此无法预先设定QQ号码和密码,无法导入和导出通信内容。命令行版的邮件我用的是blat.exe,但目前我只弄懂发送邮件,无法搞清楚怎么接收邮件。 以邮件作为媒介连通电脑和手机(智能机),在电脑上批处理配合blat可以发送邮件。比如,我用手机发送邮件给电脑“电脑,执行关机”——转换成代码:Dear007,shutdown -s。电脑开机一直执行一个批处理,专门用来监控邮箱,当其接收到命令“Dear007,shuodown -s”时,分析dear007为电脑名称,“shutdown -s”为执行命令,接收到命令后,批处理首先自动回复一封邮件给手机,“收到!马上执行!”,并于一分钟后开始执行关机命令。 整个过程,需要一个监控邮箱的P,需要实现接收和分析邮件的P,需要发送邮件的P,需要执行命令的P。发送邮件的P已经可以实现,但接收和分析的P我还没搞定,目前没有具体的头绪,想请教众位高手,接受和分析邮件具体如何实现?最好具有很强的可操作性,代码也得,工具也得,发一点出来,大家一起完成这个有趣的试验,让批处理也实现智能化!~ [ Last edited by cjiabing on 2010-2-28 at 21:49 ] |
|
| 第2楼 jarry0932 | 发表于 2010-03-01 00:37 |
| 初级用户 发帖 122 积分 128 | |
|
楼主实在太有想象力了…佩服…
|
|
| 第3楼 lotus516 | 发表于 2010-03-01 11:24 |
| 高级用户 发帖 246 积分 551 | |
|
回楼上,这个是完全可能的!
用邮件比较好实现,因为电脑上分析QQ和飞信的包是比较难的,而邮件可以用主题(关键字)来实现,是比较容易的! 再加上远程开关机,这完全是智能化的电脑了! |
|
| 第4楼 lotus516 | 发表于 2010-03-01 11:37 |
| 高级用户 发帖 246 积分 551 | |
| 第5楼 cjiabing | 发表于 2010-03-01 16:26 |
| 新手上路 发帖 18 积分 19 | |
|
只是登陆邮箱没有用呢,无法读取新邮件,我现在在研究outlook,遇到个问题,就是把htm转换成txt,不好弄
|
|
| 第6楼 HAT | 发表于 2010-03-01 21:04 |
| 版主 发帖 5,017 积分 9,023 | |
|
把网页文件转换为纯文本的工具HtoX32c
http://www.cn-dos.net/forum/viewthread.php?tid=25122 |
|
| 第7楼 cjiabing | 发表于 2010-03-01 22:33 |
| 新手上路 发帖 18 积分 19 | |
|
呵呵,那个太复杂了,我直接findstr到要点,现在得到以下信息:
Subject: =?gb2312?B?u7bTrcq508MgT3V0bG9vayBFeHByZXNzIDY=?= Subject: =?gbk?B?u/rG98jL?= Subject: 个人简历账户通知 Subject: =?gbk?B?xOO6w6OsztLKx8X6tKbA7Q==?= Subject: dear007:dir c:\ Subject: =?gbk?B?Y3Nib3QgZWNobyDO0srHt7S/1r6r06I=?= Subject: =?gbk?B?Y3Nib3QgY3Nib3QgZWNobyC57SUwIGNzYm90?= Subject: =?gbk?B?16q3oqO6UmU6IGRlYXIwNzogZWNobyDO0srHu/o=?= Subject: =?gbk?B?ZGVhcjA3OiBlY2hvIM7Syse7+sb3yMtkZWFyMDA3?= 要用base64解码,没有成功使用过,楼上的给个方案啊? |
|
| 第8楼 zlsanhong | 发表于 2010-03-05 23:29 |
| 新手上路 发帖 14 积分 15 | |
| 第9楼 HAT | 发表于 2010-03-05 23:45 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 8 楼 楼主的代码都快搞定了,你咋说不行呢?
http://bbs.bathome.net/thread-7243-1-1.html |
|
| 第10楼 zlsanhong | 发表于 2010-03-07 11:30 |
| 新手上路 发帖 14 积分 15 | |
|
引用:
原帖由 lxzzr 于 2010-3-4 13:44 发表 可以选择IE等工具,你的手机可以上网吧??在自己的电脑上架设个小网站,然后......(我用N70时试过,效果还可以...) BOSS 请问用的是IIS假设服务器么 ? 然后怎么搞呢。。这是个最好的输入方式。。。 最好是能用手机将文字发送并保存为TXT文件到电脑上。。如此一来。设个批处理在电脑上一直运行。 当发现这个文件的时候。。。哈哈。。就处理相应的批处理。。妞啊。。。 关键是如何将文字用手机发送并保存到电脑上呢? |
|
| 第11楼 mgq | 发表于 2010-03-07 20:02 |
| 中级用户 发帖 103 积分 206 来自 广东 肇庆 | |
|
其实用QQ控制就是一个最好的办法:
1.申请两个专用的QQ,暂且叫主控端,接收端. 2.主控端在手机上,接收端在电脑. 3.两个QQ只加对方为好友,然后禁止任何人加为好友.以免混乱. 4.常规项选择"允许消息来时自动控制弹出窗口" 原理: 在手机是运行主控端QQ,电脑运行接收端.手机发出信号QQ信息,电脑接收后弹出窗口,并且最大化用 nircmd.exe 来模拟鼠标动作,把QQ窗口的内容复制到TXT文档,然后用批处理读取TXT内容,然后.... 以下这段代码在本机能正常控制酷狗音乐,而且能把执行结果返回到手机上. 需要第三方软件, cmdow.exe nircmd.exe 以下代码供参考,不一定适用于其他机.写得很乱,不好意思. @echo off Setlocal EnableDelayedExpansion cmdow @ /min rem 设置主控制端的QQ名称(手机上的QQ名称) set qq=主控端 for /f %%i in ('cmdow /t ^|findstr /i "qq" ^|findstr /i "!qq!"') do cmdow %%i /cls :chongfu cls title 正在接收手机信息 cmdow /t |findstr /i "!qq!" >nul &&goto kongji nircmd wait 500 goto chongfu :kongji for /f %%a in ('cmdow /t ^|findstr /i "!qq!"') do cmdow %%a /act /max nircmd setcursor 500 500 nircmd sendmouse right click nircmd setcursor 510 490 nircmd sendkey a press rem 清空剪贴板 nircmd clipboard clear nircmd sendmouse right click nircmd sendkey c press nircmd clipboard addfile "chengshu.txt" set jcb= set tkyc= for /f "skip=3" %%a in ('type chengshu.txt ^|findstr /i /v "( http"' ) do set jcb=%%a del /q chengshu.txt set tkyc=!jcb! set tkyc=!jcb! 错误,未配置该代码 if /i "!jcb!" == "kg" goto kg if /i "!jcb!" == "kpl" set tkyc=!jcb! 酷狗 播放/暂停 &call :chuowu &goto kpl if /i "!jcb!" == "kup" set tkyc=!jcb! 酷狗 上一曲 &call :chuowu &goto kup if /i "!jcb!" == "kdo" set tkyc=!jcb! 酷狗 下一曲 &call :chuowu &goto kdo if /i "!jcb!" == "ckg" set tkyc=!jcb! 结束酷狗 &call :chuowu &goto ckg nircmd clipboard set "!tkyc!" call :kiuy goto chongfu :kg start "" "D:\Program Files\KuGou\KuGou2010\KuGoo.exe" :kgqf cmdow |findstr /i "KuGoo">nul ||( nircmd wait 1000 goto kgqf ) nircmd clipboard set "!jcb! 酷狗音乐 已启动" call :kiuy goto chongfu :ckg for /f %%a in ('cmdow ^|findstr /i "kugoo"') do cmdow %%a /cls goto chongfu :kpl cmdow /t |findstr /i "kugoo" >nul ||goto chongfu for /f %%a in ('cmdow /t ^|findstr /i "kugoo"') do cmdow %%a /act echo CREATEOBJECT^("WSCRIPT.SHELL"^).SENDKEYS "^"+"%%"+"{f5}" >kpl.vbs echo createobject^("scripting.filesystemobject"^).deletefile wscript.scriptfullname >>kpl.vbs start "" kpl.vbs goto chongfu :kup cmdow /t |findstr /i "kugoo" >nul ||goto chongfu for /f %%a in ('cmdow /t ^|findstr /i "kugoo"') do cmdow %%a /act echo CREATEOBJECT^("WSCRIPT.SHELL"^).SENDKEYS "^"+"%%"+"{left}" >kup.vbs echo createobject^("scripting.filesystemobject"^).deletefile wscript.scriptfullname >>kup.vbs start "" kup.vbs goto chongfu :kdo cmdow /t |findstr /i "kugoo" >nul ||goto chongfu for /f %%a in ('cmdow /t ^|findstr /i "kugoo"') do cmdow %%a /act echo CREATEOBJECT("WSCRIPT.SHELL").SENDKEYS "^"+"%%"+"{right}" >kdo.vbs echo createobject^("scripting.filesystemobject"^).deletefile wscript.scriptfullname >>kdo.vbs start "" kdo.vbs goto chongfu :chuowu nircmd clipboard set "!tkyc!" :kiuy rem 以下一行是分辨率为 1024*768 鼠标的位置其它请自行摸索. nircmd setcursor 500 650 nircmd sendmouse right click nircmd sendkey p press nircmd sendkey enter press rem 结束主控方QQ窗口 for /f %%a in ('cmdow /t ^|findstr /i "!qq!"') do cmdow %%a /cls nircmd clipboard clear |
|
| 第12楼 mgq | 发表于 2010-03-07 20:09 |
| 中级用户 发帖 103 积分 206 来自 广东 肇庆 | |
|
再补充一下简单操作:
在手机QQ输入以下命令来控制酷狗,每次只能输入一个命令. KG 启动酷狗 kpl 酷狗 播放/暂停 kup 酷狗 上一曲 kdo 酷狗 下一曲 ckg 结束酷狗 |
|
| 第13楼 000000000000000 | 发表于 2010-03-07 22:49 |
| 初级用户 发帖 42 积分 49 | |
|
飞信机器人实现命令式互动
http://www.hiadmin.com/?p=469 |
|
| 第14楼 cjiabing | 发表于 2010-03-12 02:26 |
| 新手上路 发帖 18 积分 19 | |
Originally posted by mgq at 2010-3-7 20:09: 见识了,向你学习,可惜我只懂得P!~ |
|
| 第15楼 cjiabing | 发表于 2010-03-12 02:29 |
| 新手上路 发帖 18 积分 19 | |
|
@echo off&setlocal enabledelayedexpansion
title OE收件箱监控与主题提取工具 echo. echo. echo. echo OE收件箱监控与主题提取工具 echo 设置选项 echo by cjiabing cmd@xp echo. echo. echo 时间控制:设置程序自动循环的时间。默认是60(约2分钟)。 set /p timec= 时间设置: if defined timec (goto set) else (set timec=60) :set echo.&set /p email= 是否设置自动发送邮件?默认不设置。(y/n): if %email%==y (call :mail) else (set cmail=echo 不发送邮件) echo.&echo 执行程序:添加随程序执行的程序。默认是执行收件指令的batbot001.bat。 set /p Performer= 程序设置: if defined Performer (goto set1) else (goto set2) exit :set1 setlocal enabledelayedexpansion set rdm=%random% for /f "skip=49 tokens=*" %%a in ('type %0') do echo %%a>>OETool^!rdm^!.bat echo start ^"^" batbot001^.bat>>OETool^!rdm^!.bat echo start ^"^" %Performer%>>OETool^!rdm^!.bat echo ping ^/n 5 127^.0^.1^>nul>>OETool^!rdm^!.bat echo goto ^:eof>>OETool^!rdm^!.bat echo.&echo 退出设置并开始执行程序&pause>nul start "" OETool^!rdm^!.bat&exit :set2 setlocal enabledelayedexpansion set rdm=%random% for /f "skip=49 tokens=*" %%a in ('type %0') do echo %%a>>OETool^!rdm^!.bat echo start ^"^" batbot001^.bat>>OETool^!rdm^!.bat echo ping ^/n 5 127^.0^.1^>nul>>OETool^!rdm^!.bat echo goto ^:eof>>OETool^!rdm^!.bat echo.&echo 退出设置并开始执行程序&pause>nul start "" OETool^!rdm^!.bat&exit set cmail=call :send echo.&echo 发件设置:设置程序自动发送邮件。默认不发送。 set /p smtp= SMTP/POP3(如:smtp.qq.com): set /p sender= 发送邮箱地址(如:cjiabing@qq.com): set /p recive= 接收邮箱地址(如:cjiabing@qq.com): set /p pword= 发件邮箱密码(如:123456): set /p subj= 邮件标题(如:cjiabing@qq.com): set /p cont= 邮件内容文本路径:(如:C:\body.txt) goto :eof @echo off&setlocal enabledelayedexpansion title OEInboxtool V4.4(通用版) :start echo. echo. echo OEInboxtool V4.4(通用版) echo by cjiabing cmd@xp echo. echo. echo. echo ※需Outlook Express、base64、blat等第三方工具支持。 echo ※Outlook Express邮箱设置为每隔一分钟检查一次新邮件。 echo ※用另外一个邮箱按照标准程式给Outlook Express发邮件。 echo ※只识别标题,不识别内容,且标题的字数和格式受限。 echo ※如发送标题是“shutdown -s -t 0”将使你电脑自动关机。 echo ※使用须自担责任,禁止用于非法目的和行为。 echo. echo. ping /n 5 127.0.1>nul call :try set jici=0 :loop set /a jici+=1 echo. echo ——开始第“%jici%”轮任—— ping /n ^!timec^! 127.0.1>nul echo. call :sub echo. IF errorlevel 0 (echo 【第“%jici%”轮任务完成,将重新开始任务,退出请直接关闭】) else (echo no^!^!) echo. echo —————————————————————————————————————— if exist newitems.txt call :bbot if %jici% lss 13 goto loop taskkill /f /t /im msimn.exe ping /n 10 127.0.1>nul goto start :try echo. if exist "%ProgramFiles%\Outlook Express\msimn.exe" start /min "" "%ProgramFiles%\Outlook Express\msimn.exe" ping /n 5 127.0.1>nul echo ……初始检测…… if not exist "%ProgramFiles%\Outlook Express\msimn.exe" echo 对不起,找不到你的Outlook Express程序!&ping /n 5 127.0.1>nul&exit if not exist base64.exe echo 对不起,找不到你的base64.exe程序!&ping /n 5 127.0.1>nul&exit if not exist "%USERPROFILE%\Local Settings\Application Data\Identities\{1C7149FB-17FD-4ED9-B46C-B7C800F767FF}\Microsoft\Outlook Express\收件箱.dbx" echo 对不起,找不到Outlook Express的收件箱!&ping /n 5 127.0.1>nul&exit IF errorlevel 0 echo ……初始检测……ok goto :eof :sub echo. echo ……1、提取邮件…… if exist newitems.txt type newitems.txt>>Readmessageslog.txt del 收件箱.dbx,firstinbox.txt,editinbox.txt,subjectr.txt,newitems.txt>nul 2>nul 1>nul if exist "%ProgramFiles%\Outlook Express\msimn.exe" start /min "" "%ProgramFiles%\Outlook Express\msimn.exe"&ping /n 30 127.0.1>nul setlocal enabledelayedexpansion for /l %%a in (1,2,10000) do ( set cmt=%%a if ^!jici^!==^!cmt^! goto cmt1 ) goto cmt2 :cmt1 taskkill /f /t /im msimn.exe ping /n 10 127.0.1>nul move "%USERPROFILE%\Local Settings\Application Data\Identities\{1C7149FB-17FD-4ED9-B46C-B7C800F767FF}\Microsoft\Outlook Express\收件箱.dbx" ^!cd^! goto cmt3 :cmt2 copy "%USERPROFILE%\Local Settings\Application Data\Identities\{1C7149FB-17FD-4ED9-B46C-B7C800F767FF}\Microsoft\Outlook Express\收件箱.dbx" ^!cd^! :cmt3 ren %cd%\收件箱.dbx firstinbox.txt for /f "tokens=*" %%a in ('type firstinbox.txt') do echo %%a>>editinbox.txt for /f "tokens=2*" %%a in ('findstr /i /b "Subject" editinbox.txt') do echo %%a %%b>>subjectr.txt del firstinbox.txt,editinbox.txt>nul 2>nul 1>nul if not exist subjectr.txt echo 收件箱没有邮件 &goto :eof if exist subjectr.txt %cmail% cd.>mnewitems.txt findstr /v "^=?gbk?B?" subjectr.txt>>mnewitems.txt setlocal enabledelayedexpansion set numt1=0 findstr "^=?gbk?B?" subjectr.txt>nul 2>nul 1>nul &IF errorlevel 0 echo ……提取邮件……ok &goto gbkb goto :eof :gbkb echo. echo ……2、邮件解码…… if exist subjectr.txt for /f "tokens=*" %%i in ('findstr "^=?gbk?B?" subjectr.txt') do ( set /a numt1+=1 echo ^!numt1^!>nul set fjmmd=%%i&echo ^!fjmmd:~8,400^!>subjectrjm1^!numt1^!.txt base64 -d -i subjectrjm1^!numt1^!.txt -o subjectrjm2^!numt1^!.txt for /f "tokens=*" %%x in (subjectrjm2^!numt1^!.txt) do echo %%x>>mnewitems.txt del subjectrjm2^!numt1^!.txt,subjectrjm1^!numt1^!.txt ) IF errorlevel 0 (echo ……邮件解码……ok &goto old) else (echo no^!^!) if exist subjectr.txt del subjectr.txt goto :eof :old echo ……3、整理邮件…… setlocal enabledelayedexpansion cd.>newitems.txt for /f "delims=" %%a in ('sort mnewitems.txt') do ( set xav=%%a if not ^!xav^! equ ^!vbm^! echo ^!xav^!>>newitems.txt set vbm=%%a ) del mnewitems.txt IF errorlevel 0 (echo ……整理邮件……ok) else (echo ……整理邮件……no) goto :eof :send echo. echo ……4、发送邮件…… echo 请事先设置一个文本文件,把信件内容写入,再设置路径。你可以使用txt被动发件,也可以通过命令使用bat发件。 ::call "%ProgramFiles%\WinRAR\RAR.exe" a "%userprofile%\桌面\123456.rar" npslist.txt pslist.txt runn.txt runr.txt cd %cd% blat -install ^!smtp^! ^!sender^! blat ^!cont^! -to ^!recive^! -u ^!sender^! -base64 -charset Gb2312 -pw ^!pword^! -subject ^!subj^! ::-attach IF errorlevel 0 (echo ……发送邮件……ok) else (echo ……no) echo. ping /n 5 127.0.1>nul goto :eof :bbot echo @echo off>batbot001.bat echo echo.>>batbot001.bat echo echo ……我是执行机器人batbot001……>>batbot001.bat echo echo.>>batbot001.bat echo echo —————————————————————————————————————>>batbot001.bat for /f "tokens=*" %%a in (newitems.txt) do echo %%a>>batbot001.bat echo ping /n 10 127.0.1^>nul>>batbot001.bat echo exit>>batbot001.bat start "" batbot001.bat ping /n 5 127.0.1>nul goto :eof [ Last edited by cjiabing on 2010-3-13 at 16:40 ] |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |