如何运行一个快捷方式

我不知道从另一个应用程序中运行应用程序快捷方式的“官方”方式是什么。
喜欢这个:

string program = "application.exe"; Process.Start(program); 

如果application.exe是一个快捷方式,这将无法正常工作。
当然,原因是应用程序的实际文件名是appication.exe.lnk 。 现在,Windows资源pipe理器将不会显示.lnk部分(即使您已经“隐藏已知文件types的扩展名”未选中),而当您在DOS框中执行dir时,它显示。

所以我想到了这个

 string program = "application.exe"; if (!File.Exists(program)) program += ".lnk"; Process.Start(program); 

但我一直在想,如果有更好的方法。 这听起来…不完整。 但我的search已经空了。 没有什么,但如何创build快捷方式和东西的解释。

这个为我工作

  private void mainForm_Load(object sender, EventArgs e) { Process proc = new Process(); proc.StartInfo.FileName = @"c:\d.lnk"; proc.Start(); }