WINCE注册表永久保存的问题!!!!!!

farmerhou   2007-6-14 14:40 楼主
0 PID:0 TID:0 CEPC Firmware Init
      0 PID:0 TID:0 RTC - Status Reg B - 0x02
      0 PID:0 TID:0 g_dwCPUFeatures = a7e9fbbf
      0 PID:0 TID:0 g_nMtrrCnt = 8
      0 PID:0 TID:0 MTRR PhysMask0: 0000000ff0000800
      0 PID:0 TID:0 MTRR PhysBase0: 0000000000000006
      0 PID:0 TID:0 MTRR PhysMask1: 0000000ffe000800
      0 PID:0 TID:0 MTRR PhysBase1: 000000000e000000
      0 PID:0 TID:0 MTRR PhysMask2: 0000000ffff00800
      0 PID:0 TID:0 MTRR PhysBase2: 000000000ff00006
      0 PID:0 TID:0 MTRR PhysMask3: 0000000f00000000
      0 PID:0 TID:0 MTRR PhysBase3: 0000000000000000
      0 PID:0 TID:0 MTRR PhysMask4: 0000000f00000000
      0 PID:0 TID:0 MTRR PhysBase4: 0000000000000000
      0 PID:0 TID:0 MTRR PhysMask5: 0000000f00000000
      0 PID:0 TID:0 MTRR PhysBase5: 0000000000000000
      0 PID:0 TID:0 MTRR PhysMask6: 0000000f00000000
      0 PID:0 TID:0 MTRR PhysBase6: 0000000000000000
      0 PID:0 TID:0 MTRR PhysMask7: 0000000f00000000
      0 PID:0 TID:0 MTRR PhysBase7: 0000000000000000
      0 PID:0 TID:0 PhysMask0: 0000000ff0000800
      0 PID:0 TID:0 PhysMask1: 0000000ffe000800
      0 PID:0 TID:0 PhysMask2: 0000000ffff00800
      0 PID:0 TID:0 PhysMask3: 0000000f00000000
      0 PID:0 TID:0 PhysMask4: 0000000f00000000
      0 PID:0 TID:0 PhysMask5: 0000000f00000000
      0 PID:0 TID:0 PhysMask6: 0000000f00000000
      0 PID:0 TID:0 PhysMask7: 0000000f00000000
      0 PID:0 TID:0 g_nMtrrInuse = 3
      0 PID:0 TID:0 Looking for rom chain
      0 PID:0 TID:0 Rom chain NOT found
      0 PID:0 TID:0 Firmware Init Done.
      0 PID:0 TID:0 Error Reporting Memory Reserved, dump size = 00020000
      0 PID:0 TID:0 Booting Windows CE version 5.00 for (x86)
      0 PID:0 TID:0 &pTOC = 802279d8, pTOC = 82c2fedc, pTOC->ulRamFree = 82cc0000, MemForPT = 00004000
      0 PID:0 TID:0
Old or invalid version stamp in kernel structures - starting clean!
      0 PID:0 TID:0 Configuring: Primary pages: 4889, Secondary pages: 0, Filesystem pages = 2444
      0 PID:0 TID:0
Booting kernel with clean memory configuration:
      0 PID:0 TID:0 Memory Sections:
      0 PID:0 TID:0 [0] : start: 82cc5000, extension: 00002000, length: 01319000
      0 PID:0 TID:0 X86Init done, OEMAddressTable = 8023dc78.
      0 PID:0 TID:0 Windows CE KernelInit
