如何安裝inf類(lèi)型驅(qū)動(dòng)程序 inno
如果想在打包時(shí)支持自動(dòng)安裝驅(qū)動(dòng)程序,有很多種辦法。這里介紹使用DPInst.exe安裝inf驅(qū)動(dòng)的辦法。
一、Driver Install Frameworks 工具簡(jiǎn)介
Driver Install Frameworks (DIFx) 是 Microsoft 在驅(qū)動(dòng)程序安裝技術(shù)和工具創(chuàng)新方面的最新計(jì)劃,該創(chuàng)新從將即插即用融入到 Windows 95 開(kāi)始。Driver Install Frameworks 計(jì)劃的目標(biāo)是提供基礎(chǔ)結(jié)構(gòu)和工具來(lái)使設(shè)備和驅(qū)動(dòng)程序的安裝更加簡(jiǎn)單流暢。 用戶會(huì)發(fā)現(xiàn)驅(qū)動(dòng)程序和設(shè)備診斷更加簡(jiǎn)單,而且能夠在必要時(shí)卸載或回滾驅(qū)動(dòng)程序。供應(yīng)商能夠更容易地創(chuàng)建合格的驅(qū)動(dòng)程序包、集成增值軟件,以及利用標(biāo)準(zhǔn)的 Windows 機(jī)制和工具來(lái)提升安裝體驗(yàn)。確保驅(qū)動(dòng)程序包的正確和安全也很重要。DIFx 工具設(shè)計(jì)用于支持 Microsoft Windows Vista 和 Microsoft Windows Server 2008 的新的設(shè)備安裝體系結(jié)構(gòu),確保驅(qū)動(dòng)程序安裝包的操作不會(huì)與其他設(shè)備安裝、應(yīng)用程序或 Windows 組件發(fā)生沖突,確保已安裝的任何驅(qū)動(dòng)程序能夠在發(fā)生問(wèn)題時(shí)徹底回滾或卸載。 二、DPInst命令行參數(shù)詳解
DPInst.exe: 安裝和卸載驅(qū)動(dòng)程序
缺省情況下,該工具搜索當(dāng)前目錄并安裝所有找到的驅(qū)動(dòng)程序
用法: DPInst.exe [/U INF-file] [/S | /Q] [/LM] [/P] [/F] [/SH] [/SA] [/A] [/PATH Path] [/EL] [/L LanguageID] [/C] [/D] [/LogTitle Title] [/SW] [/? | /h | /help]
/U INF-file:到.INF文件的路徑
/S | /Q:以安靜模式卸載一個(gè)驅(qū)動(dòng)程序(.INF文件),不顯示設(shè)備安裝向?qū)В柚共僮飨到y(tǒng)彈出任何對(duì)話框
/LM:選擇遺產(chǎn)代碼模式(進(jìn)行安裝),允許安裝無(wú)簽名的驅(qū)動(dòng)程序和文件不完整的驅(qū)動(dòng)程序。這些驅(qū)動(dòng)程序?qū)o(wú)法在最新版本的Windows操作系統(tǒng)上安裝
/P:如果要安裝的驅(qū)動(dòng)程序不比已安裝的好,提示用戶
/F:要安裝的驅(qū)動(dòng)程序不比已安裝的好時(shí),強(qiáng)制(執(zhí)行當(dāng)前的)安裝(過(guò)程)
/SH:掃描硬盤(pán),僅為已存在的設(shè)備安裝驅(qū)動(dòng)程序。(該選項(xiàng))僅對(duì)即插即用(設(shè)備的)驅(qū)動(dòng)(程序)有效
/SA:在 添加/刪除程序 (列表)中不顯示當(dāng)前安裝的驅(qū)動(dòng)程序
/A:全部安裝 或 全不安裝
/PATH Path:在指定的路徑下搜索驅(qū)動(dòng)程序
/EL:支持所有在.XML文件中未明確列出的語(yǔ)言
/L LanguageID:在所有的用戶接口(UI)中使用指定的語(yǔ)言。在 本地化測(cè)試 時(shí)很有用
/SE:不顯示“最終用戶許可協(xié)議”
/C:將登陸信息輸出到控制臺(tái)(僅在 Windows XP或以上 操作系統(tǒng)上可用)
/D:卸載時(shí)刪除驅(qū)動(dòng)程序的二進(jìn)制代碼
/SW:不顯示設(shè)備安裝向?qū)?,操作系統(tǒng)任然可以彈出對(duì)話框
/? | /h | /help:顯示此 幫助(信息)
三、可到網(wǎng)上下載32位和64位版本的DPInst使用:
四、在INNO中的安裝inf驅(qū)動(dòng)的腳本是:
[Run]
; 安裝驅(qū)動(dòng)程序
Filename: "{sys}\dpinst64"; Parameters: "/path ""{app}\drivers\UsbDriver_x64"" /sw /se"; Check: Is64BitInstallMode
Filename: "{sys}\dpinst32"; Parameters: "/path ""{app}\drivers\UsbDriver_x86"" /sw /se"; Check: not Is64BitInstallMode