对于我目前的作品,我需要将一些文件和文件夹标记为已上传,而其余部分尚未上传,我希望更改文件/文件夹或一些叠加图像以实现目标。我使用以下代码按预期更改了文件夹图标:
public static void ChangeFolderIcon(string folderPath, string iconPath)
{
if (File.Exists(folderPath + @"\desktop.ini"))
{
File.Delete(folderPath + @"\desktop.ini");
}
StreamWriter sWritter = File.CreateText(folderPath + @"\desktop.ini");
sWritter.WriteLine("[.ShellClassInfo]");
sWritter.WriteLine("IconFile=" + iconPath);
sWritter.WriteLine("IconIndex=0");
sWritter.Close();
sWritter.Dispose();
File.SetAttributes(folderPath + @"\desktop.ini", File.GetAttributes(folderPath + @"\desktop.ini") | FileAttributes.Hidden);
File.SetAttributes(folderPath, File.GetAttributes(folderPath) | FileAttributes.System);
}
我尝试了一些解决方案(1、2等),但没有任何帮助我更改文件图标或覆盖文件图标。有没有可能在c#
或通过将一些库引用c++
到C#
.
请注意:我没有使用任何 UI,完整的过程是通过控制台应用程序完成的。