如何删除只读文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除只读文件相关的知识,希望对你有一定的参考价值。
我在安装软件时,突然屏幕就显示几个网站怎么删都删不了,删除了又回来。我用粉碎机去将文件粉碎也不行,它还是会再次出现在电脑屏幕上。
参考技术A 1.结束进程后删除2.重重启删除
3.进入安全模式删除
4.用超级兔子删除
5.用cmd命令强行删除
6.进DOS绝对行
一、常规解决办法:
1,注消或重启电脑,然后再试着删除。
2,进入“安全模式删除”。
3,在纯DOS命令行下使用DEL,DELTREE和RD命令将其删除。
4,如果是文件夹中有比较多的子目录或文件而导致无法删除,可先删除该文件夹中的子目录和文件,再删除文件夹。
5,在任务管理器中结束Explorer.exe进程,然后在命令提示符窗口删除文件。
6,如果你有安装ACDSee,FlashFXP,Nero,Total这几个软件,可以尝试在这几个软件中删除文件夹。 二、高级解决方案:
1,磁盘错误
运行磁盘扫描,并扫描文件所在分区,扫描前确定已选上修复文件和坏扇区,全面扫描所有选项,扫描后再删除文件。
2,预读机制:
某些媒体播放中断或正在预览时会造成无法删除。在“运行”框中输入:REGSVR32 /U SHMEDIA.DLL,注销掉预读功能。或删除注册表中下面这个键值:[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\87D62D94-71B3-4b9a-9489-5FE6850DC73E\InProcServer32]。
3,防火墙:
由于反病毒软件在查毒时会占用正在检查的文件,从而导致执行删除时提示文件正在使用,这时可试着暂时关闭它的即时监控程序,或许可以解决。
4,OFFice、WPS系列软件:
OFFice的非法关闭也会造成文件无法删除或改名。重新运行该程序,然后正常关闭,再删除文件。
5,借助WinRAR:
右击要删除的文件夹,选择“添加到压缩文件”。在弹出的对话框中选中“压缩后删除源文件,”随便写个压缩包名,点确定。
6,权限问题:
如果是2000和xp系统,请先确定是否有权限删除这个文件或文件夹。
7,可执行文件的删除:
如果可执行文件的映像或程序所调用的DLL动态链接库文件还在内存中未释放,删除时就会提示文件正在使用,解决方法是删除系统的页面文件,Win98中是Win386.SWP,Win2000/XP是pagefile.sys。注意要在DOS下删除。
8,文件粉碎法:
使用文件粉碎机,如File Pulverizer,可以彻底删除一些顽固文件 参考技术B 找到你要删除的只读文件 右键--属 性--把他的只读属性去掉 确定然后即可 删除了 参考技术C 一分钟帮你解决问题windows恶意软件清理助手 下载地址: http://www.duote.com/soft/7513.html 参考技术D 升级杀毒软件,全盘杀毒,祝你好运
如何制作“只读”文件?
【中文标题】如何制作“只读”文件?【英文标题】:How to make a "Read only" file? 【发布时间】:2012-07-31 10:50:20 【问题描述】:我正在使用 C# StreamWritier
类。问题:
-
如何将文件设为只读,这样任何人都无法删除或写入文件?
如何制作隐藏文件?
我正在像这样创建文件:
private void button1_Click(object sender, EventArgs e)
SaveFileDialog save = new SaveFileDialog();
save.FileName = textBox1.Text;
save.Filter = "Text File | *.rtf";
if (save.ShowDialog() == DialogResult.OK)
StreamWriter writer = new StreamWriter(save.OpenFile());
writer.WriteLine(textBox2.Text);
writer.Dispose();
writer.Close();
【问题讨论】:
你可以看那个帖子:***.com/a/5398398/1252575这里还有一个:***.com/questions/7590446/… @peer 我不接受你的编辑因为你修改了我的代码并删除了我的一个问题。 @Nickon 用户同行编辑了我的问题,它还有第二部分。 啊,好吧;)不知道。如果你想正常隐藏你的文件,使用这个:***.com/questions/1199571/how-to-hide-file-in-c 但是当你想让它在你的文件系统中不可见时,尝试 PInvoke:pinvoke.net/default.aspx/kernel32.setfileattributessocial.msdn.microsoft.com/Forums/en/csharpgeneral/thread/… 在你的文件系统中不可见我理解隐藏在 SystemVolumeInformation 文件夹中跨度> 【参考方案1】:同样的答案,但只有一行代码:
// Hide and read-only in one line
File.SetAttributes(filePathFinal, FileAttributes.ReadOnly | FileAttributes.Hidden);
【讨论】:
【参考方案2】:你好,你可以试试这个方法
1
public static void SetFileReadAccess(string FileName, bool SetReadOnly)
FileInfo fInfo = new FileInfo(FileName);
// Set the IsReadOnly property.
fInfo.IsReadOnly = SetReadOnly;
2
File.SetAttributes(yourFilePath, FileAttributes.Hidden);
......
【讨论】:
Yakoub 你能检查我问题的第二部分吗?请有人编辑并删除了第二部分,所以我重新编辑了。谢谢。顺便说一句,我投了你们所有人的票。 谢谢谦虚,我添加了第二个答案 谢谢我只是缩进你的第一个答案的代码,以便其他人也可以阅读。谢谢。我接受了你的回答。 我很高兴回答你谦虚,我很抱歉缩进【参考方案3】:将此用于只读文件:
FileAttributes yourFile = File.GetAttributes(yourFilePath);
File.SetAttributes(yourFilePath, FileAttributes.ReadOnly);
其中“yourFilePath”是一个字符串。
对于隐藏文件:
FileAttributes yourFile = File.GetAttributes(yourFilePath);
File.SetAttributes(yourFilePath, FileAttributes.Hidden);
对于普通文件(不是只读的,也不是隐藏的):
FileAttributes yourFile = File.GetAttributes(yourFilePath);
File.SetAttributes(yourFilePath, FileAttributes.Normal);
我知道您没有要求设置普通文件,但我认为了解这一点很有用。
【讨论】:
Rodrio 你能检查我问题的第二部分吗?请有人编辑并删除了第二部分,所以我重新编辑了。谢谢。顺便说一句,我投了你们所有人的票。 非常感谢,我认为你所有的答案都有效,我投票给你,但我已经接受了 Aghilas Yakoub 的答案,所以不要误解我。我真的很感谢你们。【参考方案4】:您可以使用File.SetAttributes
设置ReadOnly 属性。
例子:
File.SetAttributes(textBox1.Text, FileAttributes.ReadOnly);
请注意,这只设置了只读标志,它不会修改 NTFS 访问控制列表(意味着每个熟练的用户都可以删除只读属性)。另请注意,这会重置文件的所有其他属性,这在您的情况下应该不是问题,因为无论如何您都在创建一个新文件。如果您需要保留现有属性,请先使用 File.GetAttributes
并将现有标志与新标志结合起来(请参阅链接的 MSDN 页面上的示例)。
如果您需要保护文件以防止恶意写入,您必须了解 NTFS 安全性(谷歌搜索“NTFS 安全性”以获得大量资源)。一旦你理解了这一点,下面的问题将告诉你如何在 C# 中修改它们:
Setting NTFS permissions in C#.NET【讨论】:
我将如何使用它并制作它?是否可以显示在我的代码上? 是的,谢谢 Heinzi。在你编辑你的答案之前,我回复了你。 我的问题被同行编辑了,他删除了我的问题的第二部分,所以我重新编辑了你对第二个问题有发言权吗?谢谢。 File.SetAttributes 方法msdn.microsoft.com/en-us/library/…以上是关于如何删除只读文件的主要内容,如果未能解决你的问题,请参考以下文章
公司共享文件夹如何设置某个文件夹只读属性,不可更改复制删除等操作?
如何删除/mnt/cdrom?|如何删除只读文件系统(Read-only files ystem)? failed !bh ? 挂载光盘?挂载usb?