昨天应Victor的要求,临时在网上找了一个弹出U盘的函数,可以安全的删除U盘。但是晚上时间仓促,没有仔细捉摸代码。今天正好codecook,问起渊源,我只能自己找找线索了,这线索找起来比MH370容易多了。
Shell.Application是什么
百度百科上面的描述太绕口,简单一点吧:Application就是应用程序,Shell就是通过命令完成应用程序的部分功能:比如弹出U盘。Shell.Application的官方文档位于:Shell.Application。
对象=方法+属性
我们在调用时使用com对象,com对象也是对象,自然有方法和属性。
先定义对象:
$sa = new-object -com Shell.Application
然后调用方法:NameSpace(官方解释为文件夹),那么多文件夹,总得指定一个吧,比如:“我的电脑”,对应参数ssfDRIVES 【0x11 (17)】。
完了再继续调用Item方法,想想都是“我的电脑”下面的那些C,D,E,F盘吧。有了盘,就给它执行一个动作吧InvokeVerb()。
那支持那些动作呢?
PS> ($sa.Namespace(17).items() | select -last 1 ).Verbs() | select name Name ---- &Open Scan with System Center Endpoint Protection... E&ject &Copy Create &shortcut
说明:每个盘支持的动作不一样,上面我选最后一个,因为我机器上最后一个是DVD,这个肯定和U盘一样支持弹出的。所以上面有E&ject
完整脚本参加:PowerShell安全删除U盘
本文链接: https://www.pstips.net/call-shell-application.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!