欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種在windows下用軟件啟動(dòng)硬件的方法

文檔序號(hào):6331810閱讀:352來(lái)源:國(guó)知局
專利名稱:一種在windows下用軟件啟動(dòng)硬件的方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)windows系統(tǒng)下驅(qū)動(dòng)軟件,特別是涉及一種在windows下用軟件啟動(dòng)硬件的方法。
背景技術(shù)
當(dāng)前,windows下對(duì)于即插即用的硬件來(lái)說(shuō),安裝完驅(qū)動(dòng)軟件后,插入硬件即能使用。微軟也提供了用軟件編程的方法來(lái)安裝驅(qū)動(dòng)軟件。微軟在windows2000及以后的操作系統(tǒng)中安裝驅(qū)動(dòng)軟件的方法是,直接用API函數(shù)(setupcopyoeminf)把inf(安裝硬件的信息文件)文件安裝到系統(tǒng)中,等硬件重新插入后再往系統(tǒng)中添加硬件信息及安裝和啟動(dòng)驅(qū)動(dòng)軟件。但是如果安裝前硬件已插在電腦上,僅用API函數(shù)把inf文件拷貝到系統(tǒng)中,而不重新插拔硬件,在這種情況下是無(wú)法啟動(dòng)已插在電腦上的硬件。
還有一種方法,用微軟提供的API函數(shù)編寫(xiě)安裝程序,在安裝過(guò)程中把inf文件中的硬件信息寫(xiě)入系統(tǒng),并啟動(dòng)驅(qū)動(dòng)軟件。這樣的做法有個(gè)缺陷在第一次安裝過(guò)程中會(huì)運(yùn)行一部分驅(qū)動(dòng)軟件,但又沒(méi)有成功安裝硬件,系統(tǒng)中會(huì)存在一些預(yù)期不到的數(shù)據(jù)。比如說(shuō)用這種方法安裝USB接口的智能讀卡器,運(yùn)行驅(qū)動(dòng)軟件的時(shí)候,會(huì)在系統(tǒng)中注冊(cè)一個(gè)讀卡器。(“BHDCUSBKEY 0”)但由于這個(gè)驅(qū)動(dòng)軟件沒(méi)有安裝成功,所述讀卡器不能使用,這是應(yīng)用中所不希望的。在第二次安裝驅(qū)動(dòng)軟件的時(shí)候才把硬件安裝到系統(tǒng)中,且讀卡器的序列是從第二個(gè)開(kāi)始。(“BHDC USBKEY 1”)上面的兩種方法都沒(méi)法很好地滿足安裝完硬件的驅(qū)動(dòng)軟件后即可啟動(dòng)硬件的要求。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有技術(shù)的不足,提供一種在windows下用軟件啟動(dòng)硬件的方法,使用這種方法在一些特定場(chǎng)合下可以很方便地啟動(dòng)已插在電腦上的硬件。
為解決上述技術(shù)問(wèn)題,本發(fā)明所述的一種在windows下啟動(dòng)硬件的方法包括如下步驟,首先安裝一個(gè)特定inf文件,在該特定inf文件中包含要安裝硬件的各種硬件信息,但不安裝硬件的驅(qū)動(dòng)軟件(sys文件),這樣在安裝完該特定inf文件后,在系統(tǒng)上已寫(xiě)入了相應(yīng)硬件的各種信息;然后用微軟提供的API函數(shù)編程把硬件inf文件安裝到系統(tǒng)的目錄下,用微軟提供的API函數(shù)啟動(dòng)硬件,并在該過(guò)程中安裝驅(qū)動(dòng)軟件。
本發(fā)明的方法常用于一些特殊場(chǎng)合。例如啟動(dòng)硬件前,這個(gè)硬件已插在電腦上,但還沒(méi)有安裝驅(qū)動(dòng)軟件,電腦上還沒(méi)有任何這個(gè)硬件的信息。比如刪除完驅(qū)動(dòng)軟件后,硬件還插在電腦上,如果需要重新安裝并啟動(dòng)硬件的場(chǎng)合。使用本發(fā)明的方法可以安裝并啟動(dòng)連在電腦上的、未安裝驅(qū)動(dòng)軟件的、特定的即插即用硬件。用這種方法無(wú)需重新插拔硬件,而且不會(huì)影響電腦上其他硬件。
具體實(shí)施例方式
本發(fā)明所述的一種在windows下用軟件啟動(dòng)硬件的方法是如果硬件已插入電腦,并且還沒(méi)有安裝驅(qū)動(dòng)軟件,則先安裝一個(gè)特定inf文件,該inf文件特點(diǎn)是不安裝驅(qū)動(dòng)軟件,但包含要啟動(dòng)的硬件的硬件描述符信息。這相當(dāng)于在電腦上安裝了一個(gè)沒(méi)有驅(qū)動(dòng)軟件的硬件,但電腦上(注冊(cè)表內(nèi))包含了這個(gè)硬件的信息。如果是USB硬件就必須包含描述符信息。然后用微軟提供的API函數(shù)安裝該硬件的inf文件,并用微軟提供的API函數(shù)啟動(dòng)該硬件,在該過(guò)程中安裝驅(qū)動(dòng)軟件。安裝特定inf文件的目的是為了往系統(tǒng)中寫(xiě)入一些硬件信息,以便在啟動(dòng)硬件的時(shí)候系統(tǒng)能夠搜索這個(gè)類型的即插即用的硬件。
下面結(jié)合一個(gè)具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
在本實(shí)施例中特定inf文件的內(nèi)容如下[Version]Signature=″$Chicago$″Class=USBClassGUID={36FC9E60-C465-11CF-8056-444553540000}Provider=%bhdc%DriverVer=09/25/2002,1.0.6.0[Manufacturer]%bhdc%=bhdc.USB[bhdc.USB]%bhdcUsb%=bhdcUsb.Install,USB\VID_4242&PID_4201[DestinationDirs]bhdcUsb.Files.Driver=10,System32\Drivers
bhdcUsb.Files.Driver.NTx86=10,System32\DriversbhdcUsb.Files.Inf=10,Inf[SourceDisksNames]1=″bhdcUsb″,,,[SourceDisksFiles]temp.inf=1[bhdcUsb.Files.Inf]temp.inf從上面文件中可以看出該文件只往系統(tǒng)中寫(xiě)入硬件信息并沒(méi)有安裝驅(qū)動(dòng)軟件。
第一步,安裝上面所述的含有硬件信息的特定inf文件。微軟提供的API函數(shù)來(lái)安裝該inf文件。在這個(gè)文件中不安裝驅(qū)動(dòng)軟件是由于在本例中是啟動(dòng)一個(gè)智能卡讀卡器。如果此時(shí)在該安裝特定inf文件中安裝驅(qū)動(dòng)軟件,會(huì)在系統(tǒng)中增加”bhdc usbkey 0”讀卡器,這個(gè)讀卡器是不能被使用的。在后面安裝硬件驅(qū)動(dòng)軟件的時(shí)候,系統(tǒng)會(huì)認(rèn)為那是第二個(gè)讀卡器。這是使用中所不希望見(jiàn)到的。
也可以用微軟提供的工具devcon.exe。具體使用方法是devconinstall*.inf usb\vid_4242&pid_4201第二步,用微軟提供的API函數(shù)來(lái)安裝驅(qū)動(dòng)軟件;下面是用于安裝驅(qū)動(dòng)軟件的inf文件;-------------------------------------------------------------;BHDC USB KEY
;Copyright(c)2004 BHDC Inc.
;ManufacturerBHDC;usbdriver.inf;Version 1.01;------------------------------------------------[Version]Provider=%BHDC%DriverVer=04/08/2004,1.01.0.0Signature=″$Windows NT$″Class=SmartCardReaderClassGuid={50DD5230-BA8A-11D1-BF5D-0000F805F530}CatalogFile=BHDC-USBKEY.cat[ControlFlags]ExcludeFromSelect=USB\Vid_4242&Pid_4201[Manufacturer]%BHDC%=BHDC,NTx86.5.1[DestinationDirs]DriverCopyFiles=10,System32\DriversDefaultDestDir=10,System32\Drivers[SourceDisksFiles]usbdriver.sys=1[SourceDisksNames]
1=%INSTALLDISK%,,[BHDC.NTx86.5.1]%BHDCKEY.DeviceDesc%=DriverInstallB,USB\VID_4242&PID_4201[BHDC]%BHDCKEY.DeviceDesc%=DriverInstallA,USB\VID_4242&PID_4201;-----------------------------------------------------------;Windows XP and later,x86 only;-----------------------------------------------------------[DriverInstallB]CopyFiles=DriverCopyFiles[DriverInstallB.Services]Addservice=BHDCKEY,2,DriverService,EventLogging[DriverInstallB.hw]AddReg=DriverHwAddReg;-----------------------------------------------------------;Windows 2000 Sections;-----------------------------------------------------------[DriverInstallA.NTx86]CopyFiles=DriverCopyFiles[DriverCopyFiles]usbdriver.sys,,,2[DriverInstallA.NTx86.Services]
Addservice=BHDCKEY,2,DriverService,EventLogging[DriverService]ServiceType=1;SERVICE_KERNEL DRIVERStartType =3;SERVICE_DEMAND_STARTErrorControl =1;SERVICE_ERROR_NORMALServiceBinary =%10%\System32\Drivers\usbdriver.sys[EventLogging]AddReg=EventLogAddReg[EventLogAddReg]HKR,,EventMessageFile,0x00020000,″%%SystemRoot%%\system32\drivers\usbdriver.sys″HKR,,TypesSupported,0x00010001,7[DriverInstallA.NTx86.hw]AddReg=DriverHwAddReg,Reader.Install.AddReg[DriverHwAddReg]HKLM,System\CurrentControlSet\Services\SCardSvr,Start,0x00010001,2;============Add reg for all readers===============[Reader.Install.AddReg]HKLM,Software\Microsoft\Cryptography\Calais\Readers,,,[Strings]BHDC=″BHDC″
BHDCKEY.DeviceDesc=″BHDC USB SMARTCARD READER″INSTALLDISK=″BHDC USB Installation Disk″本步驟中的inf文件和第一步中的特定inf文件最大區(qū)別在于第一步中的特定inf文件不安裝驅(qū)動(dòng)軟件。Windows 2000下用setupcopyoeminf函數(shù)把本步驟中的inf文件拷貝到系統(tǒng)中。
第三步,用setupapi函數(shù)搜索所述硬件描述符的硬件,來(lái)啟動(dòng)插在電腦上的硬件。并在執(zhí)行第二、三步驟過(guò)程中安裝驅(qū)動(dòng)軟件。由于第一步驟中已寫(xiě)入這種類型的描述符硬件的信息,所以在搜索過(guò)程中會(huì)找到并啟動(dòng)該硬件。
在這一步過(guò)程中也可以使用微軟提供的devcon.exe工具來(lái)啟動(dòng)硬件。Devcon restart usb\vid_4242&pid_4201。
權(quán)利要求
1.一種在windows下用軟件啟動(dòng)硬件的方法,其特征是它包括如下步驟,首先安裝一個(gè)特定inf文件,在該特定inf文件中包含要安裝硬件的各種硬件信息,但不安裝硬件的驅(qū)動(dòng)軟件,這樣在安裝完該特定inf文件后在系統(tǒng)上已寫(xiě)入了相應(yīng)硬件的各種信息;然后用微軟提供的API函數(shù)編程把硬件inf文件安裝到系統(tǒng)目錄下,用微軟提供的API函數(shù)啟動(dòng)硬件,并在該過(guò)程中安裝驅(qū)動(dòng)軟件。
全文摘要
本發(fā)明公開(kāi)了一種在windows下用軟件啟動(dòng)硬件的方法,首先安裝一個(gè)特定inf文件,以此往電腦上寫(xiě)需要安裝啟動(dòng)的硬件的信息;然后通過(guò)微軟提供的API函數(shù)來(lái)安裝和啟動(dòng)硬件,并在這個(gè)過(guò)程中安裝驅(qū)動(dòng)軟件。使用本發(fā)明的方法在一些特定場(chǎng)合下可以很方便地安裝和啟動(dòng)已插在電腦上的硬件。適用于在windows下安裝和啟動(dòng)硬件。
文檔編號(hào)G06F13/10GK1760844SQ200410067118
公開(kāi)日2006年4月19日 申請(qǐng)日期2004年10月13日 優(yōu)先權(quán)日2004年10月13日
發(fā)明者李煒 申請(qǐng)人:上海華虹集成電路有限責(zé)任公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
南华县| 镇原县| 广灵县| 靖远县| 天全县| 平原县| 左云县| 措勤县| 来安县| 祁阳县| 平江县| 霍城县| 安义县| 乐清市| 江安县| 水富县| 江北区| 姜堰市| 页游| 乌什县| 沙田区| 洞口县| 金门县| 汝州市| 西乌珠穆沁旗| 田阳县| 满城县| 禄劝| 老河口市| 宁化县| 博爱县| 东辽县| 西吉县| 侯马市| 井冈山市| 高邮市| 福泉市| 基隆市| 赣榆县| 巧家县| 屏南县|