public static Bitmap ExtractIconByExtension(string extension, bool small) { Bitmap icon = null; if (!string.IsNullOrEmpty(extension)) { string tempFile = Path.Combine(Path.GetTempPath(), string.Format("blumind_test{0}", extension)); try { if (!File.Exists(tempFile)) { using (FileStream stream = new FileStream(tempFile, FileMode.Create, FileAccess.Write)) { stream.Close(); } } icon = IconExtractor.ExtractAssociatedIconImage(tempFile, small); } finally { if (File.Exists(tempFile)) { File.Delete(tempFile); } } } return(icon); }
void Initialize() { FileImageIsValid = Image != null; if (Image == null && !string.IsNullOrEmpty(Filename)) { switch (Path.GetExtension(Filename).ToLower()) { case Document.Extension: Image = CreateBmdImage(); break; default: Image = IconExtractor.ExtractLargeIconByExtension(Path.GetExtension(Filename)); break; } } }
public FileThumbItem(Configuration.RecentFileInfo file) { Filename = file.Filename; Image = file.ThumbImage; FileIcon = file.Icon; if (FileIcon == null && !string.IsNullOrEmpty(Filename)) { if (File.Exists(Filename)) { FileIcon = IconExtractor.ExtractAssociatedIconImage(Filename); } if (FileIcon == null) { FileIcon = IconExtractor.ExtractSmallIconByExtension(Path.GetExtension(Filename)); } } Initialize(); }