diff --git a/src/modules/launcher/Wox.Infrastructure/Image/WindowsThumbnailProvider.cs b/src/modules/launcher/Wox.Infrastructure/Image/WindowsThumbnailProvider.cs index 4dd9481678..af64306df5 100644 --- a/src/modules/launcher/Wox.Infrastructure/Image/WindowsThumbnailProvider.cs +++ b/src/modules/launcher/Wox.Infrastructure/Image/WindowsThumbnailProvider.cs @@ -83,13 +83,17 @@ namespace Wox.Infrastructure.Image public static BitmapSource GetThumbnail(string fileName, int width, int height, ThumbnailOptions options) { IntPtr hBitmap = IntPtr.Zero; + string targetLinkedFilePath = string.Empty; if (Path.GetExtension(fileName).Equals(".lnk", StringComparison.OrdinalIgnoreCase)) { // If the file has a '.lnk' extension, it is a shortcut file. Use the shellLinkHelper to retrieve the actual target file path from the shortcut. IShellLinkHelper shellLinkHelper = new ShellLinkHelper(); + targetLinkedFilePath = shellLinkHelper.RetrieveTargetPath(fileName); + } - string targetFilePath = shellLinkHelper.RetrieveTargetPath(fileName); - hBitmap = ExtractIconToHBitmap(targetFilePath); + if (!string.IsNullOrEmpty(targetLinkedFilePath)) + { + hBitmap = ExtractIconToHBitmap(targetLinkedFilePath); } else {