首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

Wince6 修改HIVE 注册表出错了,该如何处理

2012-04-14 
Wince6 修改HIVE 注册表出错了我用 2416 的MCU 在修改 HIVE 注册表的时候系统启动到Windows CE Kernel for

Wince6 修改HIVE 注册表出错了
我用 2416 的MCU 在修改 HIVE 注册表的时候
系统启动到

Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 16 2009 at 10:08:15
INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb
DCache: 128 sets, 4 ways, 32 line size, 16384 size
ICache: 128 sets, 4 ways, 32 line size, 16384 size
FCLK:400000000, HCLK:133333333, PCLK:66666666
+OALArgsInit()
Arguments area has some values
-OALArgsInit()
+++BSPIntrInit
---BSPIntrInit(rc = 1)
-OEMInit
[OEMIO:INF] + IOCTL_HAL_POSTINIT
[OEMIO:INF] - IOCTL_HAL_POSTINIT

这里就不动了~!

注册表:
; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\Drivers\Resources\IRQ]
  "Identifier"=dword:1
  "Minimum"=dword:1
  "Space"=dword:20
  "Ranges"="1-0x20"
; "Shared"=""

[HKEY_LOCAL_MACHINE\Drivers\Resources\IO]
  "Identifier"=dword:2
  "Minimum"=dword:0
  "Space"=dword:10000
  "Ranges"="0-0xFFFF"
; END HIVE BOOT SECTION


; HIVE BOOT SECTION
IF IMGHIVEREG
[HKEY_LOCAL_MACHINE\Init\BootVars]
   
  "SystemHive"="Documents and Settings\\system.hv" 
  "ProfileDir"="Documents and Settings" 
  "Start DevMgr" = dword:1 ;启动device.exe 
  "DefaultUser" = "default" ;决定user.hv的路径 
  "Flags"=dword:0 ;5.0下决定在哪个阶段启动device.exe的表项 
  "RegistryFlags" = dword:1 ;设置注册表每次改动后自动flush到system.hv 
   
ENDIF ;IMGHIVEREG
; END HIVE BOOT SECTION

; HIVE BOOT SECTION
IF BSP_NONANDFS !

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\SMFlash]
  "DriverPath"="Drivers\\BlockDevice\\SMFlash"
  "LoadFlags"=dword:1
  "MountFlags"=dword:11
  "BootPhase"=dword:0
  ;"Flags"=dword:1000

[HKEY_LOCAL_MACHINE\Drivers\BlockDevice\SMFlash]
  "Prefix"="DSK"
  "Dll"="BIBDrv.dll"
  "Order"=dword:0
  "Ioctl"=dword:4
  "Profile"="SMFlash"
  "FriendlyName"="Samsung Flash Driver"
  "MountFlags"=dword:11
  "BootPhase"=dword:0
   
  ;"Flags"=dword:1000

; Bind BINFS to the block driver
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFlash]
  "DefaultFileSystem"="BINFS"
  "PartitionDriver"="mspart.dll"
  "AutoMount"=dword:1
  "AutoPart"=dword:1
  "MountFlags"=dword:11
  "Folder"="ResidentFlash"
  "Name"="Samsung Flash Disk"
  "BootPhase"=dword:0
   
  ;"Flags"=dword:1000
   
   

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NANDFLASH\BINFS]
  "MountHidden"=dword:1
  "MountAsROM"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\SMFlash\Filters\CacheFilt]
  "Dll"="cachefilt.dll"
  "LockIOBuffers"=dword:1

ENDIF ; BSP_NONANDFS


; END HIVE BOOT SECTION


IF BSP_POCKETMORY

IF IMGHIVEREG
; HIVE BOOT SECTION
ENDIF IMGHIVEREG

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk]
  "Prefix"="DSK"


  "Dll"="ONDisk.dll"
  "Order"=dword:1
  "Index"=dword:2
  "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
  "Profile"="FlashDisk"
  "BmlVolumeId"=dword:0 ; BML volume ID = 0
  "BmlPartitionId"=dword:8 ; BML parition ID = PARTITION_ID_FILESYSTEM
  "WMRStartSector"=dword:0
  "WMRNumOfSector"=dword:10000 ; 32MByte
  "Flags"=dword:11000 ; do not load again in boot phase 2 ;
   
; "Flags"=dword:1000
; "MountAsBootable"=dword:1 
   
   
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk]
  "DefaultFileSystem"="FATFS"
  "PartitionDriver"="mspart.dll"
  "Name"="PocketMory MLC Disk"
; "Folder"="PocketMory"
  "AutoMount"=dword:1
  "AutoPart"=dword:1
  "AutoFormat"=dword:1
  "MountFlags"=dword:2
; "Ioctl"=dword:4
   
