Tag: 快捷方式

.NET读取.lnk文件的二进制内容

我想读取.lnk文件的二进制内容。 只要快捷方式(lnk文件)的目标存在,这对IO.File.ReadAllBytes(字符串文件)工作正常。 但 如果快捷方式的目标不存在(相信我,我想要这个),该方法只返回零。 我想这是因为操作系统遵循链接,如果它不存在则返回零 有没有办法绕过框架在显示.lnk文件的内容之前遵循.lnk目标的事实?

使用Process.Start C#通过快捷方式运行应用程序

有没有办法通过C#应用程序的快捷方式运行应用程序? 我试图从我的C#应用​​程序运行.lnk。 快捷方式包含大量参数,我更希望应用程序不必记住。 尝试通过Process.Start运行快捷方式会导致exception。 谢谢 编辑: 例外是“Win32Exception”:“指定的可执行文件不是有效的Win32应用程序。” 这是(缩写)代码: ProcessStartInfo info = new ProcessStartInfo ( “example.lnk” ); info.CreateNoWindow = true; info.UseShellExecute = false; info.RedirectStandardError = true; info.RedirectStandardOutput = true; info.RedirectStandardInput = true; Process whatever = Process.Start( info );

如何使用命令行参数在C#中创建应用程序快捷方式(.lnk文件)

我写了一个简单的基于FTP的文件同步程序。 其设置可以存储在XML文件中。 我希望用户能够使用各种配置快速打开程序。 所以我设置程序,以便能够通过命令行参数读取配置文件的路径。 这样,可以基于不同的配置文件在桌面上创建快捷方式。 现在我正在尝试添加一个function,该function将自动为特定配置文件创建快捷方式。 我尝试使用ShellLink.cs中的这篇文章中的示例。 我也尝试过使用IWshRuntimeLibrary,如下所述。 我可以创建快捷方式,但属性窗口中快捷方式的“目标类型”在新快捷方式中最终为空白。 如果我双击快捷方式,我会从Windows获取一个错误窗口,关于它在提供的路径中找到FooBar.xml时遇到问题。 所以它似乎没有意识到应该启动一个不打开文件的应用程序。 现在,如果我打开新快捷方式的属性并更改目标字段中的某些内容,然后将其更改回来。 例如,从xml中删除x,然后将其添加回来。 单击确定后,快捷方式的图标会立即切换到我的应用程序的图标,并在双击时正常工作。 因此,当我手动编辑快捷方式时,它会强制窗口检查快捷方式目标类型是否应该是应用程序并切换它。 那么,当目标路径不以.exe结尾时,如何通过C#创建一个目标类型为Application的新快捷方式?

获取快捷方式文件夹的目标

如何获取快捷方式文件夹的目录目标? 我到处搜索,只找到快捷方式文件的目标。