Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 当我延迟启动批处理文件时,如何停止出现在桌面上的cmd窗口?_Batch File_Invisible_Minimized - Fatal编程技术网

Batch file 当我延迟启动批处理文件时,如何停止出现在桌面上的cmd窗口?

Batch file 当我延迟启动批处理文件时,如何停止出现在桌面上的cmd窗口?,batch-file,invisible,minimized,Batch File,Invisible,Minimized,这是我的球棒。一切正常,除了倒计时时我看到屏幕上的黑色窗口 @echo off timeout /nobreak /t 8 > nul start /d "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Skype\" Skype.lnk exit Ps:/min不起作用,即使我右键单击程序文件中的skype.lnk并将其设置为“启动为最小化”,skype也不会启动最小化 提前谢谢你 我还没有测试过这个,但我认为它应该可以工作。这

这是我的球棒。一切正常,除了倒计时时我看到屏幕上的黑色窗口

@echo off
timeout /nobreak /t 8 > nul
start /d "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Skype\" Skype.lnk
exit
Ps:
/min
不起作用,即使我右键单击程序文件中的
skype.lnk
并将其设置为“启动为最小化”,skype也不会启动最小化


提前谢谢你

我还没有测试过这个,但我认为它应该可以工作。这是一个batch+JScript+batch混合脚本。用
.bat
扩展名保存此文件,并告诉我它是否适合您。如果没有,我会做一些测试

@if (@a==@b) @end /*

:: batch portion

@echo off
tasklist /fi "IMAGENAME eq cscript.exe" | find /i "cscript.exe" >NUL || (
    start "" cscript /nologo /e:jscript "%~f0"
    exit
)
:: ping -n seconds + 1 (because first ping result is instant)
ping -n 9 localhost > nul
start /d "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Skype\" Skype.lnk
exit

:: JScript portion */
var sh = new ActiveXObject("WScript.Shell");
sh.Run(WSH.ScriptFullName, 0);
WSH.Sleep(100);
我将尝试描述脚本的工作流程

  • cmd batch:用户通过双击或在
    cmd
    提示符下输入
    batfile.bat
    启动批处理脚本

  • 脚本检查任务列表中是否有
    cscript.exe
    。事实并非如此

  • 脚本使用JScript解释器而不是cmd批处理解释器重新启动自身。当前cmd解释退出

  • JScript:WScript.Shell对象在隐藏的非阻塞过程中使用cmd解释器重新启动批处理脚本

  • 暂停100毫秒后,JScript到达文件末尾并退出。这应该是最后一个可见窗口

  • 不可见cmd批处理:脚本检查任务列表中是否有
    cscript.exe
    。JScript此时仍在暂停,因此
    cscript.exe
    确实存在

  • 你自己去吧。。。持续8秒

  • 在非阻塞过程中激活Skype快捷方式

  • 批处理脚本退出


  • 欢迎来到S.O.艾迪。因为你们才刚刚开始,你们应该看到把答案标记为已接受。