Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3882699
  • 博文数量: 356
  • 博客积分: 10458
  • 博客等级: 上将
  • 技术积分: 4734
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-24 14:59
文章分类

全部博文(356)

文章存档

2020年(17)

2019年(9)

2018年(26)

2017年(5)

2016年(11)

2015年(20)

2014年(2)

2013年(17)

2012年(15)

2011年(4)

2010年(7)

2009年(14)

2008年(209)

分类: C/C++

2008-04-23 16:01:19

安装内幕, 呵呵, 似乎很高深的样子. 其实很简单。
这两天公司的同事提了一个需求,要搞清楚winpcap软件安装真正做了什么,因为我们不想要winpcap的安装界面。在用google在网上搜了一番之后,发现原来安装软件原来这么简单,软件安装包的制作也非常简单。
先看看winpcap的安装到底做了什么,其实在window上安装软件无外乎做两件事:拷贝一系列文件到相应的目录下;修改一下注册表的相关信息。 winpcap安装也有这个过程,它将packet.dll、pthreadVC.dll、wanpacket.dll、wpcap.dll拷贝到windows/system32/目录下,同时将驱动文件npf.sys拷贝到windows/systems/drivers/目录下。拷贝完文件接下来就是要改注册表的相关信息了,因为winpcap是一个抓包软件,所以它要向系统注册一下抓包驱动的服务。这里涉及到注册表的一些操作:
[Version]
Signature="$WINDOWS NT$"
[DefaultInstall.Services]
AddService=NPF,,winpcap_svr
[winpcap_svr]
DisplayName=Netgroup Packet Filter
ServiceType=0x1
StartType=3
ErrorControl=1
ServiceBinary=%12%\npf.sys
这是wpcap.inf文件。
接下来是一个批处理文件wpcap.bat,完成整个安装过程:
rundll32.exe setupapi,InstallHinfSection DefaultInstall 128 %CD%\wpcap.inf
if /i %CD%==%SYSTEMROOT%\system32 goto COPYDRV
copy packet.dll %SYSTEMROOT%\system32\
copy wpcap.dll %SYSTEMROOT%\system32\
copy wanpacket.dll %SYSTEMROOT%\system32\
copy pthreadVC.dll %SYSTEMROOT%\system32\
 
:COPYDRV
if /i %CD%==%SYSTEMROOT%\system32\drivers goto END
copy npf.sys %SYSTEMROOT%\system32\drivers\ 
:END
执行这个批处理文件就可以完成winpcap软件的安装过程了。
而制作.exe的安装包,实际上就是用winrar将上述所有的文件打包成.exe的自解压缩文件,然后把解压后执行的文件名设置成wpcap.bat即可。 
阅读(1633) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~