実行可能ファイルがあり、それが開始されたときに、どのように開始されたかを知りたいとしましょう。つまり、ショートカットで開始するのか、直接開始するのかを知りたいのですが。これとともに:
string test = Environment.GetCommandLineArgs()[0];
実行可能ファイルのパスを取得できますが、ショートカットで開始した場合でも、これは常に同じです。
実行可能ファイルの名前がc:\ text.exeで、直接起動すると、test ='c:\ test.exe'ショートカット、つまりc:\shortcut.lnkを作成した場合(ターゲットc:\ test.exeを使用) )テストを「c:\ shortcut.exe」にしたいのですが、「c:\test.exe」です。
OSがショートカット部分を処理し、実行可能ファイルが違いを認識できないため、これは不可能だと強く思いますが、誰かが創造的なアイデアを持っているのではないでしょうか。