; "MountAsBootable"=dword:1
   
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FlashDisk]
  "DriverPath"="Drivers\\BuiltIn\\FlashDisk"
  ; LoadFlags 0x01 == load synchronously
  "LoadFlags"=dword:1
  "BootPhase"=dword:0
   
  "Flags"=dword:1000

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk\FATFS]
  "FriendlyName"="PocketMory FAT FileSystem"
  "Dll"="fatfsd.dll"
  "Flags"=dword:00000014 ; FATFS_ENABLE_BACKUP_FAT | FATFS_DISABLE_AUTOSCAN
  "Folder"="PocketMory"
  "FormatExfat"=dword:1

  "FormatTfat"=dword:1 

  "EnableCacheWarm"=dword:0
  "CheckForFormat"=dword:1
  "EnableWriteBack"=dword:1

  "MountAsBootable"=dword:1
   
   
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FlashDisk\Filters\CacheFilt]
  "Dll"="cachefilt.dll"
  "LockIOBuffers"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk\FATFS\Filters\CacheFilt]
  "Dll"="cachefilt.dll"
  "LockIOBuffers"=dword:1
   
   
IF IMGHIVEREG  
; END HIVE BOOT SECTION
ENDIF IMGHIVEREG

;----------------------------------------
; 2nd FAT Area
;----------------------------------------

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk1]
  "Prefix"="DSK"
  "Dll"="ONDisk.dll"
  "Order"=dword:1
  "Index"=dword:1
  "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
  "Profile"="FlashDisk1"
  "BmlVolumeId"=dword:0 ; BML volume ID = 0
  "BmlPartitionId"=dword:9 ; BML parition ID = PARTITION_ID_FILESYSTEM1
  "WMRStartSector"=dword:10000
  "WMRNumOfSector"=dword:ffffffff ; last location
; "Flags"=dword:11000 ; do not load again in boot phase 2 ;

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1]
  "DefaultFileSystem"="FATFS"


  "PartitionDriver"="mspart.dll"
  "Name"="PocketMory MLC Disk1"
; "Folder"="Disk"
  "AutoMount"=dword:1
  "AutoPart"=dword:1
  "AutoFormat"=dword:1
; "MountFlags"=dword:0
; "Ioctl"=dword:4

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FlashDisk1]
  "DriverPath"="Drivers\\BuiltIn\\FlashDisk1"
  ; LoadFlags 0x01 == load synchronously
  "LoadFlags"=dword:1
  "BootPhase"=dword:0

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1\FATFS]
  "FriendlyName"="PocketMory FAT FileSystem1"
; "Dll"="fatfsd.dll"
  "Flags"=dword:00000014 ; FATFS_ENABLE_BACKUP_FAT | FATFS_DISABLE_AUTOSCAN
  "Folder"="Disk"
  "FormatExfat"=dword:1
; "EnableCacheWarm"=dword:0
  "CheckForFormat"=dword:1
  "EnableWriteBack"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FlashDisk1\Filters\CacheFilt]
  "Dll"="cachefilt.dll"
  "LockIOBuffers"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1\FATFS\Filters\CacheFilt]
  "Dll"="cachefilt.dll"
  "LockIOBuffers"=dword:1

ENDIF BSP_POCKETMORY









[解决办法]
再贴个2440 的给你
[解决办法]
;-----------HIVE BEGIN-NEW------------------
; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\init\BootVars]
"SYSTEMHIVE"="Documents and Settings\\system.hv"
"Start DevMgr"=dword:1
"RegistryFlags"=dword:1
"DefaultUser"="default"
"Flags"=dword:1

[HKEY_LOCAL_MACHINE\init\BootVars]
"DefaultUser"="default"

[HKEY_LOCAL_MACHINE\Drivers\BlockDevice\SMFLASH]
"Prefix"="DSK"
"Dll"="smflash.dll"
"Order"=dword:0
"Ioctl"=dword:4
"Profile"="SMFLASH"
"FriendlyName"="MS Flash Driver"
"MountFlags"=dword:11
"BootPhase"=dword:1
"Flags"=dword:1000

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\SMFLASH]
"DriverPath"="Drivers\\BlockDevice\\SMFLASH"
"LoadFlags"=dword:1
"MountFlags"=dword:11
"BootPhase"=dword:1
"Flags"=dword:1000

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH]
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"Folder"="NandFlash"
"Name"="Microsoft Flash Disk"
"BootPhase"=dword:0
"Flags"=dword:1000

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH\FATFS]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Flags"=dword:00280014
"Paging"=dword:1
"CacheSize"=dword:0
"EnableCacheWarm"=dword:0
"EnableCache"=dword:1
"MountFlags"=dword:2

; END HIVE BOOT SECTION
;---------HIVE END------------------

------解决方案--------------------


要实现HIVE 注册表 应该先在eboot 中对FLASH 进行格式化。
[解决办法]
WinCE6我记得Hive注册表 要在PB定制时考虑特性选择就行了啊,注册表只要是三星发布的BSP包都不用改的。
[解决办法]

探讨
要实现HIVE 注册表 应该先在eboot 中对FLASH 进行格式化。

[解决办法]
确认一下IF IMGHIVEREG中的IMGHIVEREG是否被定义了先。
[解决办法]
探讨
确认一下IF IMGHIVEREG中的IMGHIVEREG是否被定义了先。

[解决办法]
探讨
引用:
确认一下IF IMGHIVEREG中的IMGHIVEREG是否被定义了先。

这个如果楼主没定义的话,只应该是不能实现hive型的注册表吧?会影响启动码?
呵呵
多谢你昨天给我解答的问题

热点排行