2

別のアプリケーション内からアプリケーションのショートカットを実行する「公式の」方法は何なのだろうか。
このような:

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

application.exeがショートカットの場合、これは機能しません。
もちろん、その理由は、アプリケーションの実際のファイル名がappication.exe.lnk. これで、Windows エクスプローラーにはその.lnk部分が表示されなくなります ([既知のファイル タイプの拡張子を非表示にする] をオフにしても) dir、DOS ボックスでは表示されます。

そこで思いついたのがこれ

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

しかし、もっと良い方法があるかどうか疑問に思っています。これは…まだらっぽい。しかし、私の検索は空になりました。ショートカットの作成方法などの説明しかありません。

4

1 に答える 1