PowerShell脚本实现创建桌面快捷方式的方法

所属分类: 脚本专栏 / PowerShell 阅读数: 1906
收藏 0 赞 0 分享

本文介绍如何使用PowerShell将一个程序或文件,创建一个桌面快捷方式。在Windows系统里面,手工操作创建桌面快捷方式是很容易的,您只需要右键拖动文件到桌面,然后放开,在自动弹出的菜单中选择“在此创建快捷方式”即可完成,但要编程来实现这个效果就比较复杂了。

首先,我们要使用到COM组件,创建桌面快捷方式,最简单的办法是调用WScript.Shell这个COM组件。那么在PowerShell如何创建一个COM组件呢?

复制代码 代码如下:

$shell = New-Object -ComObject WScript.Shell

我们通过New-Object这个Cmdlet来创建了一个COM组件,组件的类是WScript.Shell,实现我们的第一步。

第二步,因为我们是要在桌面创建快捷方式,那还必须得找到桌面的位置,即桌面的物理路径。这个怎么找呢,如下:

复制代码 代码如下:

$desktop = [System.Environment]::GetFolderPath('Desktop']

这里使用了.NET框架里面的System.Environment类的GetFolderPath的静态方法,使用它可以很容易获得Windows目录、System32目录等。

第三步,定义快捷方式对象,并设置相关属性。

复制代码 代码如下:

$shortcut = $shell.CreateShortcut("$desktop\clickme.lnk")
$shortcut.TargetPath = "calc.exe"
$shortcut.IconLocation = "shell32.dll,23"

上面使用了WScript.Shell这个COM对象的CreateShortcut这个方法,将快捷方式定位到桌面,然后对得到的快捷方式对象定义了它的目标路径(计算器程序),并定义了它的显示图标。

最后,保存设置。

复制代码 代码如下:

$shortcut.Save()

调用Save方法,将快捷方式的设置保存下来。这样桌面快捷方式就生成了。

更多精彩内容其他人还在看

PowerShell隐藏不显示窗口的多种方法

这篇文章主要介绍了PowerShell隐藏不显示窗口的多种方法,本文讲解了启动PowerShell时隐藏自己的窗口、在PowerShell启动其它进程时隐藏窗口、使用PowerShell隐藏其它进程的窗口三种方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell启用winrm失败:拒绝访问 0x80070005 -2147024891

这篇文章主要介绍了PowerShell启用winrm失败:拒绝访问 0x80070005 -2147024891,本文给出了详细的排查步骤和解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Powershell目录文件夹管理权限的继承和指定方法

这篇文章主要介绍了Powershell目录文件夹管理权限的继承和指定方法,本文给出了创建文件夹、获取当前权限、添加新的权限、添加管理员权限等,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell查看本机文件关联程序和默认打开程序的方法

这篇文章主要介绍了PowerShell查看本机文件关联程序和默认打开程序的方法,本文给出了查看方法,同时给出了一份读取结果,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell脚本反引号用法实例:随时随地给代码换行

这篇文章主要介绍了PowerShell脚本反引号用法实例:随时随地给代码换行,在遇到一些超长代码行时非常有用,一般编程代码一行的字符数不超过80个哦,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell 数组的多种录入方法

这篇文章主要介绍了PowerShell 数组的多种录入方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell String对象方法小结

这篇文章主要介绍了PowerShell String对象方法,需要的朋友可以参考下
收藏 0 赞 0 分享

使用PowerShell获取当前主机内存使用量和总量的方法

这篇文章主要介绍了使用PowerShell获取当前主机内存使用量和总量的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell批量修改AD用户密码属性的代码

这篇文章主要介绍了PowerShell批量修改AD用户密码属性的代码,需要的朋友可以参考下
收藏 0 赞 0 分享

PowerShell 自动备份oracle并上传到ftp

我这里有这样一个需求:有一个数据库,每天使用SQL Server Agent自动生成备份文件。然后,这个数据库非常重要,需要把每天的备份上传一个远程的FTP服务器上去。下面我们来看看如何使用Powershell来实现吧
收藏 0 赞 0 分享
查看更多