惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
IT之家
IT之家
V
V2EX
Jina AI
Jina AI
V
Visual Studio Blog
有赞技术团队
有赞技术团队
博客园 - 司徒正美
博客园 - 叶小钗
The Cloudflare Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 三生石上(FineUI控件)
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
腾讯CDC
Google Online Security Blog
Google Online Security Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
N
News and Events Feed by Topic
N
News and Events Feed by Topic
The Last Watchdog
The Last Watchdog
W
WeLiveSecurity
月光博客
月光博客
Security Archives - TechRepublic
Security Archives - TechRepublic
Webroot Blog
Webroot Blog
SecWiki News
SecWiki News
博客园_首页
罗磊的独立博客
量子位
Latest news
Latest news
I
Intezer
V
Vulnerabilities – Threatpost
A
Arctic Wolf
Last Week in AI
Last Week in AI
Recent Commits to openclaw:main
Recent Commits to openclaw:main
S
SegmentFault 最新的问题
S
Security Affairs
阮一峰的网络日志
阮一峰的网络日志
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
酷 壳 – CoolShell
酷 壳 – CoolShell
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
N
News | PayPal Newsroom

博客园 - surfer

TabControl添加关闭按钮 string、wstring、cstring、 char、 tchar、int、dword转换方法 string,wstring,CString,TCHAR,char*之间常用转换 在VS 2008下成功编译Chrome QT + VS2008安装配置 用于多媒体应用的无窗口ATL ActiveX控件 临界区,互斥量,信号量,事件的区别(线程同步) GuiToolKit的编译 在VC程序中调用exe文件或者批处理文件方法总结 可在U盘或光盘上运行的LINUX(自带强大软件包和开发工具) 用VC纯资源dll制作多语言界面程序 - surfer - 博客园 没有完美的外汇经纪商和交易平台 外汇交易时段 MB Trading 订单类型 外汇炒单速成法 外汇高手的顺势理论 外汇点值计算 外汇交易商排名 explorer无法随Windows 7启动原因
金山开源安全卫士全套代码编译指南
surfer · 2012-01-16 · via 博客园 - surfer
要从金山开源安全卫士的代码里学习,首先当然是最好能把全套代码编译出 来进行调试。在开发湘勇网络医生的过程中,我一直关注金山开源安全卫士代码的更新动态,第一时间把代码下载下来并进行编译和调试。现将金山开源安全卫士全 套代码的编译指南整理如下,方便各位关注金山开源安全卫士的朋友一起学习和交流。根据编译指南编译还有问题的,可在后面跟帖,我会测试和解决后整理进来。

一、编译准备工作

1、编译器 建议使用 Visual C++ 2005 或者 Visual C++ 2005 SP1

要想编译全套代码,请安装Visual C++ 2005或者Visual C++ 2005 SP1,其它版本的编译器因为金山开源安全卫士的部分库只释放了Visual C++ 2005编译的Release版本的lib而没有源代码,会导致链接有问题。详细的说,金山的kwslib和json库的代码是不开源的,不依赖这2个库的9个项目avcenter.sln、bkver.sln、commonlib.sln、kclear.sln、kmsspeed.sln、kprocesslib.lib、 lang.sln、PluginEngine.sln、SafeMon.sln是可以用Visual C++ 2008/2010来编译的,依赖这两个库的ksafe.sln、ksafeperfopt.sln、ksafesvc.sln、netmon.sln、 vlufix.sln是无法链接成功的。

2、Windows SDK建议使用WIN7 sdk

金山官方是使用的Windows SDK 6.1版本,经测试用7.0或者7.1版本也是可以编译通过的。下载WIN7 SDK的时候请注意一下,有不同平台共计3个版本的,请好好看说明,下载对应平台的版本。下错了没法安装(比如说WINXP x86下载了win7 sdk x64肯定是没法安装的)的话,得重下一个多G的文件。

集成Windows SDK到Visual Studio 2005请注意一下包含文件目录的顺序(据说WIN SDK 6.1不需要这样,未证实):

在可执行文件和包含文件选项里,把WIN7 SDK的相应目录放在最前面;

在引用库文件和库文件选项里,把WIN7 SDK的相应目录放在最下面;

3、源代码和库下载

请到 code.ijinshan.com 下载源代码和库文件,并将两个文件解压缩,把Lib4PCManager下面的所有目录和文件直接拷贝到解压缩的代码文件中的PCManager目录下去。

二、编译注意事项

1、参照前面的说明,金山只提供了金山开源安全卫士某些库的Visual C++ 2005编译的Release版本,因此必须在编译时选择编译Release版本才能无误,否则会出现链接错误。

2、先编译commonlib.sln工程,再编译其它工程。有些现实无法加载的项目,是因为这些项目的因不开源而删除,改编译其它项目即可。

3、Lang.sln实际上是拷贝百度OEM版本的金山安全卫士配置文件到编译输出目录,可不编译改项目。编译该项目后,运行开源金山安全卫士会显示是百度的版本。

三、运行的问题

2011年3月17日发布的代码中,Lang.sln配套的XML文件跟代码不符导致编译出来的程序会运行出错,不清楚后续是否修改好了。运行有问题的可自行调试或者在后面回复。

以上根据回忆撰写,可能跟实际稍后出入。发现问题的可跟帖反馈。本帖在 http://www.xanyong.com 有同步发布的版本,两边讨论均可。我会根据大家的反馈来持续完善和修订。