|
发表于 2011-5-8 23:48:33
|
显示全部楼层
本帖最后由 universebreaker 于 2011-5-8 23:53 编辑
回24,25樓:
找到位置了,只差不清楚如何改~
nvidia的驅動裝好後,路徑是programe files 下的nvidia corporation
裡面的installer2/Display.Driver.0資料夾內有很多inf檔,其實每一個inf檔內都有識別顯示卡的指令碼
只是nv_disp.inf內特別多,不少的quadro識別碼也是在這裡發現的~
我只看過這個inf檔,不清楚其他inf檔內有沒有quadro的識別碼,這就要大家幫忙了~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
寫這個帖寫到一半,又有進一步發現~!
剛剛拿nv_disp.inf來簡單分析一下,看到內部的運作機制:
如果大家打開那些inf檔來看的話,會看到內部有很多相似的部分
其實那些都是後話,因為它們是當驅動分辨出顯卡型號後,用來載入特定的登錄碼或檔案的
例如:
[Section019]
AddReg = nv_DRS_addreg
AddReg = nv_commonBase_addreg__02
AddReg = nv_commonDisplayModes_addreg
AddReg = nv_controlPanel_addreg
AddReg = nv_global_addreg
AddReg = nv_miscBase_addreg__07
AddReg = nv_opengl_addreg
AddReg = nv_timingRestrictions_addreg
CopyFiles = nv_Drs_copyfiles
CopyFiles = nv_controlpanel_copyfiles
CopyFiles = nv_license_copyfiles
CopyFiles = nv_sysDrivers_copyfiles
CopyFiles = nv_system32_copyfiles__02
CopyFiles = nv_syswow64_copyfiles__02
DelFiles = nv_sysDrivers_delfiles
DelFiles = nv_system32_delfiles
DelFiles = nv_system64_delfiles
DelReg = nv_clearRegistrySwitches_delreg
FeatureScore = E6
NVSupport3DVision = 1
NVSupportDisplayUpdate = 1
NVSupportPhysx = 1
RegisterDLLs = nv_common_registerdll
[Section019.CoInstallers]
AddReg = nv_commonCoinstaller_addreg
CopyFiles = nv_coinstaller_copyfiles
[Section019.GeneralConfigData]
MaximumDeviceMemoryConfiguration = 128
MaximumNumberOfDevices = 4
[Section019.Services]
AddService = nvlddmkm, 0x00000002, nv_nvlddmkm_serviceInstall
上面那些碼看不懂沒關係,因為不用改,要改的是下面兩個區域:
[Strings]和[NVIDIA_SetX_Devices.NTamd64.6.X] (前面的X可以是A或B,後面的X可以是0或1)
[Strings]應該是用來分出型號後,用作顯示用途(因為有"",靠估的...{而且C語言中""多數用來顯示,當然也有其他用途,但不會是用來作值來用,下面可以看出原因~})
例如:NVIDIA_DEV.0044.01 = "NVIDIA GeForce 6800 XT"
當讀到NVIDIA_DEV.0044.01,型號就是NVIDIA GeForce 6800 XT
[NVIDIA_SetX_Devices.NTamd64.6.X]側是讓驅動認出型號後,決定載入那些設定
例如:%NVIDIA_DEV.0040.01% = Section001, PCI\VEN_10DE&DEV_0040
所以真正起效用的應該是這一區域
但在這尚有幾個問題未解決:
類似的區域有三個:
[NVIDIA_SetA_Devices.NTamd64.6.0]
[NVIDIA_SetA_Devices.NTamd64.6.1]
[NVIDIA_SetB_Devices.NTamd64.6.0]
三個區域裡面都看到有些型號重覆出現,不清楚分別在那
而且在這三個區域前有這一段碼:
[Manufacturer]
%NVIDIA_A% = NVIDIA_SetA_Devices,NTamd64.6.0,NTamd64.6.1
%NVIDIA_B% = NVIDIA_SetB_Devices,NTamd64.6.0
NVIDIA_A和NVIDIA_B有何分別?這個分別可是會影響我們要去那一個區域修改,和如何修改....
所以希望大家幫忙研究一下了~ |
|