最近有個產品,需要使用winpcap提供的網路監測功能,生成的exe安裝包裡面需要靜默安裝上不帶有介面的winpcap所有功能檔案。使用的安裝包製作工具是:advanced installer,使用的winpcap是4.1版本。
首先我們需要知道安裝需要的檔案:packet.dll,wanpacket.dll,wpcap.dll,pthreadvc.dll,npf.sys。他們所在的位置也需要搞清楚,如果是手動拷貝,則需要將檔案packet.dll,wanpacket.dll,wpcap.dll,pthreadvc.dll複製到system32中,將npf.sys複製到system32\drivers中。npf是我們要安裝的乙個驅動服務,安裝這個服務,我們需要使用sc.exe的處理:sc create npf binpath= system32\drivers\npf.sys type= kernel start= demand。同時解除安裝方法是:先停止驅動npf(sc stop npf),再刪除驅動(sc delete npf),最後刪除上文提到的5個檔案。
下面我們來解析一下安裝包的製作過程:
1.為了支援多個作業系統,對多系統下安裝winpcap4.1版本,找到對應的以上幾個dll檔案,並分別拷貝到設定好的分類目錄。使用advanced installer開啟需要製作的setup.aip檔案,點開deployment/organization,對這些dll檔案進行分系統儲存。而npf.sys服務檔案也需要根據不同的作業系統,儲存在對應的system32/drivers/npf.sys下。
[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.bat,完成整個安裝過程:
rundll32.exe setupapi,installhinfsection defaultinstall 128 %cd%/wpcap.inf
if /i %cd%==%systemroot%/system32 goto copydrv
3.也有個比較簡單的方法是,直接寫入批處理檔案wpcap.bat,建立服務並開啟npf:
sc create npf type= kernel start= boot binpath= "c:\windows\system32\drivers\npf.sys" displayname= "netgroup packet filter driver"
sc start npf
4.如果不想通過1步驟來拷貝檔案,可以通過寫入批處理wpcap.bat:
copy *.dll %windir%\system32\
copy npf.sys %windir%\system32\drivers\
del %windir%\system32\packet.dll /f /q
del %windir%\system32\pthreadvc.dll /f /q
del %windir%\system32\wanpacket.dll /f /q
del %windir%\system32\wpcap.dll /f /q
del %windir%\system32\drivers\npf.sys /f /q
sc create npf binpath= system32\drivers\npf.sys type= kernel start= auto error= normal tag= no displayname= "netgroup packet filter driver"
sc start npf
sc stop npf
sc delete npf
帶有無引數的儲存過程
sql中呼叫儲存過程語句 call procedure name 注 呼叫時 是不可少的,無論是有引數還是無引數.定義對資料庫儲存過程的呼叫時 1 無引數儲存過程 2 僅有輸入引數的儲存過程 這裡?表示輸入引數,建立儲存過程時用in表示輸入引數 3 僅有輸出引數的儲存過程 這裡的?表示輸出引數,建立...
如何製作帶有SPLASH介面的程式
include typedef struct progressdata progressdata typedef struct maindata maindata maindata pmdata static void destroy progress gtkwidget widget,progre...
gui的design 無介面 牆體介面劑
牆體介面劑,高彪建材,高彪致力於為每一位消費者,帶去安全無隱患的 自由呼吸空間 企業遵循綠色科技為長遠發展目標,2009年在國內率先推出植物環保型海藻泥膩子粉系列,本產品主原料由天然植物纖維中提取漿液製成微粉,並新增海藻泥成分,加強淨化空氣與吸附有害物質,屬於安全無毒的環保牆面基材產品。牆體介面劑,...