中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-18 07:07
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 可以最小化运行的批处理 查看 11,492 回复 28
16 发表于 2007-01-20 09:18 ·  中国 广东 东莞 电信
银牌会员
★★★
积分 1,179
发帖 442
注册 2006-09-09 22:47
UID 62249
状态 离线
Originally posted by tghksj at 2007-1-18 08:52:
HUNRYBECKY 老师

电信网开你给的地址有点困难,麻烦附件一个,谢谢:)



算不上老师,你可以加入我的群。里面有,群号是:29946542
17 发表于 2007-01-20 09:23 ·  中国 广东 广州 天河区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
UID 74552
性别 男
状态 离线
一定是的啦,做不到完全隐藏
18 发表于 2007-01-20 09:54 ·  中国 天津 电信
初级用户
积分 97
发帖 43
注册 2005-07-25 22:07
UID 41055
状态 离线
Originally posted by everest79 at 2007-1-20 08:31:
当你双击执行时这个批处理只会执行以一代码

@echo off&&mode con cols=15 lines=1
%1 %2
start /min /i "" "%~nx0" goto min&&goto :eof

...


还是不懂,我加入引用一个外部命令后,再关闭竟出现两个相同窗口,请问:如加入一个
call QQ.exe

这样的得加在什么地方用?谢谢!
19 发表于 2007-01-20 10:22 ·  中国 广东 广州 天河区 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
UID 74552
性别 男
状态 离线
@echo off&&mode con cols=15 lines=1
%1 %2
start /min /i "" "%~nx0" goto min&&goto :eof

:min
start "" "qq.exe"
exit
20 发表于 2007-01-20 12:06 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
UID 44210
状态 离线
Originally posted by HUNRYBECKY at 2007-1-19 20:14:



模仿的这个不是真正的隐藏,效果不好。

我的标题是:可以最小化运行的批处理
不是:可以隐藏运行的批处理

很多时候只要求批处理最小化运行,而不是隐藏运行

[ Last edited by zh159 on 2007-1-19 at 11:08 PM ]
21 发表于 2007-01-20 21:01 ·  中国 天津 电信
初级用户
积分 97
发帖 43
注册 2005-07-25 22:07
UID 41055
状态 离线
你好两位高人,请帮我看看如何把你们这代码应用到我这情况中去。
http://www.cn-dos.net/forum/viewthread.php?tid=26896&fpage=1
22 发表于 2007-06-07 13:47 ·  中国 广东 佛山 电信
高级用户
★★
我思故我在
积分 512
发帖 228
注册 2007-01-21 10:31
UID 77225
性别 男
状态 离线
学习了
我确实是只菜鸟,而且这里X人太多,所以我不敢装X。谁要再说我装X,我就XXOO他。
23 发表于 2007-06-08 12:51 ·  中国 广东 佛山 电信
高级用户
★★
我思故我在
积分 512
发帖 228
注册 2007-01-21 10:31
UID 77225
性别 男
状态 离线
如果只要求最小化,那么
@echo off
start %0 /min

这样不是很简洁?
我确实是只菜鸟,而且这里X人太多,所以我不敢装X。谁要再说我装X,我就XXOO他。
24 发表于 2007-06-08 16:36 ·  中国 江苏 连云港 电信
高级用户
★★★
前进者
积分 641
发帖 303
注册 2007-01-10 02:57
UID 76009
性别 男
状态 离线
我想问一个,为啥要用到%1和%2呢,有点不解,哪位帮忙解释一下好吗?
我相信总有一天,总会遇到一个人可以相濡以沫、相吻以湿!
25 发表于 2007-06-08 17:09 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
UID 75048
性别 男
状态 离线
Originally posted by qinbuer at 2007-6-8 12:51 PM:
如果只要求最小化,那么
@echo off
start %0 /min

这样不是很简洁?



首先,直接start %0 /min 并不能启动原来的批处理,需要start "" %0 /min 之类的;

第二,/min放到后面是无效的,放到前面start /min "" %0;

第三,直接执行这个代码会产生递归效果,而且直接使用start调用bat的话,并不是平常的cmd /c而是cmd /k来执行批处理,就是批处理运行完所有代码后不会退出,这样就会使得cmd窗口弹出一大堆,可以试试,死机别说我……


To楼上:

%1 %2是上次start调用批处理时传递的启动参数:
start /min /i "" "%~nx0" goto min
这里%1和%2分别对应goto和min了;

那么被start调用的批处理执行%1 %2时就等于执行goto min,就跳转到:min标签而不再次执行start以免产生递归效果
本帖最近评分记录 (共 3 条) 点击查看详情
评分人分数时间
oilio +3 2007-06-08 18:48
qinbuer +2 2007-06-09 02:14
26933062 +4 2007-06-12 14:14
正在潜水修练的批处理小白
26 发表于 2007-06-08 18:48 ·  中国 江苏 连云港 电信
高级用户
★★★
前进者
积分 641
发帖 303
注册 2007-01-10 02:57
UID 76009
性别 男
状态 离线
谢谢楼上的朋友的解释,我下班回去研究下。
我相信总有一天,总会遇到一个人可以相濡以沫、相吻以湿!
27 发表于 2007-06-09 21:10 ·  中国 广东 深圳 电信
初级用户
★★
积分 167
发帖 95
注册 2007-05-06 09:19
UID 87628
性别 男
状态 离线
都不是隐藏了`~只是最小化了似的`~~
28 发表于 2009-06-15 16:12 ·  中国 广东 佛山 联通
初级用户
积分 38
发帖 20
注册 2008-04-11 12:01
UID 115584
性别 男
状态 离线
start /min /i "" "%~nx0" goto min
===============
我想问一下,这个“goto min”前边再加一些无意义字符的话,会出错,并反复运行自身。
srtat后面跟的只能是“goto min”?
因为我刚刚想试能不能调出 %1、%2、%3 之类的……

好象挖旧帖是不对的,开新帖又浪费资源……版主大人有大量
29 发表于 2010-04-11 19:10 ·  中国 广东 广州 电信
初级用户
★★
积分 89
发帖 76
注册 2009-12-13 13:41
UID 156499
性别 男
状态 离线
我也想不明白这里的%1和%2?

有谁可以告诉我的?
论坛跳转: