Есть ли способ в C# программно определить, была ли найдена цель ссылки?
Я хотел бы программно определить, была ли цель ссылки найдена в C#. Используя код link.Resolve(SLR_FLAGS.SLR_UPDATE)
появится диалоговое окно с сообщением о том, что цель ссылки не может быть найдена, и с возможностью удаления ярлыка.
Код для генерации ссылки:
Type t = Type.GetTypeFromProgID("Shell.Application");
dynamic shell = Activator.CreateInstance(t);
var folder = shell.NameSpace(pathOnly);
var folderItem = folder.ParseName(filenameOnly);
string sAbsPath = "";
if (folderItem != null)
{
(Shell32.ShellLinkObject)folderItem.GetLink;
var link = folderItem.GetLink;
}
Если я добавлю опцию подавления пользовательского интерфейса с помощью link.Resolve(SLR_FLAGS.SLR_UPDATE|SLR_FLAGS_NO_UI)
опция не удалять ярлык используется и ссылка. Путь по-прежнему относится к файлу, местоположение которого не было найдено. В этой ситуации объект ссылки, по-видимому, не имеет атрибутов, указывающих, что цель ссылки не была найдена. Кто-нибудь знает способ сделать это?