我有一个代码可以创建一个文件夹并添加 desktop.ini 文件和 icon.ico 文件来更改文件夹图标
string dir = path;
string[] lines = { "[.ShellClassInfo]", $"IconResource=Icon.ico,0", "[ViewState]", "Mode=", "Vid=", "FolderType=Pictures" };
File.WriteAllLines(dir + @"\desktop.ini", lines);
DirectoryInfo dirInfo = new DirectoryInfo(folderpath + $"\\{name}");
// Set the directory to read-only
dirInfo.Attributes |= FileAttributes.ReadOnly;
DirectoryInfo dirInfo2 = new DirectoryInfo(folderpath + $"\\{name}\\desktop.ini");
dirInfo2.Attributes |= FileAttributes.ReadOnly;
DirectoryInfo dirInfo3 = new DirectoryInfo(folderpath + $"\\{name}\\Icon.ico");
dirInfo3.Attributes |= FileAttributes.ReadOnly;
//refresh folder
SHChangeNotify(0x8000000, 0x1000, IntPtr.Zero, IntPtr.Zero);
现在文件夹图标没有变化
但是当我转到文件夹选项时,我看到图标已成功设置
和这个
当我使用文件资源管理器将文件夹从它的位置移动时,图标出现
我试图更改文件夹图标 我希望图标出现,但没有出现