1

通常,您可以从打印机本身的右键菜单中创建打印机的快捷方式。

还有其他方法吗?

我尝试使用带有以下参数的 IWshShortcut 作为目标路径

"Control Panel\Hardware and Sound\Devices and Printers\MyPrinter"

它创建了一个快捷方式,但它无效

有任何想法吗

4

1 回答 1

2

IWshShortcut无法创建打印机的快捷方式,因为它仅支持文件系统目标。要创建打印机的快捷方式,需要深入研究 shell 命名空间,这是一个非常高级的主题。您需要为 获取LPITEMIDLISTFOLDERID_PrintersFolder绑定到该文件夹​​以获取IShellFolder,用于IShellFolder::EnumObjects枚举打印机,确定您喜欢的打印机(可能通过使用 来检查其名称IShellFolder::GetDisplayNameOf),然后用于IShellLink::SetIDList定位到该打印机的 shell 链接。我给了你一些神奇的词,所以你可以进行一些搜索并了解更多关于它们的信息,但我不会尝试在 SO 上教授 shell 命名空间。

于 2011-10-13T01:40:09.603 回答