avclient安装_反病毒软件clamAV源代码分析 01 - 安装编译
最近发现网上有个开源的反病毒软件clamwin,官方地址是http://www.clamwin.com/,下个最新版本试下先。
据介绍这只是个UI壳,用Python/ wxPython写的,其实用的是Clam
AntiVirus engine(http://www.clamav.net/),这个引擎原来是for
unix的,主要用做e-mail防毒,后来被人改成通用的防病毒引擎了。后来又被移植到windows平台上(http://w32.clamav.net/),clamwin用的应该就是这个for
win版本的,下个源代码研究下(http://w32.clamav.net/downloads/clamAVsrc.zip)。
解压后,用Visual Studio
2005打开clamav.sln,解决方案中有几个工程显示找不到,打开后发现打不开的是一些UI工程以及一些插件工程,这些都是辅助工程,暂时可以先不管它。
直接编译解决方案会报很多错误,仔细分析后发现是工程的Additional
Include Directories中填的都是绝对路径:C:\Documents and
Settings\Nigel Horne\My Documents\Visual Studio
2005\Projects\clamAV\,可见这哥们叫Nigel Horne
:),将所有的工程的这个选项都替换成相对路径,或者如果你愿意,就建个那个名字的目录,将所有的源代码都拷到那个目录下,是最方便的。
编译整个解决方案,其它都成功了,只有一个clamAV工程失败,显示在目录release下找不到一些文件,这个工程是个打安装包的工程,忽略它其实无所谓,如果想编译成功一次搞定的话,再去下个clamAV的制作好的二进制版本(http://w32.clamav.net/downloads/clamAV.msi),安装完成后,从安装目录里拷贝那几个文件出来(一共是6个),再重新编译,就可以了。如果想安装一下试试的话,刚才安装的那个得先卸载掉才能行。
先分析一下解决方案本身,发现一共8个工程,其实在编译解决方案的时候,并没有编译shared那个工程,但是用到了shared目录下的代码。而且如果手工编译shared工程的话,发现编译不过,显示预编译头的错误,其实这个工程没有使用预编译头,但是在工程的属性中却显示使用了预编译头,修改一下shared工程属性,不使用预编译头,仍然编译不过,显示error
C2466: cannot allocate an array of constant size
0,查了一下,是C编译器版本的问题,估计是这块那位老兄还没搞定,不管了,反正不影响使用。
其它的工程都依赖于libclamav工程,这是个lib库。以后再分析代码部分,先试一下安装好的东东。一共是5个exe文件:
clamconf.exe:用来显示、配置conf\ clamd.conf
clamd.exe:Clam AntiVirus Daemon,不知道什么东东
clamdscan.exe:ClamAV Daemon Client,不知道什么东东
clamscan.exe:Clam AntiVirus Scanner,这是扫描文件查毒用的
freshclam.exe:这个是从网上更新病毒库的
这些文件都没有UI,需要在CMD命令窗口中运行,可以打一下—help看看帮助。
我们试一下主要的功能:
"c:\program files\clamAV\clamscan"
后面的找个目录试一下,OK,系统正在扫描,一切正常。
avclient安装_反病毒软件clamAV源代码分析 01 - 安装编译相关推荐
- 免费的安装算量软件有哪些?鹏业安装算量与品茗安装算量对比
鹏业安装算量软件研发于2010年,自主图形平台,以导入CAD图纸,一键智能识别生成三维模型为核心,手工+智能识别,极大满足.提升用户的建模效率,实现快速精准算量.其在安装算量全专业里面都采用智能识别技 ...
- ant压缩在哪卸载_反病毒软件这么多,到底哪一款适合你
记得大学读书的时候,买了电脑,第一件事情就是卸载windows自带的杀毒软件,然后装上自己心仪的杀毒软件,可是市面上杀毒软件这么多,哪一款适合你呢? 我找了市面上排名最靠前的三款杀毒软件,让我们看看他 ...
- 源代码可以从应用提取码_大规模下加速源代码分析
引用:Upadhyaya G , Rajan H . On Accelerating Source Code Analysis At Massive Scale[J]. IEEE Transactio ...
- java打包软件静默安装_常用软件的静默安装方法介绍
有时我们在安装程序的时候,希望是静默安装的,不显示下一步下一步,这编访问来教大家如何来操作,现在常用的制作安装程序的软件有, Microsoft Windows Installer , Windo ...
- linux php7 yum 卸载,Linux_在Centos中yum安装和卸载软件的使用方法,安装一个软件时
yum -y install h - phpStudy...
在Centos中yum安装和卸载软件的使用方法 安装一个软件时 yum -y install httpd 安装多个相类似的软件时 yum -y install httpd* 安装多个非类似软件时 yu ...
- 【下载安装】ps软件下载免费中文版及安装详细步骤教程(photoshop软件下载)
软件地址:极简工作室 1,将下载好的安装包双击打开,然后点击install启动安装程序. 2,输入电脑密码. 3,点击继续. 4,软件安装完成,点击关闭. 5,双击破解补丁开始破解. 6,点击继续. ...
- 64位计算机可以安装32位软件,【64位可以安装32位系统】64位安装32位的软件_64位系统改装32位系统...
2017-12-05 16:46:37 浏览量:1233 系统可以在线安装吗?怎么安装?我们知道电脑都需要安装系统才能正常使用,安装系统多数是通过U盘或光盘安装,现在则出现了在线安装系统工具,可以帮助 ...
- 手机java安装_花样繁多 MOTO手机JAVA程序安装详细步骤
使用MOTO手机的朋友可能都知道,JAVA程序是很普遍安装的软件,但是有些朋友可能知道1~2种方法,其实安装的方法有很多.我们摩托罗拉手机论坛的网友夜飞鸟,就将MOTO手机上JAVA程序的多种安装方法 ...
- paddlepaddle测试安装_学习之路(1)PaddlePaddle的安装
目录 环境 Windows系统的安装在Windows上安装Docker容器 在Windows上安装Ubuntu 使用pip安装 使用Docker安装 从源码编译生成安装包在本地编译生成安装包 在Doc ...
最新文章
- EXT.JS的PROXY放在哪里,STORE放在哪里,绝对是个技术活儿啊。
- Java高并发编程:总线锁定和缓存一致性的问题
- Servlet3.1规范翻译 - 应用生命周期事件
- [转] MySQL 查询表数据大小的总结
- 等比数列求和python_python numpy生成等差数列、等比数列的实例
- java emoji编码转换_java转换emoji表情
- 二. 简单的NSIS安装包
- excel合并两列内容_还在为合并WPS表格(Excel)中两列内容而犯愁?此方法简单高效...
- 小米组织架构调整:雷军兼任中国区总裁 组建大家电部门
- 视频转音频时,安卓和iOS播放的时长翻倍 --- 好一个坑
- project facets中没有dynamic_C++强制类型转换操作符 dynamic_cast
- Visual Studio解决方案的目录结构设置和管理
- 20200203_selenium爬取百度新闻
- 实名寻人搜索引擎app_Lookup:整合多个社交网络的寻人搜索引擎
- [Transformer]SPViT:Pruning Self-attentions into Convolutional Layers in Single Path
- cad插入块_CAD施工制图常见问答(一)
- 自动化测试po模式是什么?自动化测试po分层如何实现?-附详细源码
- 川土微|国产数字隔离器兼容ISO7762用于新能源汽车热管理系统
- oracle脏读查询,没有进行commit操作的数据是否能被查询到,关于oracle的脏读和隔离级别...
- 实现一个鼠标自动按键程序
热门文章
- 智慧地产专题 | 机智云智慧公寓解决方案详解
- 杰里之697X 自带APP篇(针对TWS)
- java word 乱码_java word 乱码怎么办,_Java_ 少侠科技
- eclipse ganymede下安装Jbosstools
- python+tkinter+nuitka 打包单个可执行exe文件(PyInstaller比nuitka更稳定)
- python bytes转int_int与bytes的转换
- 孙鑫VC学习笔记:第七讲
- java面试题网球_温网停赛,AI不停赛:斯坦福新研究模拟网球名将打比赛
- U盘的分区写有保护,无法格式化、删除卷(Windows)
- 网鱼网咖-利用数加快速搭建大数据平台,极致洞察,为客户带来从所未有的体验。...