Shortcut 通过IShellLink创建目录的快捷方式

Shortcut 通过IShellLink创建目录的快捷方式,shortcut,windows-shell,Shortcut,Windows Shell,问题:我需要用C#中的自定义图标创建目录的快捷方式(没有.NET API) 到目前为止,我已经完成了:在我的C代码中,我正在查询IShellLink对象(实际上是IShellLinkA),通过SetPath将其目标路径设置为@“s:\my\myDirectory\”(我也尝试过没有最后一个斜杠),通过SetIconLocation将图标设置为@“s:\my\myDirectory\icon.ico,0”,然后调用保存(@“s:\foo.lnk”,true)如果这很重要,则S:是具有写访问权限的网

问题:我需要用C#中的自定义图标创建目录的快捷方式(没有.NET API)

到目前为止,我已经完成了:在我的C代码中,我正在查询IShellLink对象(实际上是IShellLinkA),通过SetPath将其目标路径设置为
@“s:\my\myDirectory\”
(我也尝试过没有最后一个斜杠),通过SetIconLocation将图标设置为
@“s:\my\myDirectory\icon.ico,0”
,然后调用
保存(@“s:\foo.lnk”,true)
如果这很重要,则
S:
是具有写访问权限的网络驱动器

我在“资源管理器”下获得带有正确图标的快捷方式,但双击后,我在波兰语中得到错误消息“Windows正在搜索文件myDirectory,如果您知道位置,请使用浏览功能”。当我右键单击快捷方式并选择“属性”时,我会得到
“目标类型:文件”
。当我在资源管理器下手动创建目录的快捷方式时,会出现
“目标类型:目录”

我肯定错过了一些明显的东西,但我花了30分钟在Google和MSDN上搜索“快捷方式/IShellLink to directory”,却没有找到任何有用的东西

编辑:根据要求发布来源:

我正在从站点使用IShellLink实现,我的代码非常简单:

ShellShortcut shortcut = new ShellShortcut(@"S:\foo.lnk");
shortcut.Description = "Sample item";
shortcut.IconPath = @"S:\my\myDirectory\icon.ico";
shortcut.IconIndex = Convert.ToInt32(0);
shortcut.Path = @"S:\my\myDirectory\";
shortcut.WorkingDirectory = @"S:\my\myDirectory\";
shortcut.Save();

似乎我需要一双新眼睛:/path name中有一个很难看到的拼写错误(l而不是I…

您描述的内容听起来不错,您能发布实际的代码吗?