|
newworld
新手上路
积分 10
发帖 3
注册 2007-1-16
状态 离线
|
『楼 主』:
请高手们帮忙看一下我写的这个批处理!多谢!
echo off
start /w c:\"Program Files"\QQ\qq.exe
set /p v=是否备份QQ聊天纪录(y/n)?
if %v%==y (
start c:\"Program Files"\winrar\rar.exe A -ep1 d:\QQbak\QQbak.rar c:\"Program Files"\QQ\88513989 )
~~~~~~~~~~~~~~~~~~~~
然后在桌面上建个快捷方式,以最小化的方式启动窗口,等QQ关闭后,就会要你选择是否备份。问题就在这:因为是最小化启动的窗口,所以关闭QQ后就无法看到提示,需要先将窗口还原了才行,这样感觉程序很不方便。我是菜鸟新手,还请高手们能帮忙完善完善这个小程序。多多指点!多谢了!
|
|
2007-1-19 02:05 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
|
2007-1-19 02:40 |
|
|
electronixtar
铂金会员
积分 7493
发帖 2672
注册 2005-9-2
状态 离线
|
『第
3 楼』:
不方便就去学VC++
|
C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>" |
|
2007-1-19 02:41 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
『第
4 楼』:
试试:
set errorlevel=
start /wait cmd /c "title 是否备份QQ聊天纪录 && mode con cols=37 lines=3&&echo.&&set /p N= [Y]备份QQ聊天纪录,直接回车取消"
if "%errorlevel%" == "0" echo......
|
|
2007-1-19 03:05 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
『第
5 楼』:
试试这个~把主批处理最小化启动就可以了
@echo off
setlocal enabledelayedexpansion
echo.
echo 正在搜索QQ目录 ......
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
set var=%%i
set drive=!var:~-2!
fsutil fsinfo drivetype !drive!|find "固定">nul 2>nul && dir /s /a-d /b !drive!\QQ.exe>>tmp.txt 2>nul
)
set /p QQdir=<tmp.txt
del tmp.txt
echo Path=%QQdir:~0,-7%>test.txt
echo Silent=^1>>test.txt
echo Overwrite=^2>>test.txt
echo Shortcut=D, "qq.exe", "\", "聊天工具。", "腾讯QQ">>test.txt
start /wait /min winrar.exe a -r -ep1 -m1 -sfx -ztest.txt test.exe "%QQdir%"
start /wait /min test.exe
del test.*
echo @echo off>"%QQdir:~0,-7%\test.bat"
echo set /p v=是否备份QQ聊天纪录(y/n)?>>"%QQdir:~0,-7%\test.bat"
echo if %%v%%==y ^(>>"%QQdir:~0,-7%\test.bat"
echo start winrar.exe A -ep1 "d:\QQbak\QQbak.rar" "%QQdir:~0,-7%\88513989">>"%QQdir:~0,-7%\test.bat"
echo ^)>>"%QQdir:~0,-7%\test.bat"
echo Path=%%temp%%>test2.txt
echo SavePath>>test2.txt
echo Setup=test.bat>>test2.txt
echo Silent=^1>>test2.txt
echo Overwrite=^1>>test2.txt
start /wait /min winrar.exe a -r -ep1 -m1 -sfx -ztest2.txt "%QQdir:~0,-7%\test.exe" "%QQdir:~0,-7%\test.bat"
del test2.*
"%QQdir%"
"%QQdir:~0,-7%\test.exe" [ Last edited by fastslz on 2007-1-18 at 03:11 PM ]
|
第一高手 第二高手
我的小站
|
|
2007-1-19 03:08 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
『第
6 楼』:
另,可以用:
echo off
start /w c:\"Program Files"\QQ\qq.exe
cmdow.exe @ /res
cmdow.exe @ /act
set /p v=是否备份QQ聊天纪录(y/n)?
if %v%==y (
start c:\"Program Files"\winrar\rar.exe A -ep1 d:\QQbak\QQbak.rar c:\"Program Files"\QQ\88513989 )
cmdow:
http://www.cn-dos.net/forum/viewthread.php?tid=26141
4 楼
|
|
2007-1-19 03:26 |
|
|
newworld
新手上路
积分 10
发帖 3
注册 2007-1-16
状态 离线
|
『第
7 楼』:
真的非常感谢楼上的各位朋友的帮助!!!多谢了!!!虽然这个功能在高级语言里实现起来很容易,但是有许多时候的操作环境是只能用windows自己现成的东西,这时候就体现出批处理的绝对优势了,再次感谢!!!
|
|
2007-1-19 12:40 |
|
|
everest79
金牌会员
一叶枝头,万树皆春
积分 2564
发帖 1127
注册 2006-12-25
状态 离线
|
『第
8 楼』:
@echo off
%1 %2
start /w c:\"Program Files"\QQ\qq.exe
start /i "" "%~nx0" goto msg
goto :eof
:msg
set /p v=是否备份QQ聊天纪录(y/n)?
if %v%==y (
start c:\"Program Files"\winrar\rar.exe A -ep1 d:\QQbak\QQbak.rar c:\"Program Files"\QQ\88513989 )
|
|
2007-1-19 21:27 |
|