本文介绍如何使用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方法,将快捷方式的设置保存下来。这样桌面快捷方式就生成了。