免疫AutoRun病毒的原理建立在一个无法删除的AutoRun.inf文件夹,以防止病毒生成用来运行的AutoRun.inf文件

打开命令提示符 输入:

1.cd \
2.mkdir autorun.inf
3.cd autorun.inf
4.mkdir anti...\

 void CImmunityUAutoRunDlg::InitComboDrive()
{
char szDriveStr[MAXBYTE] = {};
char* pTmp = NULL;
SetDlgItemText(IDC_COMBO_DRIVE,"请选择免疫的磁盘盘符");
GetLogicalDriveStrings(MAXBYTE,szDriveStr);
pTmp = szDriveStr;
while (*pTmp)
{
m_CbDrive.AddString(pTmp);
pTmp += ;
}
} void CImmunityUAutoRunDlg::OnBnClickedBntImmnuity()
{
// TODO: 在此添加控件通知处理程序代码
char szPath[MAX_PATH] = {};
GetDlgItemText(IDC_COMBO_DRIVE,szPath,MAX_PATH);
// 创建autorun.inf文件夹
strcat(szPath,AUTORUN);
BOOL bRet = CreateDirectory(szPath,NULL);
if (!bRet)
{
AfxMessageBox("无法免疫该盘符!\
可能应经被免疫,或者该磁盘为不可写状态!");
return ;
}
strcat(szPath,ANTI);
bRet = CreateDirectory(szPath,NULL);
if (!bRet)
{
AfxMessageBox("无法免疫该盘符!\
可能应经被免疫,或者该磁盘为不可写状态!");
return ;
} } void CImmunityUAutoRunDlg::OnBnClickedBntCancel()
{
// TODO: 在此添加控件通知处理程序代码 char szPath[MAX_PATH] = {};
GetDlgItemText(IDC_COMBO_DRIVE,szPath,MAX_PATH);
strcat(szPath,AUTORUN);
strcat(szPath,ANTI);
RemoveDirectory(szPath);
ZeroMemory(szPath,MAX_PATH);
GetDlgItemText(IDC_COMBO_DRIVE,szPath,MAX_PATH);
strcat(szPath,AUTORUN);
RemoveDirectory(szPath);
}

代码君

05-01 03:23