找回密码
 加入
搜索
查看: 2733|回复: 3

[系统综合] 【已解决】@sw_hide 在此句DOS代码上失效,请高手看看能否不弹黑窗

[复制链接]
发表于 2012-7-25 17:21:02 | 显示全部楼层 |阅读模式
本帖最后由 elexy 于 2012-7-26 16:48 编辑

Run(@ComSpec & " /c " & 'ntsd -c q -pn explorer.exe', "", @SW_HIDE)

win7上面确实不弹黑窗,主要是xp上面会弹
发表于 2012-7-26 09:15:06 | 显示全部楼层
本帖最后由 xiehuahere 于 2012-7-26 12:54 编辑

ntsd属于外部程序调用,会新开一个shell运行(手动试试就知道),而用Run命令中的@SW_HIDE只会隐藏当前运行命令的那个DOS窗口,新开的窗口隐藏不掉。
建议对于外部程序(非DOS内置命令)使用ShellExecute来执行:
ShellExecute("NTSD", "-c q -pn explorer.exe", @SystemDir, "open", @SW_HIDE)
ShellExecute不会先打开命令窗口,然后再从DOS窗口执行命令,而是直接执行外部程序的。所以@SW_HIDE就是直接针对这个外部程序运行窗口的。
当然,根据你的情况,考虑是否要使用:ShellExecuteWait
发表于 2012-7-26 10:11:36 | 显示全部楼层
楼上正解哈。。
发表于 2012-7-26 10:12:08 | 显示全部楼层
入门容易精通难,日积月累超AFAN------经典哈。。
发表于 2012-7-26 12:55:53 | 显示全部楼层
回复 4# menfan1


    超 menfan 也可以,拿出你的大号来啊
 楼主| 发表于 2012-7-26 16:47:54 | 显示全部楼层
本帖最后由 elexy 于 2012-7-26 16:56 编辑

谢谢二楼,正解!!! win7没黑窗因为win7压根就没ntsd
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-30 05:23 , Processed in 0.221933 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表