4294767297 PID:3fdf002 TID:3fdf1de Updated eptr->e32_vsize to = 00090000
4294767298 PID:3fdf002 TID:3fdf1de Scheduling the first thread.
4294767299 PID:3fdf002 TID:3fdf1de 0x83fdf030: KernelInit2: pCurThread=83fdf030 hCurThread=03fdf1de hCurProc=03fdf002, KernelInit = 80260d90
4294767300 PID:3fdf002 TID:3fdf1de 0x83fdf030: Updated eptr->e32_vsize to = 00005000
4294767301 PID:3fdf002 TID:3fdf1de 0x83fdf030: Updated eptr->e32_vsize to = 00022000
4294767302 PID:3fdf002 TID:3fdf1de 0x83fdf030: Updated eptr->e32_vsize to = 00007000
4294767303 PID:3fdf002 TID:3fdf1de 0x83fdf030: Updated eptr->e32_vsize to = 00018000
4294767322 PID:3fdf002 TID:3fdf1de 0x83fdf030: Starting kernel debugger software probe (KdStub) - KD API version 18
4294767323 PID:3fdf002 TID:3fdf1de 0x83fdf030: Calling KDEnableInt (FALSE, NULL) without previously calling KDEnableInt (FALSE, p)
4294767333 PID:3fdf002 TID:3fdf1de 0x83fdf030: >>> Loading module NK.EXE at address 0x80220000-0x802B0000 (RW data at 0x82C32000-0x82CA01FF)
Kernel debugger connected.
The Kernel Debugger connection has been established (Target CPU is X86).
Target name: CE Device
Probe name: KdStub
Binary Image should be loaded at 0x80220000 / Data relocated at 0x82c32000
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\NK.EXE'
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\KD.DLL'
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\OSAXST1.DLL'
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\OSAXST0.DLL'
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\HD.DLL'

回复评论 (12)

4294767370 PID:3fdf002 TID:3fdf1de 0x83fdf030: first = 01ab0000, last = 02000000, SharedDllBase = 02190000
4294767372 PID:3fdf002 TID:3fdf1de 0x83fdf030: >>> Loading module coredll.dll at address 0x03F50000-0x03FF3000 (RW data at 0x01FFE000-0x01FFF765)
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\COREDLL.DLL'
4294767386 PID:3fdf002 TID:3fdf1de 0x83fdf030: Did not find emulation code for x86... using floating point hardware.
4294767500 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: >>> Loading module coredll.dll at address 0x03F50000-0x03FF3000 (RW data at 0x01FFE000-0x01FFF765)
4294767512 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: >>> Loading module filesys.exe at address 0x04010000-0x0407C000
Loaded symbols for 'E:\WINCE500\PBWORKSPACES\MY5DESIGN\RELDIR\CEPC_X86_DEBUG\FILESYS.EXE'
4294767526 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: CertMod.dll not found, using old OEM Trust Model
4294767526 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FileSystem Starting - starting with clean file system
4294767527 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: initializing ROM/RAM file system
4294767527 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: SC_CreateAPIHandle: pvData == NULL
4294767527 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: Registering file system ROM, index 2, flags 0x00000031
4294767527 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: Mount complete (ROM, index 2, flags 0x00000031)
4294767528 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: OEMIoControl: Unsupported Code 0x101008c - device 0x0101 func 35
4294767528 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: PCIReg(key: Drivers\BuiltIn\PCI\Instance\KITL, device: 1/1/0)
4294767529 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: InitSharedHeap: 44000000 10000 c
4294767529 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c:   InitSharedHeap: return 44000060
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FSREG: Unable to read value "NoDefaultUser" under HKEY_LOCAL_MACHINE\init\BootVars
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FSREG: Logging in default user.
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FSREG: Unable to read value "DefaultUser" under HKEY_LOCAL_MACHINE\init\BootVars
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: SetCurrentUser: Logging out (nobody), logging in default
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: Using default path "\profiles\"
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: BuildPath: profiles
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: BuildPath: profiles\default
4294767530 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: SetCurrentUser: User hives not supported -- using same registry for all users
4294767533 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: Using default path "Windows\"
4294767534 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: OEMIoControl: Unsupported Code 0x10100d0 - device 0x0101 func 52
4294767535 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: OEMIoControl: Unsupported Code 0x10100f8 - device 0x0101 func 62
4294767546 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: Using default path "Windows\"
4294767547 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FSREG: Unable to read value "DBFlags" under HKEY_LOCAL_MACHINE\init\BootVars
4294767563 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c:
Initializing Database
4294767565 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: DB:Validation: Name already exists DB_notify_events
4294767565 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: DB:CeCreateDatabase failed
4294767565 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: Filesystem initialized!
4294767565 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FILESYS: Waiting for kernel to be ready to launch apps
4294767565 PID:3fdf002 TID:a3fcaf22 0x83fcac90: InitMUI: DISABLED (-2145016784)
4294767565 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FS: HKLM\System\Events not available, no signal events created.
4294767566 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FILESYS: Launching apps
4294767566 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: ERROR: E:\macallan\private\winceos\COREOS\filesys\main\.\fsmain.c line 4101:
4294767566 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: Unable to locate init key for starting apps!
4294767566 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: FILESYS: Done launching apps
4294767566 PID:63fc8c1a TID:63fc8bea 0x83fc8a3c: This device has booted 1 times !!!

