熱搜關(guān)鍵詞: PCIe高速數(shù)據(jù)采集卡RFSOC高速數(shù)據(jù)采集軟件無線電平臺VPX高速數(shù)據(jù)采集卡高速信號采集卡PCIe數(shù)據(jù)采集數(shù)字信號處理
64位系統(tǒng)的INF需求
WindowsServer2003SP1和更高的Windows版本不會在x64系統(tǒng)上安裝帶有未修飾INF節(jié)的驅(qū)動程序包,。為了與IntelItanium系統(tǒng)兼容,WindowsServer2003SP1將會安裝帶有未修飾INF節(jié)的驅(qū)動程序軟件包,;但是,,INF修飾是Windows硬件徽標(biāo)計劃的要求,,因此帶有未修飾INF節(jié)的驅(qū)動程序包沒有資格獲得該徽標(biāo),。
本文描述影響64位非x86系統(tǒng)(IntelItanium和AMD64)上的設(shè)備安裝的INF需求變化。在本文中,,"x64"指在AMD64和Intel擴(kuò)
展內(nèi)存64技術(shù)系統(tǒng)中使用的64位體系結(jié)構(gòu),。
為了防止用戶將基于INF的設(shè)備驅(qū)動程序包安裝到錯誤的系統(tǒng)上,并幫助制造商避免相關(guān)聯(lián)的支持成本,,對WindowsServer2003SP1的INF語法要求進(jìn)行了如下修改:
WindowsServer2003SP1和更高Windows版本上的驅(qū)動程序INF文件必須使用.ntia64或.ntamd64正確修飾[Manufacturer]節(jié)和[Models]節(jié)名稱中的條目,,以指定非x86系統(tǒng)上的操作系統(tǒng)版本。此更改不會影響基于x86的系統(tǒng)的INF文件或非PnP驅(qū)動程序的INF文件(包括基于x64的體系結(jié)構(gòu)的文件系統(tǒng)驅(qū)動程序INF文件),。
INF修飾如何影響驅(qū)動程序包的安裝
當(dāng)INF節(jié)名稱包含標(biāo)識特定平臺和操作系統(tǒng)的TargetOSVersion后綴時,,認(rèn)為INF節(jié)是有修飾的。修飾節(jié)包含僅與TargetOSVersion指定的平臺和操作系統(tǒng)相關(guān)的安裝信息,。
WindowsServer2003和早期版本的安裝行為
本節(jié)描述在安裝過程中,,操作系統(tǒng)如何處理原始發(fā)布版MicrosoftWindowsServer2003和早期Windows版本的修飾和未修飾INF。下面的示例展示了典型的未修飾[Manufacturer]節(jié)和[Models]節(jié)名稱在設(shè)備驅(qū)動程序包INF文件中可能的外觀:
[Manufacturer]%mycompany%=MyCompanyModels
[MyCompanyModels]%MyDev%=mydevInstall,mydevHwid
此示例未使用TargetOsVersion修飾,。WindowsServer2003和早期Windows版本的設(shè)備匹配語法規(guī)則允許將這些語句解析為安裝到任意平臺,。理想情況下,用戶無法選擇安裝此設(shè)備包,,除非確信該包擁有正確的二進(jìn)制文件,,但是此INF文件不會阻止這類安裝。
下面的例子給出了相同的[Manufacturer]節(jié)和[Models]節(jié)名稱,,這些節(jié)名稱都帶有TargetOSVersion修飾,,該修飾指定基于x64的平臺。其中,,"x64"指AMD64和Intel擴(kuò)展內(nèi)存64技術(shù)系統(tǒng)使用的64位體系結(jié)構(gòu)。INF中的.ntamd64修飾用于所有基于x64的系統(tǒng),。
[Manufacturer]%mycompany%=MyCompanyModels,NTamd64
[MyCompanyModels.NTamd64]%MyDev%=mydevInstall,mydevHwid
安裝此驅(qū)動程序包時,,INF解析器生成一個包含該修飾的節(jié)名稱,,然后檢查該節(jié)名稱是否適用于目標(biāo)平臺。如果適用,,INF解析器在INF文件中查找該節(jié)名稱并使用該節(jié)(如果存在),。
在WindowsServer2003和早期的Windows版本上,如果沒有修飾節(jié),,INF解析器會檢查所有未修飾節(jié),,以找到一個匹配的節(jié)。因為這些修飾并不常用,,所以如果有一個匹配的設(shè)備,,PnP會嘗試將驅(qū)動程序安裝到錯誤的平臺上。
WindowsServer2003SP1及更高版本的64位非x86平臺的安裝行為
在WindowsXP和原始發(fā)布版的WindowsServer2003上,,如果指定了修飾節(jié)名稱,,INF解析器將使用該修飾節(jié)名稱;否則使用未修飾節(jié),。但是,,在WindowsServer2003SP1和更高版本中,INF解析器不會在基于x64的平臺上查找未修飾節(jié)名稱,。
在運行WindowsServer2003SP1及更高版本的非x86平臺上,,INF解析器需要[Models]節(jié)名稱的TargetOsVersion修飾。例如,,如果用戶試圖在基于x64的系統(tǒng)上安裝未修飾的驅(qū)動程序包,,PnP將不會找到有修飾的[Models]名稱,因此不會嘗試匹配任何設(shè)備ID,。
注意:使用未修飾INF的存儲驅(qū)動程序初會使用F6加載,,但是當(dāng)系統(tǒng)在后一次設(shè)置GUI模式之后重新啟動時,會生成檢測錯誤7B,。因為F6運行機(jī)制未使用SetupAPI邏輯加載存儲驅(qū)動程序,。要安裝這類驅(qū)動程序,可以獲取使用64位INF修飾的更新版本的驅(qū)動程序,,或者手動修飾INF(本文稍后的“在基于x64的系統(tǒng)上安裝未修飾INF”一節(jié)將會描述),。檢測錯誤7B無法恢復(fù);必須按照描述的方法更新存儲驅(qū)動程序,,并使用F6重新啟動安裝過程,。
多平臺INF文件
可以使INF文件包含基于x64和Itanium系統(tǒng)的修飾節(jié),也可以包含未修飾節(jié)或基于x86的系統(tǒng)的ntx86修飾節(jié),,這樣可以創(chuàng)建多平臺INF文件,。
注意:帶有修飾INF的驅(qū)動程序包不會安裝在Windows2000上。修飾是在WindowsXP上首次實現(xiàn)的,。
可以采用兩種方法來支持多平臺驅(qū)動程序包:
•方法1:為每個平臺提供一個單獨的INF
•方法2:為所有支持的平臺提供一個多平臺INF
優(yōu)先采用方法1,,因為該方法的[Models]節(jié)名稱上少僅需一個修飾,。如果采用方法2,INF解析器將提供可用的語法來修飾不同的節(jié)并創(chuàng)建一個INF,。但是,,生成的INF比較復(fù)雜并且可能難以維護(hù)。
下面的示例給出一個多平臺INF,。
[Manufacturer]%mycompany%=MyCompanyModels,NTx86,NTia64
[MyCompanyModels.NTx86]%MyDev%=mydevInstallx86,mydevHwid
[MyCompanyModels.NTia64]%MyDev%=mydevInstallia64,mydevHwid
INF還可以在[Version]節(jié)中包含修飾的CatalogFile條目,。有關(guān)新信息,請參閱WDK文檔中的“為多個平臺和操作系統(tǒng)創(chuàng)建INF文件”,。
在基于x64的平臺上安裝未修飾INF
以下方法可用于在x64系統(tǒng)上安裝未修飾INF,。這些解決方法只適用于測試系統(tǒng),不建議用于產(chǎn)品驅(qū)動程序,。
方法1.關(guān)閉AMD64的未修飾模型檢測,。想要僅關(guān)閉針對AMD64系統(tǒng)的未修飾模型檢測,可以創(chuàng)建下面的注冊表非零數(shù)字值,。
HKLM\Software\Microsoft\Windows\CurrentVersion\Setup:REG_DWORD:DisableDecoratedModelsRequirement
將該鍵設(shè)為非零值(例如1)并重新啟動系統(tǒng),,然后安裝驅(qū)動程序。
方法2:編輯INF以添加修飾,??梢园凑毡疚乃龅姆椒ㄊ謩酉騃NF添加修飾,或者仿照其他64位驅(qū)動程序包的修飾INF手動向INF添加修飾,。這將破壞簽名驅(qū)動程序的簽名,,但是允許安裝驅(qū)動程序(取決于本地機(jī)器上的簽名驅(qū)動程序策略)。
若您有高速數(shù)據(jù)采集板卡定制需求,,請聯(lián)系我們:400-000-4026
關(guān)于坤馳科技:
坤馳科技是專注于高速數(shù)據(jù)采集與信號處理,、高速數(shù)據(jù)存儲與記錄的高科技公司。坤馳科技為用戶提供成熟的標(biāo)準(zhǔn)高速數(shù)據(jù)采集產(chǎn)品與技術(shù),,也可為用戶提供定制化的高速信號采集解決方案,。目前坤馳科技服務(wù)過的研究所、科研單位已達(dá)近百家,。高速數(shù)據(jù)采集產(chǎn)品線涵蓋PCIExpress,、cPCI、PXIe,、VPX,、USB等總線,包含高速AD,、DA平臺,、FPGA、DSP處理平臺,SATA/SSD,、Flash存儲平臺等,。
全國咨詢電話:400-000-4026
公司官方網(wǎng)站:http://m.jtyykv.cn