良久以前的一段时代也用次要领防U盘病毒
以下所示
防U盘病毒的道理就是在每一个盘竖立一个如许的文件
下面先接收几个win API
DWORD WINAPI GetLogicalDriveStrings(<span style="white-space:pre"> </span>//猎取磁盘 _In_ DWORD nBufferLength, _Out_ LPTSTR lpBuffer );
<span style="color: rgb(69, 69, 69); font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 14px; line-height: 20.0060005187988px;"> Fills a buffer with strings that specify valid drives in the system.</span>
第二个API
BOOL WINAPI CreateDirectory( _In_ LPCTSTR lpPathName, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes ); <span style="color: rgb(69, 69, 69); font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 14px; line-height: 20.0060005187988px;"> Creates a new directory. </span>
下面是代码
#include "stdafx.h" #include <windows.h> void ImmuntiyAutoRun() { //竖立没法删除的文件夹 char szDriverStr[MAXBYTE] = { 0 }; DWORD dwLen = GetLogicalDriveStringsA(MAXBYTE, szDriverStr); for (int i = 0; i < dwLen; i+=4) { char szRoot[4] = {}, szPath[MAX_PATH] = { 0 }; strncpy_s(szRoot, &szDriverStr[i], 4); strcpy_s(szPath, szRoot); strcat_s(szPath, "autorun.inf"); if (!CreateDirectoryA(szPath, nullptr)) printf_s("Error:%d", GetLastError()); strcat_s(szPath, "\\anti......\\"); if (!CreateDirectoryA(szPath, nullptr)) printf_s("Error:%d", GetLastError()); } } int _tmain(int argc, _TCHAR* argv[]) { ImmuntiyAutoRun(); getchar(); return 0; }
如许就会在每一个盘下面竖立一个尾部带"....."的畸形文件夹。
但注重的是,用win API 能够把他删除哦。
BOOL WINAPI RemoveDirectory( _In_ LPCTSTR lpPathName );
以上就是 简朴的反U盘病毒(删除不了的畸形文件夹)的内容,更多相关内容请关注ki4网(www.ki4.cn)!