在Dropbox,TortoiseSvn等应用程序中,文件图标底部附有小图标。如何知道覆盖图标状态?
我怎样才能得到这些文件的覆盖图标。这意味着我想知道哪些文件使用图标A,哪些文件使用图标B以便知道文件同步状态。
在c#中有没有办法做到这一点?
在Dropbox,TortoiseSvn等应用程序中,文件图标底部附有小图标。如何知道覆盖图标状态?
我怎样才能得到这些文件的覆盖图标。这意味着我想知道哪些文件使用图标A,哪些文件使用图标B以便知道文件同步状态。
在c#中有没有办法做到这一点?
此代码将允许您从Windows中的文件中提取关联的图标。
var sysicon = System.Drawing.Icon.ExtractAssociatedIcon(ExePath);
var bmpSrc = System.Windows.Interop.Imaging.CreateBitmapSourceFromHIcon(
sysicon.Handle,
System.Windows.Int32Rect.Empty,
System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());
sysicon.Dispose();
bmpSrc.Freeze();
fileIcon = bmpSrc;
文件图标与_overlay图标_不同。一个嵌入在文件中或由应用程序提供。叠加图标叠加在前者上。 – MickyD
是的,@Thimmoth,我需要覆盖图标不文件图标,你能帮助我吗? –
如果您是在文件同步状态之后,您可能可以从SVN API获取该文件,而不是从图标的外观对其进行反向工程。如果你去图标路线,请注意它可能会延迟;缓存并被用户禁用。 – MickyD
@MickyD,我认为这样,但我有特殊要求,我必须得到覆盖图标。所以有什么建议? –