/ / Windowsのリンクファイルのパスを編集する方法 - c#

Windowsのリンクファイルのパスを編集する方法 - c#

私はリンクファイル内のパスを編集したいのですが、それはファイルやフォルダをリダイレクトして、そのパスを頻繁に変更します。Cや他の言語でいくつか見つけましたが、C#では決して見つかりませんでした。

Test.lnk - > C:TestFolder 1.2.3
私はC#を使用してそのリンクを変更したい
Test.lnk - > C:TestFolder 1.2.4

誰もそうする方法を知っていますか?

回答:

回答№1は1

リンクファイルのパスを編集することはできません。代わりに古いショートカットを削除し、COM Windowsスクリプトホストオブジェクトモデルを使用して新しいショートカットを作成することができます:

using System;
using IWshRuntimeLibrary;

namespace ShortCutTest
{
class Program
{
static void Main(string[] args)
{
var wsh = new WshShell();
var shortcut = (IWshShortcut)wsh.CreateShortcut(@"C:cmd.lnk");
shortcut.Description = "Shortcut for cmd.exe";
shortcut.TargetPath = Environment.GetFolderPath(Environment.SpecialFolder.System) +  @"cmd.exe";
shortcut.Save();
}
}
}

私が知る限り、これを行うには.NETにネイティブな方法はありません。