然后就不动了,不管怎样都是这样,高手来解疑啊,谢谢!
点赞  2007-6-14 14:40
说说你是怎么做的,贴这些有什么用?
点赞  2007-6-14 15:13
按照帮助一步一步做的,网上也有和帮助差不多的。FAT、ATAPI也都加进去了。
点赞  2007-6-14 17:14
不想说啊,不想说就算了
点赞  2007-6-15 09:36
高手帮帮忙啊,谢谢啊!我还有个80分的帖子没人回,您到那个帖子回一下,我再给您加80分,多谢!

现在情况又有所变化了:
首先加了Hive-based registry和FAT File System和ATAPI PCI/IDE Storage Block Driver。
然后在project.reg里加了
; @CESYSGEN IF FS_FSREGHIVE
; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\init\BootVars]
"SYSTEMHIVE"="\\system.hv"
"PROFILEDIR"=""
  "Start DevMgr"=dword:1
  "RegistryFlags"=dword:1

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

; END HIVE BOOT SECTION
; @CESYSGEN ENDIF FS_FSREGHIVE
接着在common.reg里面修改了一些注册表项:
在包含在;HIVE BOOT SECTION和; END HIVE BOOT SECTION中间的驱动项中加入了"Flags"=dword:1000
在包含在;HIVE BOOT SECTION和; END HIVE BOOT SECTION中间的HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\...\...
项下面加入了"MountFlags"=dword:2
然后sysgen
连到目标机时DEBUG中出现这样的信息:
The Kernel Debugger is waiting to connect with target.
      0 PID:0 TID:0 RTC - Status Reg B - 0x02
      0 PID:0 TID:0 X86Init done, OEMAddressTable = 80228f28.
     26 PID:a3fcadc6 TID:a3fcad96 OEMIoControl: Unsupported Code 0x101008c - device 0x0101 func 35

不在common.reg和project.reg里加,而在sysgen之后加再MAKE也出现这样的信息.
点赞  2007-6-15 11:53
http://community.eeworld.net/Expert/topic/5587/5587255.xml?temp=.1166651
这是我那个80分的帖子。
高手一定要帮忙啊,听君一席话胜读十年书啊!
点赞  2007-6-15 11:55
你到底是什么意思啊,这样说大家怎么帮你,现在到底是你的wince的注册表没有定制好,还是你的evc的问题,说清楚阿,
点赞  2007-6-15 16:41
你的注册表存放在哪里?CF,SD,Flash??
点赞  2007-6-21 15:56
永久保存,需要用HIVE类型的注册表。
点赞  2007-6-22 17:34
我也碰见这样的情况.
看看是不是驱动加错了,加在hive里面.
点赞  2007-6-25 10:40
问题很乱
要作hive要有一个前提:固定存储设备,帖里没说你是要将注册表保存在哪里NAND?SD?还是其它?
其次,如果有固定存储了,直接在注册表中定义就可以了,注册表定义的问题已经讨论过很多次了,你搜索一下都可以找到 完整的注册表定义
点赞  2007-6-25 15:48
实现注册表永久保存,一般通过Hive方式
之后需要把两部分内容加入到boot.hv配置文件中:
1.你的注册表保存的存储介质的驱动
2.你使用的文件系统的驱动
点赞  2007-6-27 09:52
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复