我有一个简单的控制台应用程序,我正在尝试删除文件夹:
Directory.Delete(folder,true);
我得到了烦人的 Thumbs.db 的例外
The process cannot access the file 'Thumbs.db' because it is being used by another process.
我无法更改注册表以避免在文件夹中处理缩略图
我可以选择哪些选项来删除包含其中所有内容的文件夹?
thanks
您可以找出哪个进程正在阻止它Unlocker http://www.softpedia.com/get/System/System-Miscellaneous/Unlocker.shtml。如果您无法终止该进程,您可以将此文件或文件夹标记为在下次启动后立即删除移动文件Ex http://msdn.microsoft.com/en-us/library/windows/desktop/aa365240(v=vs.85).aspx.
[DllImport("kernel32.dll")]
public static extern bool MoveFileEx(string lpExistingFileName, string lpNewFileName, int dwFlags);
public const int MOVEFILE_DELAY_UNTIL_REBOOT = 0x4;
//Usage:
MoveFileEx(fileName, null, MOVEFILE_DELAY_UNTIL_REBOOT);
如果你想禁止创建“Thumbs.db”文件完全可以在注册表中将其关闭。打开注册表编辑器,导航到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
并设置值NoThumbnailCache
to 1
。如果此条目不存在,您根本无法创建它(DWORD 32
).
对于Win7专业版/旗舰版,进入路径为HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\Explorer\Advanced
它的名字是DisableThumbnailCache
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)