dapli
驱动牛犊
驱动牛犊
  • 注册日期2007-04-12
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分411分
  • 威望52点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
阅读:3104回复:6

如何实现SD或CF卡注册表存储

楼主#
更多 发布于:2008-01-26 15:51
2440   WinCE5.0
目前已实现Flash注册表Hive存储,现在希望存储在SD卡中

存储在Flash中时的注册表是:
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\MSFlash]
        "DriverPath"="Drivers\\BuiltIn\\MSFlash"
        "LoadFlags"=dword:1
        "BootPhase"=dword:0
        "Order"=dword:0
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MSFlash]
        "Profile"="FlashDisk"
        "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
        "Order"=dword:0
        "Index"=dword:1
        "FriendlyName"="MSFLASH   Driver"
        "Dll"="smflash.dll"
        "Prefix"="DSK"
        "Flags"=dword:1000

可是SD驱动是分层的,驱动有多个
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SDHC_SMDK2440]
        "Order"=dword:21
        "Dll"="sdhc_sc2440.dll"

;   SD   Memory   Storage   class   driver
[HKEY_LOCAL_MACHINE\Drivers\SDCARD\ClientDrivers\Class\SDMemory_Class]
      "Dll"="SDMemory.dll"
      "Prefix"="DSK"
      "BlockTransferSize"=dword:40     ;   send   no   more   than   64   blocks   of   data   per   bus   transfer
      "Profile"="SDMemory"
      "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}",
                                          "{A32942B7-920C-486b-B0E6-92A702A99B35}"

[HKEY_LOCAL_MACHINE\Drivers\Builtin\SDBusDriver]
      "Order"=dword:15
      "Dll"="SDBus.dll"
      "Prefix"="SDC"
      "ThreadPriority"=dword:64           ;   default   thread   priority   for   dispatch   thread
      "RequestListDepth"=dword:30       ;   pre-allocated   requests
      "IClass"=multi_sz:"{20FA98A8-B298-4b32-8D72-C716AEE2FA84}=%b","{6F40791D-300E-44E4-BC38-E0E63CA8375C}=%b"

难道我需要最开始时加载三个驱动
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\SDMemory]        
        "DriverPath"=multi_sz:"Drivers\\BuiltIn\\SDHC_SMDK2440","Drivers\\SDCARD\\ClientDrivers\\Class\\MMC_Class","Drivers\\Builtin\\SDBusDriver"
        "LoadFlags"=dword:1
        "BootPhase"=dword:0
        "Order"=dword:0
[HKEY_LOCAL_MACHINE\Drivers\SDCARD\ClientDrivers\Class\SDMemory_Class]
   "Dll"="SDMemory.dll"
   "Prefix"="DSK"
   "BlockTransferSize"=dword:40  ; send no more than 64 blocks of data per bus transfer
   ;"SingleBlockWrites"=dword:1  ; alternatively force the driver to use single block access
   ;"IdleTimeout"=dword:7D0      ; 2000 milliseconds
   ;"IdlePowerState"=dword:2     ; 0 == D0, 1 == D1, etc.
   ;"DisablePowerManagement"=""  ; if value present, then disable (remove value to enable)

   "Profile"="SDMemory"
   "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}",
                     "{A32942B7-920C-486b-B0E6-92A702A99B35}"
    "Flags"=dword:1000 ;add nand flash gegister
    "Order"=dword:0
    "Index"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDMemory]
    "Name"="SD Memory Card"
    "Folder"="Storage Card"
    "DefaultFileSystem"="FATFS"
    "PartitionDriver"="mspart.dll"
    "AutoPart"=dword:1
    "AutoMount"=dword:1
    "AutoFormat"=dword:1
    "MountAsRoot"=dword:1
    "BootPhase"=dword:0
    "Flags"=dword:1000

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDMemory\FATFS]  
    ;"MountAsRoot"=dword:1
    ;"Flags"=dword:14
    "FormatTfat"=dword:1
    "CheckForFormat"=dword:1
    "MountAsBootable"=dword:1
    "Flags"=dword:1000

目前启动不起来
看到有人已经做过,多谢指点一下
三千水击,九万扶摇
fanghw
驱动牛犊
驱动牛犊
  • 注册日期2008-03-18
  • 最后登录2008-06-25
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望22点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-03-27 09:01
学习学习.............................................................
jason_gw
驱动牛犊
驱动牛犊
  • 注册日期2002-05-07
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望33点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-03-27 10:05
你要把SD的相关注册表都放在
; HIVE BOOT SECTION
; END HIVE BOOT SECTION
中间,同时把存放system.hv的路径改到SD的相关路径
microsun
论坛版主
论坛版主
  • 注册日期2002-11-11
  • 最后登录2014-07-18
  • 粉丝0
  • 关注0
  • 积分1052分
  • 威望1159点
  • 贡献值0点
  • 好评度848点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-03-29 20:59
我没详细看你的注册表,把握好两点就行了:
1.你要把SD的相关注册表都放在
; HIVE BOOT SECTION
; END HIVE BOOT SECTION
中间,同时把存放system.hv的路径改到SD的相关路径

2.存放HIVE的设备一定要直接被filesys.exe加载.
学海无涯
fishly_0
驱动小牛
驱动小牛
  • 注册日期2005-09-10
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分51分
  • 威望466点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-04-11 17:03
版主,你这句话是什么意思  2.存放HIVE的设备一定要直接被filesys.exe加载,解释下了^_^
spaceboat5
驱动牛犊
驱动牛犊
  • 注册日期2003-11-04
  • 最后登录2012-09-04
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望21点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2012-09-04 15:11
我怎么也遇到这个问题,
请教有谁解决了吗?
spaceboat5
驱动牛犊
驱动牛犊
  • 注册日期2003-11-04
  • 最后登录2012-09-04
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望21点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2012-09-04 15:13
回 fishly_0 的帖子
fishly_0:版主,你这句话是什么意思  2.存放HIVE的设备一定要直接被filesys.exe加载,解释下了^_^ (2008-04-11 17:03)

学习学习
游客

返回顶部