精华内容
下载资源
问答
  • MFC文件粉碎代码

    2012-02-29 09:11:47
    这是一个按照美国标准来实现的粉碎文件的一段MFC代码,详细信息见代码解释,不足之处请指出,谢谢。
  • vb 文件粉碎机源代码

    2011-05-15 12:05:23
    vb 文件粉碎机源代码 你看到的文件来自:E动天下(http:/www.2e3.org)
  • C#强烈粉碎文件代码

    2015-06-05 16:17:12
    360的文件粉碎机还是很强大的,在我们客户端winform升级的时候,必须将有些文件进行强力删除后下载更新,如果删除失败很有可能整个 程序就无法更新到最新的版本,所以这里参考了网上的资料整理了一个文件粉碎的小...

    360的文件粉碎机还是很强大的,在我们客户端winform升级的时候,必须将有些文件进行强力删除后下载更新,如果删除失败很有可能整个 程序就无法更新到最新的版本,所以这里参考了网上的资料整理了一个文件粉碎的小demo,总结了一个类出来,方便以后升级或者其他开发工作的调用

    程序运行界面截图

    操作gif动画图片

    整理的实际类,为了以后使用,提高工作效率

    //-------------------------------------------------------------------------------------
    // All Rights Reserved , Copyright (C) 2015 , ZTO , Ltd .
    //-------------------------------------------------------------------------------------
    
    using System;
    using System.Diagnostics;
    using System.IO;
    using System.Text.RegularExpressions;
    
    namespace ZTO.WayBill.Utilities
    {
        /// <summary>
        /// 文件帮助类
        ///
        /// 修改纪录
        ///
        ///          2015-6-5  版本:1.0 YangHengLian 创建主键,注意命名空间的排序。
        /// 
        /// 版本:1.0
        ///
        /// <author>
        ///        <name>YangHengLian</name>
        ///        <date>2015-6-5</date>
        /// </author>
        /// </summary>
        public class FileHelper
        {
            /// <summary>
            /// 强力粉碎文件,文件如果被打开,很难粉碎
            /// </summary>
            /// <param name="filename">文件全路径</param>
            /// <param name="deleteCount">删除次数</param>
            /// <param name="randomData">随机数据填充文件,默认true</param>
            /// <param name="blanks">空白填充文件,默认false</param>
            /// <returns>true:粉碎成功,false:粉碎失败</returns>
            public static bool KillFile(string filename, int deleteCount, bool randomData = true, bool blanks = false)
            {
                const int bufferLength = 1024000;
                bool ret = true;
                try
                {
                    using (FileStream stream = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite))
                    {
                        FileInfo f = new FileInfo(filename);
                        long count = f.Length;
                        long offset = 0;
                        var rowDataBuffer = new byte[bufferLength];
                        while (count >= 0)
                        {
                            int iNumOfDataRead = stream.Read(rowDataBuffer, 0, bufferLength);
                            if (iNumOfDataRead == 0)
                            {
                                break;
                            }
                            if (randomData)
                            {
                                Random randombyte = new Random();
                                randombyte.NextBytes(rowDataBuffer);
                            }
                            else if (blanks)
                            {
                                for (int i = 0; i < iNumOfDataRead; i++)
                                    rowDataBuffer[i] = 0;
                            }
                            else
                            {
                                for (int i = 0; i < iNumOfDataRead; i++)
                                    rowDataBuffer[i] = Convert.ToByte(Convert.ToChar(deleteCount));
                            }
                            // 写新内容到文件。
                            for (int i = 0; i < deleteCount; i++)
                            {
                                stream.Seek(offset, SeekOrigin.Begin);
                                stream.Write(rowDataBuffer, 0, iNumOfDataRead);
                            }
                            offset += iNumOfDataRead;
                            count -= iNumOfDataRead;
                        }
                    }
                    //每一个文件名字符代替随机数从0到9。
                    string newName = "";
                    do
                    {
                        Random random = new Random();
                        string cleanName = Path.GetFileName(filename);
                        string dirName = Path.GetDirectoryName(filename);
                        int iMoreRandomLetters = random.Next(9);
                        // 为了更安全,不要只使用原文件名的大小,添加一些随机字母。
                        for (int i = 0; i < cleanName.Length + iMoreRandomLetters; i++)
                        {
                            newName += random.Next(9).ToString();
                        }
                        newName = dirName + "\\" + newName;
                    } while (File.Exists(newName));
                    // 重命名文件的新的随机的名字。
                    File.Move(filename, newName);
                    File.Delete(newName);
                }
                catch
                {
                    //可能其他原因删除失败了,使用我们自己的方法强制删除
                    try
                    {
                        string fileName = filename;//要检查被那个进程占用的文件
                        Process tool = new Process { StartInfo = { FileName = "handle.exe", Arguments = fileName + " /accepteula", UseShellExecute = false, RedirectStandardOutput = true } };
                        tool.Start();
                        tool.WaitForExit();
                        string outputTool = tool.StandardOutput.ReadToEnd();
                        string matchPattern = @"(?<=\s+pid:\s+)\b(\d+)\b(?=\s+)";
                        foreach (Match match in Regex.Matches(outputTool, matchPattern))
                        {
    
                            //结束掉所有正在使用这个文件的程序
                            Process.GetProcessById(int.Parse(match.Value)).Kill();
                        }
                        File.Delete(fileName);
                    }
                    catch
                    {
                        ret = false;
                    }
                }
                return ret;
            }
        }
    }


    展开全文
  • 360的文件粉碎机还是很强大的,在我们客户端winform升级的时候,必须将有些文件进行强力删除后下载更新,如果删除失败很有可能整个 程序就无法更新到最新的版本,所以这里参考了网上的资料整理了一个文件粉碎的小...

    360的文件粉碎机还是很强大的,在我们客户端winform升级的时候,必须将有些文件进行强力删除后下载更新,如果删除失败很有可能整个 程序就无法更新到最新的版本,所以这里参考了网上的资料整理了一个文件粉碎的小demo,总结了一个类出来,方便以后升级或者其他开发工作的调用

    程序运行界面截图

    操作gif动画图片

    整理的实际类,为了以后使用,提高工作效率

    //-------------------------------------------------------------------------------------
    // All Rights Reserved , Copyright (C) 2015 , ZTO , Ltd .
    //-------------------------------------------------------------------------------------
    
    using System;
    using System.Diagnostics;
    using System.IO;
    using System.Text.RegularExpressions;
    
    namespace ZTO.WayBill.Utilities
    {
        /// <summary>
        /// 文件帮助类
        ///
        /// 修改纪录
        ///
        ///          2015-6-5  版本:1.0 YangHengLian 创建主键,注意命名空间的排序。
        /// 
        /// 版本:1.0
        ///
        /// <author>
        ///        <name>YangHengLian</name>
        ///        <date>2015-6-5</date>
        /// </author>
        /// </summary>
        public class FileHelper
        {
            /// <summary>
            /// 强力粉碎文件,文件如果被打开,很难粉碎
            /// </summary>
            /// <param name="filename">文件全路径</param>
            /// <param name="deleteCount">删除次数</param>
            /// <param name="randomData">随机数据填充文件,默认true</param>
            /// <param name="blanks">空白填充文件,默认false</param>
            /// <returns>true:粉碎成功,false:粉碎失败</returns>
            public static bool KillFile(string filename, int deleteCount, bool randomData = true, bool blanks = false)
            {
                const int bufferLength = 1024000;
                bool ret = true;
                try
                {
                    using (FileStream stream = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite))
                    {
                        FileInfo f = new FileInfo(filename);
                        long count = f.Length;
                        long offset = 0;
                        var rowDataBuffer = new byte[bufferLength];
                        while (count >= 0)
                        {
                            int iNumOfDataRead = stream.Read(rowDataBuffer, 0, bufferLength);
                            if (iNumOfDataRead == 0)
                            {
                                break;
                            }
                            if (randomData)
                            {
                                Random randombyte = new Random();
                                randombyte.NextBytes(rowDataBuffer);
                            }
                            else if (blanks)
                            {
                                for (int i = 0; i < iNumOfDataRead; i++)
                                    rowDataBuffer[i] = 0;
                            }
                            else
                            {
                                for (int i = 0; i < iNumOfDataRead; i++)
                                    rowDataBuffer[i] = Convert.ToByte(Convert.ToChar(deleteCount));
                            }
                            // 写新内容到文件。
                            for (int i = 0; i < deleteCount; i++)
                            {
                                stream.Seek(offset, SeekOrigin.Begin);
                                stream.Write(rowDataBuffer, 0, iNumOfDataRead);
                            }
                            offset += iNumOfDataRead;
                            count -= iNumOfDataRead;
                        }
                    }
                    //每一个文件名字符代替随机数从0到9。
                    string newName = "";
                    do
                    {
                        Random random = new Random();
                        string cleanName = Path.GetFileName(filename);
                        string dirName = Path.GetDirectoryName(filename);
                        int iMoreRandomLetters = random.Next(9);
                        // 为了更安全,不要只使用原文件名的大小,添加一些随机字母。
                        for (int i = 0; i < cleanName.Length + iMoreRandomLetters; i++)
                        {
                            newName += random.Next(9).ToString();
                        }
                        newName = dirName + "\\" + newName;
                    } while (File.Exists(newName));
                    // 重命名文件的新的随机的名字。
                    File.Move(filename, newName);
                    File.Delete(newName);
                }
                catch
                {
                    //可能其他原因删除失败了,使用我们自己的方法强制删除
                    try
                    {
                        string fileName = filename;//要检查被那个进程占用的文件
                        Process tool = new Process { StartInfo = { FileName = "handle.exe", Arguments = fileName + " /accepteula", UseShellExecute = false, RedirectStandardOutput = true } };
                        tool.Start();
                        tool.WaitForExit();
                        string outputTool = tool.StandardOutput.ReadToEnd();
                        string matchPattern = @"(?<=\s+pid:\s+)\b(\d+)\b(?=\s+)";
                        foreach (Match match in Regex.Matches(outputTool, matchPattern))
                        {
    
                            //结束掉所有正在使用这个文件的程序
                            Process.GetProcessById(int.Parse(match.Value)).Kill();
                        }
                        File.Delete(fileName);
                    }
                    catch
                    {
                        ret = false;
                    }
                }
                return ret;
            }
        }
    }

    例子demo:http://download.csdn.net/detail/mryanghenglian/8775447

    展开全文
  • 为什么下面的代码删除文件后,还可用 360 软件恢复回来(已亲测)?难道要用 mmap 模块吗?#--------------------------------------------------import tkinter.filedialog as tfdef selecFile(title='多文件选择',...

    为什么下面的代码删除文件后,还可用 360 软件恢复回来(已亲测)?难道要用 mmap 模块吗?

    #--------------------------------------------------

    import tkinter.filedialog as tf

    def selecFile(title='多文件选择',fmt='.'):

    '''(多个)文件选择(对话框) 返元组 取消时返空'''

    return tf.askopenfilenames(title=title,filetypes=[('all files',fmt)])

    def myRemoveFiles():

    '''彻底删除文件'''

    paths = selecFile(title='选择要删除的文件') #

    if paths:

    if tm.askokcancel('重要提示!','确定永久删除吗?'):

    fn = '_Test{}_.tmp'

    _dir = os.path.dirname(paths[0])

    for i, _file in enumerate(paths):

    try:

    fsize = os.path.getsize(_file)

    with open(_file,'rb+') as f:

    for _ in range(3):

    f.seek(0,0)

    f.write(os.urandom(fsize))

    file = os.path.abspath(os.path.join(_dir,fn.format(i)))

    os.rename(_file,file)

    os.remove(file)

    print(_file,"OK")

    except Exception as err:

    print(_file,str(err))

    展开全文
  • http://hi.baidu.com/sudami/item/2489be5d7ba23011db16354a 作者原博客地址:http://hi.baidu.com/new/sudami

    http://hi.baidu.com/sudami/item/2489be5d7ba23011db16354a


    作者原博客地址:http://hi.baidu.com/new/sudami

    展开全文
  • 第一步:在桌面上新建一个TXT的文档,例如:delete_file.txt第二步:在文本里面填上下面这段代码:Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\runas]@="获取权限""NoWorkingDirectory"=""...
  • C# CSharp 模拟文件粉碎

    2008-05-02 18:08:05
    可以在不打开程序情况下将要粉碎文件拖到程序上也可以粉碎, 原理:向目标文件写入空字节,一直填充到文件长度,然后删除 老师布置的作业,写了一下,代码太菜,拿上来是和大家学习的,高手不要打脸.
  • 粉碎文件BAT

    2012-06-15 11:29:45
    粉碎文件BAT DEL /F /A /Q \\?...其实,只要编36字节的代码就可以粉碎windows系统里的任何文件!而且无用论是从操作上还是从效果上都比那些软件好很多! 这里编成一个bat文件, 只要把你想粉碎的文...
  • 它涵盖了所有内容,例如语义标记,使用CSS3进行增强,构建快速的jQuery插件以避免重复的代码等等。 链接到示例和下载就在那! 这篇文章也是对我作为那里的新作家的介绍。 我将每隔几周左右写一次“问答”文章。 ...
  • 稿件名称:“文件粉碎机”的VB程序实现 稿件作者:柏昌顺 源代码名称:文件粉碎机 调试环境:Win XP;VB 6.0
  • 文件粉碎的原理

    千次阅读 2008-09-05 14:17:00
    平常所做的删除,其实是修改文件头的前2个代码,这种修改映射在FAT表中,就为文件作了删除标记,并将文件所占簇号在FAT表中的登记项清零,表示释放空间,这也就是平常删除文件后,硬盘空间增大的原因。而真正
  • VB文件粉碎

    2009-12-19 05:56:00
    代码:Option Explicit======================用于查找进程和终止进程的API函数常数定义================ =====Private Declare Function CreateToolhelpSnapshot Lib "kernel32" Alias "CreateToolhelp32Snapshot" ...
  • Delphi代码实现删除或移动被占用的文件,类似360安全卫士的粉碎文件功能,因为大家都知道,文件在被打开或被占用的情况下,也就是进程未退出的情况下,是不能被删除或移动的,但本代码的演示的方法,可以将这些文件...
  • Mzf文件强删粉碎工具

    2011-06-08 13:38:15
    此工具逆向了可牛的文件粉碎工具, 内核代码参考了它的. R3下是自己实现的. 大家可以学习下. 压缩包里面包含了R0和R3的源码. 本人博客:http://hi.baidu.com/hu3167343, 大家多多交流.
  • 在电脑的实际操作中,我们有时需要将一些没用的文件清理删除掉,有时却会碰到一些文件提示被占用或被锁定无法删除的情况。有时,碰到一些涉密的文件和资料我们不仅需要删除,还要求删除后不留下任何痕迹,即使别人用...
  • 如何粉碎文件 - C#

    2012-01-29 20:45:00
    文件粉碎的流程 填充文件 更改最后使用/创建时间 更改名称 将大小改为 0 kb 删除 >具体代码 View Code using System;using System.Collections.Generic;using System.Text;using Syste...
  • 检测到堆栈粉碎

    2020-05-25 23:05:39
    我敢打赌,每一个Java开发人员在他们的职业生涯初期都首次在Java代码中遇到本机方法时都会感到惊讶。 我还可以肯定,多年来随着了解JVM如何通过JNI处理对本机实现的调用而使惊喜消失了。 这篇文章是关于本机方法...
  • 编程乐趣:C#彻底删除文件

    千次阅读 2014-01-17 23:22:12
    经常用360的文件粉碎,删除隐私文件貌似还不错的。不过C#也可以实现彻底删除文件。试了下用360文件恢复恢复不了源文件了。代码如下: public class AbsoluteFile { public event EventHandler ...
  • 暴力删除代码

    2014-08-10 01:31:00
     2、用360文件粉碎机、电脑管家。。。等等都不行。 我给大家介绍一个方法:  新建一个文本复制一下代码保存为*.bat(批量处理文件)  DEL /F /A /Q \\?\%1  RD /S /Q \\?\%1 转载于:...
  • 很多时候,在删除文件或目录时,系统经常会提示此文件正在被其他程序占用和使用而无法删除,即使使用所谓的文件粉碎机可能还是无法搞定。其实我们可以利用批处理文件来解决这个问题。 1、新建一个记事本(这里须在...
  • 2014-01-20看视频出现错误代码2001-1是什么意第一、开始——设置——控制面板——双击添加与删除程序 卸载掉flsh等相关文件第二C:\WINDOWS\system32\Macromed\Flash 把文件夹删掉!不行用QQ电脑管家粉碎第三:开始 ...
  • 利用VS故意报错看到函数名查看编译中间文件obj利用VS故意报错看到函数名上面的代码只声明函数,但是不实现,所以在编译时会找不到函数。在 VS2015可以直接通过报错信息得知函数名被编译器优化后的样子。上述代码在 ...
  • 经常用360的文件粉碎,删除隐私文件貌似还不错的。不过C#也可以实现彻底删除文件。试了下用360文件恢复恢复不了源文件了。 主要代码如下: 代码如下:public class AbsoluteFile  {   public event EventHandler ...
  • 该github存储库包含ColorSplash有效负载和Binary Loader有效负载的源代码(允许用户从记忆棒文件H.BIN运行简单的二进制代码。 即将来临的支持: EUR支持Carol Vorderman's Sudoku Hello World SDK二进制有效负载 ...
  • 来源:Licence:BSD平台:iOS设备:iPhone / iPad作者:Hegaka ...用户拖放某张图片在垃圾箱图标上,即可删除这张图片,并且有删除文件粉碎效果。 Code4App编译测试,适用环境:Xcode 4.3, iOS 5.0。

空空如也

空空如也

1 2 3 4
收藏数 68
精华内容 27
热门标签
关键字:

文件粉碎代码