PowerShell隐藏不显示窗口的多种方法
转载
https://www.jb51.net/article/68186.htm
隐藏不显示窗口的多种方法这篇文章主要介绍了PowerShell隐藏不显示窗口的多种方法,本文讲解了启动PowerShell时隐藏自己的窗口、在PowerShell启动其它进程时隐藏窗口、使用PowerShell隐藏其它进程的窗口三种方法,需要的朋友可以参考下
启动PowerShell时隐藏自己的窗口假如我在计划任务中定时通过Powershell.exe来执行一个脚本文件,我想隐藏这个窗口,此时我们可以考虑使用PowerShell.exe的选项参数:
复制代码 代码如下:-WindowStyle将窗口样式设置为 Normal、Minimized、Maximized 或 Hidden。
复制代码 代码如下:PowerShell.exe -WindowStyle Hidden -file '您的脚本.ps1'
在PowerShell启动其它进程时隐藏窗口这个需求也能理解:复制代码 代码如下:Start-Process notepad.exe -WindowStyle Hidden
上面的脚本会启动一个隐藏的记事本程序。使用PowerShell隐藏其它进程的窗口这是一个奇葩的需求,但是用户也有一番自己的理由:@scl95tx如是说:我已经实现了一个24小时不间断的Powershell脚本,有很多数据通过write-host命令输出到控制台
(需要随时查看这些数据,确保server运行正常,所以后台运行我先不考虑),
如果(由于操作失误)误点击控制台窗口,那么脚本就会停止执行,
是否有办法把控制台隐藏起来,如果我想查看脚本的运行情况,
再把控制台调出来:也就是有随时隐藏和调出来控制台的办法吗?这需求合情合理啊,接下来我们解决这个问题:复制代码 代码如下:Add-Type @'
[DllImport("user32.dll")]
public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
'@ -name “Win32ShowWindowAsync” -namespace Win32API
Function Set-ProcessWindowStyle
{param([Parameter(Mandatory=$true,ValueFromPipeline=$true)][System.Diagnostics.Process]$Process,[ValidateSet("Show", "Minimized","Maximized","Hidden")][string]$WindowStyle="Show")$WinStateInt = 1switch($WindowState){"Hidden" {$WinStateInt = 0}"Show" {$WinStateInt = 1}"Maximize" {$WinStateInt = 3}"Minimize" {$WinStateInt = 6}}[Win32API.Win32ShowWindowAsync]::ShowWindowAsync($Process.MainWindowHandle,$WindowState)
}
写完上面的脚本后,我满心喜悦地进行测试,隐藏窗口成功:
复制代码 代码如下:Get-Process notepad | Set-ProcessWindowStyle -WindowStyle Hidden可是当我尝试调出隐藏的窗口时,执行返回false。
复制代码 代码如下:PS> Get-Process notepad | Set-ProcessWindowStyle -WindowStyle Show
False对此我深表遗憾,当窗口被隐藏后,进程的句柄值MainWindowHandle变成了0,0代表什么?
MSDN如是说:如果关联进程没有主窗口,则 MainWindowHandle 值为零。
结论:不要隐藏进程的窗口,否则你将永远失去了操作该窗口的机会。
PowerShell隐藏不显示窗口的多种方法相关推荐
- js设置控件的隐藏与显示的两种方法
js设置控件的隐藏与显示的两种方法: js设置控件的隐藏与显示,设置控件style的display和visibility属性就可以了. 用JavaScript隐藏控件的方法有两种,分别是通过设置控件的 ...
- jquery控制元素的隐藏和显示的几种方法。
使用jquery控制div的显示与隐藏,一句话就能搞定,例如: 1.$("#id").show()表示为display:block, $("#id").hide ...
- 怎么把计算机里隐藏的文件显示,怎么把隐藏的文件夹显示出来 多种方法介绍【图文教程】...
对于很多电脑新手都会遇到这样的问题,怎么把隐藏的文件夹显示出来,其实操作起来非常简单哦,今天小编就是来教大家如何将隐藏的文件夹显示出来,有需要的就快来看看吧. 怎么把隐藏文件显示出来 方法一 :这个方 ...
- linux桌面显示我的电脑,Windows服务器如何显示”我的电脑”图标 [多种方法详细介绍]...
自从上次领了一台Windows服务器之外,好几天都没去看它了,平时工作比较忙,没有太多的时间去折腾.今天在远程连接服务器之后,发现Windows服务器默认桌面只有一个"回收站",& ...
- 关于jsp网页弹出窗口[很多种方法......]
各种弹出页面的设计 [1.普通的弹出窗口] 其实代码非常简单: <SCRIPT LANGUAGE=javascript> <!-- window.open ('page.htm ...
- 在对话框显示图片的多种方法
我们先从简单的开始吧.先分一个类: (一) 非动态显示图片(即图片先通过资源管理器载入,有一个固定ID) (二) 动态载入图片(即只需要在程序中指定图片的路径即可载入) 为方便说明,我们已经建好一个基 ...
- 在对话框显示图片的多种方法(下)
承接上篇,介绍了三种方法,本篇将介绍动态载入图片的另一种方法: 方法4 通过CBitmap,HBITMAP,直接用OnPaint()绘制 首先在CTestDlg类中声明一个变量: CBitmap ...
- 前端页面显示图片的多种方法小结
对我使用过的前端显示图片的方法进行小总结,作为以后参考的依据. 说在前面的话:关于这几种实现方式,有可能原理是一样的,而且肯定有更优的实现方式.因为时间关系我没有进行深入研究,如果哪里写的不对,请多多 ...
- jquery控制元素的隐藏和显示的几种方法
使用jquery控制div的显示与隐藏,一句话就能搞定,例如: 方法一 显示: $("#id").show()表示为display:block, 隐藏: $("#id&q ...
最新文章
- SAP 库存物资收发存报表主要思路
- python中使用什么导入模块-Python中使用语句导入模块或包的机制研究
- 数据库复习资料及课后习题答案
- 给老板解释解释,为什么要用SpringCloud alibaba作为微服务开发框架???
- for循环语句例题及解析python_Python入门第8课,for语句综合练习,突破循环累加难点...
- GBK转unicode码查询表
- android 学习之SurfaceView
- c++ STL模板(一)
- php中文手册 最新评论整合,ThinkPHP整合百度Ueditor
- 直方图均衡化作用及实现
- iView 日期时间选择器设置开始时间至结束时间限制
- 解决Jenkins集成SonarQube Scanner出现“Tasks support was removed in SonarQube 7.6.”的问题
- Prometheus普罗米修斯监控的使用_v1.0.5
- 前端开发技术-promise是什么?
- 硬件加密算法HITAG2流程分析
- python连通图_用python实现无向图的连通性判断
- eclipse override错误
- 阿里巴巴三面总结,讲一讲从P5到P8需要掌握的知识点,本人已成功入职。
- 【i.MX8 Linux】systemd 系统服务管理 - 开关机自动执行
- 2010年F1大奖赛巴林揭幕战