コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【C#】ショートカット(.lnk)のリンク先のパスを取得する方法

概要

f:id:baba_s:20200907150737p:plain

Visual Studio のプロジェクトの「参照」を右クリックして「参照の追加」を選択して

f:id:baba_s:20200907150740p:plain

「COM」を選択して「Windows Script host Object Model」をチェックして「OK」を押します

using IWshRuntimeLibrary;
using System;

internal static class Program
{
    private static void Main()
    {
        var path     = "【ショートカットのファイル名】.lnk";
        var shell    = new WshShell();
        var shortcut = ( IWshShortcut ) shell.CreateShortcut( path );

        Console.WriteLine( shortcut.TargetPath );
    }
}

後は上記のようなコードを記述することで
ショートカットのリンク先のパスを取得できます