2013年11月18日 星期一

WES2009無法安裝VGA driver:import Intel Graphics Media Accelerator Driver(igxp32.inf ;VGA DRIVER for Intel Atom D400、D500、N400 series)。



情境:WES2009使用component designerimport Intel Graphics Media Accelerator Driver(igxp32.inf VGA DRIVER for Intel Atom D400D500N400 series)
問題:會出現以下錯誤訊息。







檢查:

打開component designerlog file,可以看到如下的錯誤訊息。


Info:Completed processing file [Import succeeded]  : C:\Documents and Settings\Administrator\Desktop\test\VGA v6.14.10.5260\Graphics\igxp32.inf

Info:Processing file : C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf

Info:C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf: type PNP device INF

Info:Creating: Intel(R) Graphics Media Accelerator 3150

Warning:C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf: [DelFiles] needs to be processed by the user.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\INTEL\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

Info:Creating: Intel(R) Graphics Media Accelerator 3150

Warning:C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf: [DelFiles] needs to be processed by the user.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\INTEL\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

Info:Creating: Intel(R) Graphics Media Accelerator 3150

Warning:C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf: [DelFiles] needs to be processed by the user.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\INTEL\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

Info:Creating: Intel(R) Graphics Media Accelerator 3150

Warning:C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf: [DelFiles] needs to be processed by the user.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\INTEL\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\igfxcui\.

+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\igfxcui\.

Info:Completed processing file [Import succeeded]  : C:\test\VGA v6.14.10.5260\Graphics\igxp32.inf


解法:


一、針對Warning: [DelFiles] needs to be processed by the user.


原本的.inf

[CUI.DelFiles]

igfxrarb.lrc,,,1

igfxreng.lrc,,,1

igfxrfrc.lrc,,,1

igfxres.dll,,,1



修改成以下

[CUI.DelFiles]


參考以下資料


[DelFiles] section needs to be processed by the user

Description

The .inf file specified that the files listed in DelFiles should be deleted during installation. When you create an .sld file, this error message can be interpreted in one of the following two ways:

l   The files are not required for the component.

-          or -

l   The component conflicts with another component that contains the DelFiles.

Resolution

Because the EConvert tool cannot distinguish between these cases, you must examine the DelFiles section manually and determine which of the two cases applies.

If the files are not required for the component, do not include them in the component .sld file.



二、針對+++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource

主要是.inf有部分的格式沒有寫好,Component Disgner沒有辦法正確的加入reg,所以才會無法正確地建立 driver Component



原本的.inf

[CUIModePruning.AddReg]

HKLM,%CUIDeviceIndependentKey%

HKLM,"%CUIDeviceIndependentKey%\igfxdev","DisableCUIModePruning",%REG_DWORD%,1


[CUI.AddReg]

;Add INTEL/CUI keys

HKLM,"Software\INTEL"

HKLM,%DisplayKey%

HKLM,%CUIDeviceIndependentKey%

………………….

……………..

HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\igfxcui"


修改成以下就不會有error

[CUIModePruning.AddReg]

HKLM,%CUIDeviceIndependentKey%,,,

HKLM,"%CUIDeviceIndependentKey%\igfxdev","DisableCUIModePruning",%REG_DWORD%,1


[CUI.AddReg]

;Add INTEL/CUI keys  

HKLM,"Software\INTEL",,,

HKLM,%DisplayKey%,,,

HKLM,%CUIDeviceIndependentKey%,,,

………………….

……………..

HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\igfxcui",,,




參考資料如下:




INF AddReg Directive

Each named add-registry section referenced by an AddReg directive has the following format:

[add-registry-section]

reg-root, [subkey],[value-entry-name],[flags],[value][,[value]]

reg-root, [subkey],[value-entry-name],[flags],[value][,[value]]

...

大部分設備驅動都提供以.inf的安裝方式,可以通過導入inf檔到元件設計器中創建設備驅動程式元件,元件保存為.sld文件。

在開始導入的過程中,遇到以下的問題:


1)註冊表錯誤,如提示“An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\Software\Intel\Display\.

發現像是註冊表添加語句的語法錯誤,修改.inf檔,查找到添加註冊表項的行:

HKLM, “Software\Intel\Display”

這實際是添加了一個註冊表項,REG_SZ類型,值為空,修改上面語句為:

HKLM, “Software\Intel\Display”,,,
再次導入時,就不會有註冊表添加錯誤了。


沒有留言:

張貼留言