1、描述的对象或角度不同:
计算机病毒的自我复制描述是病毒程序一种能力或功能,是指病毒程序把自身附着在各种类型的文件上。计算机病毒传染性是指计算机病毒通过修改别的程序将自身的复制品或其变体传染到其它无毒的对象上,这些对象可以是一个程序也可以是系统中的某一个部件。
2、作用途径范围不同:
计算机病毒的一大特征是传染性,能够通过U盘、网络等途径入侵计算机。自我复制是病毒程序运行的同时使计算机的资源受到不同程序的破坏等等。
3、参与传播的对象不同:
计算机病毒自我复制像生物病毒一样进行繁殖,当正常程序运行的时候,它也进行运行自身复制的程序。计算机病毒是一段人为编制的计算机程序代码,这段程序代码一旦得以执行,它就会搜寻其他符合其传染条件的程序或存储介质,确定目标后再将自身代码插入其中,达到自我繁殖的目的。
而传染性还在于计算机病毒可通过各种可能的渠道,如软盘、硬盘、移动硬盘、计算机网络去传染其他的计算机。当在一台机器上发现了病毒时,往往曾在这台计算机上用过的软盘已感染上了病毒,而与这台机器相联网的其他计算机也许也被该病毒染上了,其中还有计算机用户行为的参与。
参考资料来源:百度百科-计算机病毒传染性
参考资料来源:百度百科-计算机病毒
#include"Windows.h"
//以下函数得包含此头文件int
main(){
char
szPath[MAX_PATH]
//保存自身文件名的字符串
char
toPath[MAX_PATH]
=
"C:"
//要复制到的路径字符串
int
i
GetModuleFileNameA(NULL,(LPCH)szPath,225)
//获取自身路径的函数
for
(i
=
strlen(szPath)
i
>
0
i--)
//获取文件名的处理,就我所知,VC没有获取文件名的函数,要自己处理;BCB就有
{
if
(szPath[i]
==
'\\')
//最后一个‘\’后面就是文件名
break
}
strcat(toPath,&szPath[i])
//把文件名连接到toPath,得到“C:\*.exe”
for
(char
ch
=
'c'
ch
<=
'f'
ch++)
//复制处理,从c到f
{
toPath[0]
=
ch
//改盘符
CopyFileA(szPath,toPath,false)
//复制函数,从szPath复制到toPath,强行覆盖原有文件
}
return
0
}
可以用批处理解决 ,先用程序写下批处理语言 ,最后再运行。如用程序建立一个 *.bat 文件,再向里面写入 copy d:\wind\444.exe c:\windows\444.exe ,这样就可以实现程序的自我复制了,同样还可以实现程序的自我删除。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)