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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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 批处理文件/Windows 7-故意最小化打开UAC提示_Batch File_Windows 7 X64_Uac - Fatal编程技术网

Batch file 批处理文件/Windows 7-故意最小化打开UAC提示

Batch file 批处理文件/Windows 7-故意最小化打开UAC提示,batch-file,windows-7-x64,uac,Batch File,Windows 7 X64,Uac,有许多用户在后台而不是前台打开UAC提示。嗯,我想做的恰恰相反,即让UAC提示符在任务栏上闪烁,等待我的注意,而不是使整个屏幕变暗,扰乱我的工作流程 以下是我的设置:我在一台Win7 x64机器上工作,我将此链接放置在我的启动文件夹中: C:\CLUs\chp.exe "apps.bat" 是一种在不显示命令提示符的情况下加载批处理文件的实用程序。 apps.bat调用几个不相关的程序(以这种方式管理应用程序比在启动时放置一堆链接更容易)。这种蝙蝠的最后一行是 elevate chp "ele

许多用户在后台而不是前台打开UAC提示。嗯,我想做的恰恰相反,即让UAC提示符在任务栏上闪烁,等待我的注意,而不是使整个屏幕变暗,扰乱我的工作流程

以下是我的设置:我在一台Win7 x64机器上工作,我将此链接放置在我的启动文件夹中:

C:\CLUs\chp.exe "apps.bat"
是一种在不显示命令提示符的情况下加载批处理文件的实用程序。
apps.bat
调用几个不相关的程序(以这种方式管理应用程序比在启动时放置一堆链接更容易)。这种蝙蝠的最后一行是

elevate chp "elevapps.bat"
是一个实用程序,顾名思义,它通过发出UAC提示符来提升所调用的内容。而且,显然,
elevatipps.bat
包含另一组需要管理员权限才能正确启动的程序

现在,出于一些原因,我希望UAC提示符在后台启动minimized/in background。也就是说,登录Windows后,我只想看到包含UAC闪烁图标的任务栏,但没有变暗的屏幕


批处理文件是否可以这样做?我所知道的是,UAC“聪明地”检测到它是否正在窃取焦点,并且(不会)相应地出现。很明显,在创业期间,没有什么东西可以偷走焦点,所以看起来我运气不好。然而,似乎编码错误的软件(即没有在某处分配HWND,请参见和)也恰恰产生了这种效果。有没有办法用批处理文件中的一些代码重现这个“bug”(在我的例子中,我称之为特性)?另外,使用第三方实用程序也可以,但我不是程序员。

我通过使用一个允许(根据站点)通过命令行参数运行WinAPI函数的实用程序解决了这个问题

winapiexec shell32.dll@ShellExecuteW NULL "runas" "chp" "elevapps.bat" NULL 7

此处的
NULL
用法不正确
winapiexec
不是C。它被解释为
“NULL”
字符串。使用零(
0
)。确定吗<代码>winapiexec shell32。dll@ShellExecuteW0“runas”“chp”“elevatipps.bat”0 7>不工作
winapiexec shell 32。dll@ShellExecuteW0“runas”“chp”“elevatipps.bat”NULL 7
>不工作
winapiexec shell 32。dll@ShellExecuteW空“runas”“chp”“elevatipps.bat”0 7
>使用working=显示UAC提示符minimizedYep,运行
winapiexec.exeu@MessageBoxW0空0
并请参阅。对于您的示例,第一个参数是hwnd(来自文档:“如果操作与窗口不关联,则此值可以为NULL。”)。我不知道你为什么看到你看到的行为。