小胖熊酷数码GPS论坛 www.sosaw.com

 找回密码
 注册register

扫一扫,访问微社区

查看: 115353|回复: 48

[开发教程] [求助] 关于 ResidentFlash 盘 (已搞定)

[复制链接]
发表于 2009-3-3 20:09 | 显示全部楼层 |阅读模式
分享到:

   


 


 我的山寨一体机(掌微-爱培科方案)刷机后,程序由原来的1.24升级为3.0(这应该是应用程序的版本,


ROM的版本不知道)。下载地址:http://www.sosaw.com/dispbbs.aspboardid=44&Id=137402
    可能是新的程序体积比较小,现在可用内存也比未刷前大了不少(现有36M),但有一个缺点是原来机子


里的 NandFlash 内存盘不见了,点选项改不隐藏也不显示,电脑上又可显示。
    经对新的注册表进行分析,发现有三个 Flash 分区(我管它叫 “常驻闪存”),分别为:


ResidentFlash、ResidentFlash2、ResidentFlash3等。有关注册表项附在后面(重点是


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv]下的表项)。


 


    从机子的“运行”输入 ResidentFlash ,“确定”,可以进入 ResidentFlash 盘,并且可以进行拷贝


、删除等操作。这里有一些程序,好像是记录卫星状态的,不管它。
    更改有盘符 ResidentFlash3 所在的


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\PART_R3]表项下


的"MountFlags"=dword:00000001为 "MountFlags"=dword:00000000,则ResidentFlash3盘可以在机子里的


“资源管理器”中显示出来。也可以进行拷贝、删除等操作。(原先可以在电脑上显示的应该就是这个盘,


只是没有更改注册表前在机子里看不到而已)


    现在的问题是:更改有盘符 ResidentFlash2 所在的


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\ROFATFS]表项下


的"MountFlags"=dword:00000001为 "MountFlags"=dword:00000000,则ResidentFlash2盘不可以在机子里


的“资源管理器”中显示出来。也不可以从机子的“运行”输入 ResidentFlash2 ,“确定”,来进入


ResidentFlash2 盘,它说是无效的路径。
    请知道的DX告知:问题一、如何在机子里的“资源管理器”中显示出这些分区来,问题二、用什么办


法可以从机子的“运行”输入 ResidentFlash2 ,“确定”,来进入 ResidentFlash2 盘。[这个盘好像特


别奇怪!我用IDA分析了GPSLogin.exe程序(该程序是用ROMDump.exe从我的机子中导出来的),证明了有


ResidentFlash2这个盘存在,因为该程序有用到 ResidentFlash2盘]


 


谢谢!


 


 


[HKEY_LOCAL_MACHINE\System\StorageManager]
"Dll"="fsdmgr.dll"
"PNPUnloadDelay"=dword:00000100
"PNPWaitIODelay"=dword:000009c4


 


[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\Relfsd]
"BootPhase"=dword:00000002
"Dll"="relfsd.dll"
"Paging"=dword:00000000


 


[HKEY_LOCAL_MACHINE\System\StorageManager\FATFS]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Flags"=dword:00000024
"Paging"=dword:00000001
"EnableCache"=dword:00000001
"CacheSize"=dword:00000000
"Util"="fatutil.dll"
"CacheDll"="diskcache.dll"
"MountFlags"=dword:00000001


 


[HKEY_LOCAL_MACHINE\System\StorageManager\MSPART]
"Dll"="mspart.dll"


 


[HKEY_LOCAL_MACHINE\System\StorageManager\PartitionTable]
"01"="FATFS"
"04"="FATFS"
"06"="FATFS"
"07"="NTFS"
"0B"="FATFS"
"0C"="FATFS"
"0E"="FATFS"
"0F"="FATFS"
"20"="BOOT"
"21"="BINFS"
"22"="RAWFS"
"23"="RAWFS"
"25"="IMGFS"
"26"="BINARY"
"11"="HIVEREG"
"12"="ROFATFS"
"13"="PART_R3"


 


[HKEY_LOCAL_MACHINE\System\StorageManager\BINFS]
"Folder"="BINFS"
"FriendlyName"="Bin FileSystem"
"DLL"="binfs.dll"
"MountFlags"=dword:00000000
"BootPhase"=dword:00000000


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles]
"AutoMount"=dword:00000001
"AutoPart"=dword:00000000
"AutoFormat"=dword:00000000
"MountFlags"=dword:00000000
"DefaultFileSystem"="FATFS"
"PartitionDriverName"="MSPART"
"Folder"="Mounted Volume"
"ActivityEvent"=""
"PartitionDriver"="mspart.dll"


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv]
"DefaultFileSystem"="BINFS"
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:00000001
"AutoPart"=dword:00000001
"MountFlags"=dword:00000001
"Folder"="ResidentFlash"
"Name"="Microsoft Flash Disk"
"BootPhase"=dword:00000000
"Flags"=dword:00000024


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\BINFS]
"MountFlags"=dword:00000051


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\FATFS]
"MountFlags"=dword:00000000
"FormatTfat"=dword:00000001
"AutoFormat"=dword:00000001
"Flags"=dword:00000024


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\PART_R3]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Paging"=dword:00000001
"CacheSize"=dword:00000010
"Util"="fatutil.dll"
"MountFlags"=dword:00000001
"Flags"=dword:00380014
"FormatTfat"=dword:00000001
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:00000001
"Folder"="ResidentFlash3"


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\ROFATFS]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Paging"=dword:00000001
"CacheSize"=dword:00000010
"Util"="fatutil.dll"
"MountFlags"=dword:00000001
"Flags"=dword:00380014
"FormatTfat"=dword:00000001
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:00000001
"Folder"="ResidentFlash2"


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\HIVEREG]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Paging"=dword:00000001
"CacheSize"=dword:00000010
"Util"="fatutil.dll"
"MountFlags"=dword:00000043
"Flags"=dword:002c0014
"FormatTfat"=dword:00000001
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:00000001
"Folder"="RFlash"


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NewFlashDrv]
"Name"="NandFlash Chip"
"Folder"="ResidentFlash"
"AutoMount"=dword:00000001
"AutoPart"=dword:00000001
"AutoFormat"=dword:00000001
"BootPhase"=dword:00000000
"MountFlags"=dword:00000002


 


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NewFlashDrv\FATFS]
"Flags"=dword:00280014
"FormatTfat"=dword:00000001
"MountFlags"=dword:00000002


 


 


 


 


 


 


[此贴子已经被作者于2009-3-15 9:11:02编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册register

x
 楼主| 发表于 2009-3-13 14:37 | 显示全部楼层
以下是引用gpnanogkl在2009-3-13 13:17:00的发言:

已下载了dumprom.exe,但点击运行一闪即逝,好像是DOS程序,怎解决?谢谢!


导出来的ROM(假设名称叫1.bin)与 dumprom.exe  放在同一目录,并在此目录中建一个新的子目录,假设叫 ROM


那么运行 dumprom.exe 1.bin -d ROM  (注意空格)


一会在 \ROM 目录中就有你要的东西了


[此贴子已经被作者于2009-3-13 14:37:29编辑过]
回复 支持 9 反对 1

使用道具 举报

 楼主| 发表于 2009-3-8 09:32 | 显示全部楼层

自己再顶一次


我相信“心诚则灵”

回复 支持 9 反对 1

使用道具 举报

发表于 2009-3-12 15:22 | 显示全部楼层

后来怎么搞定的?我记得菜鸟试验过那个CE运行输入RSFLASH2的方法的吧?好像失败了。所以我没提那个办法。

回复 支持 7 反对 2

使用道具 举报

 楼主| 发表于 2009-3-13 12:50 | 显示全部楼层

哇,精华耶!


真是太谢谢 Aven !

回复 支持 8 反对 1

使用道具 举报

 楼主| 发表于 2009-3-10 09:07 | 显示全部楼层
以下是引用Aven在2009-3-9 12:35:00的发言:

注册表定义systempath里面看看有没RES2?


 


我觉的这个应该SKUNK(也就是PUPA最有发言权)


建议你发个短信问他


 


搜遍整个注册表,没有发现有 ResidentFlash2 这个东西


我看了一些文件,好像跟 BINFS 及 FATFS 的加载顺序有关,必须在 定制ROM的的时候设置,没有办法通过修改注册表来实现,不知道,反正我是搞不来了!


 


我发了个简信给 SKUNK DX 求助。


 


============


不行的话就先这么用了,我在办公室的窗台上,收星时间为70-110秒,还算是很快的。


另外:


我修改了注册表,仍然可以自己定义桌面及其他一些东西,如下:


 


[HKEY_LOCAL_MACHINE\System\Explorer\Shell Folders]
"Desktop"="\\ResidentFlash\\桌面"
"Programs"="\\ResidentFlash\\程序"
"StartUp"="\\ResidentFlash\\启动"


...


 


 


[HKEY_CURRENT_USER\ControlPanel\Desktop]
"wallpaper"="\\ResidentFlash\\WindowsCE.bmp"


 


[HKEY_CURRENT_USER\ControlPanel\Volume]
"Key"=dword:1
"Screen"=dword:2
"Mute"=dword:7
; 以下的值由 99999999 改为 30, 减小开机的声音
"Volume"=dword:30


 


[HKEY_LOCAL_MACHINE\init\BootVars]
"SystemHive"="save\\system.hv"
"ProfileDir"="save\\"
"Flags"=dword:0F
; 以下的值由 0 改为 1 (立即保存注册表改变)
"RegistryFlags"=dword:1


[此贴子已经被作者于2009-3-10 9:29:23编辑过]
回复 支持 7 反对 2

使用道具 举报

发表于 2009-3-9 12:35 | 显示全部楼层

注册表定义systempath里面看看有没RES2?


 


我觉的这个应该SKUNK(也就是PUPA最有发言权)


建议你发个短信问他

回复 支持 9 反对 0

使用道具 举报

 楼主| 发表于 2009-3-7 12:15 | 显示全部楼层

各位女士、先生,同学们,大家好!


 


关于 ResidentFlash2的问题,我相信肯定是存在的,能否将你们的折腾经验告诉我,谢谢!


 


不知厂家使用了什么妖术,我所知道的是  ResidentFlash 及 ResidentFlash3使用的是障眼法,难不成 ResidentFlash2 使用的是江湖上已失传的遁地法?

回复 支持 7 反对 1

使用道具 举报

 楼主| 发表于 2011-3-8 11:20 | 显示全部楼层
SD卡中的\AppShell文件夹中,并将所有程序里的 residentflash2 字串替换为 SDMMC\AppShell(长度一样),并将residentflash2盘理的东西删除,这样,在SD卡中也能运行 GPS_Main.exe(即原ROM中的应用程序),这样 residentflash2 盘就可以作为其它用途了(有24M)

这个如何实现?
-- by 会员 5218972 (3/8/2011 9:42:20 AM)

用 MyReplace.exe 替换
回复 支持 1 反对 1

使用道具 举报

发表于 2010-5-24 22:21 | 显示全部楼层
拒绝访问,能去掉就不会这么麻烦了。LZ是bin文件夹中所有的程序都指向residentflash2的吗?我用ue好象没找到啊

另外问lz一个问题,放在SD卡运行后,SD卡上的相关部分是否也被拒绝访问?
回复 支持 1 反对 0

使用道具 举报

发表于 2010-4-15 21:01 | 显示全部楼层
以下是引用Aven在2009-3-12 15:22:00的发言:

后来怎么搞定的?我记得菜鸟试验过那个CE运行输入RSFLASH2的方法的吧?好像失败了。所以我没提那个办法。



我继续用 IDA 分析 GPSLogin.exe程序,发现这程序将 residentflash2 设置为 "拒绝访问"

后来在注册表中禁用 GPSLogin.exe程序,即机子在启动时不让他加载GPSLogin.exe程序

就可以进入residentflash2 盘了

而且我将residentflash2 盘里面的程序拷贝到 SD卡中的\AppShell文件夹中,并将所有程序里的 residentflash2 字串替换为 SDMMC\AppShell(长度一样),并将residentflash2盘理的东西删除,这样,在SD卡中也能运行 GPS_Main.exe(即原ROM中的应用程序),这样 residentflash2 盘就可以作为其它用途了(有24M)

PS:搜星正常.

[此贴子已经被作者于2009-3-13 8:05:05编辑过]

-- by 会员 高级菜鸟 (3/13/2009 8:04:00 AM)




我在GPS状态下可以通过运行residentfalsh2进入该存储区。可是直接进入wince下则无法进入。我比较两个注册表,只有一个地方数据不一样。
你在注册表如何禁行gpslogin.exe,我在注册表将其删除后,就停留在启动画面,不能进入界面。烦请指教。
回复 支持 1 反对 0

使用道具 举报

发表于 2009-3-12 12:19 | 显示全部楼层
请教高级大侠,用什么方法及软件可解开ROMDump.exe导出的ROM文件,谢谢!
[此贴子已经被作者于2009-3-12 12:19:52编辑过]
发表于 2009-3-13 11:10 | 显示全部楼层

我发现你发的东东不多。但是篇篇都是你自己的体会。看这文章受益良多。

发表于 2009-3-12 14:43 | 显示全部楼层

在一机多图下进入CE(explorer),然后在CE下的的运行里输入:ResidentFlash2  点击确定就可以进入ResidentFlash2,ResidentFlash2\bin\下是一些应用程序和皮肤设置,可以自己DIY一些图片做出自己的系统皮肤。


 

 楼主| 发表于 2009-3-13 07:53 | 显示全部楼层
以下是引用gpnanogkl在2009-3-12 12:19:00的发言:
请教高级大侠,用什么方法及软件可解开ROMDump.exe导出的ROM文件,谢谢!
[此贴子已经被作者于2009-3-12 12:19:52编辑过]

 


用 ROMDump.exe导出


dumprom.exe 分解

 楼主| 发表于 2009-3-13 07:54 | 显示全部楼层
以下是引用我我我我我在2009-3-12 14:43:00的发言:

在一机多图下进入CE(explorer),然后在CE下的的运行里输入:ResidentFlash2  点击确定就可以进入ResidentFlash2,ResidentFlash2\bin\下是一些应用程序和皮肤设置,可以自己DIY一些图片做出自己的系统皮肤。


 


 


不行的,看我前面的说明

 楼主| 发表于 2009-3-13 08:04 | 显示全部楼层
以下是引用Aven在2009-3-12 15:22:00的发言:

后来怎么搞定的?我记得菜鸟试验过那个CE运行输入RSFLASH2的方法的吧?好像失败了。所以我没提那个办法。


 


我继续用 IDA 分析 GPSLogin.exe程序,发现这程序将 residentflash2 设置为 "拒绝访问"


后来在注册表中禁用 GPSLogin.exe程序,即机子在启动时不让他加载GPSLogin.exe程序


就可以进入residentflash2 盘了


而且我将residentflash2 盘里面的程序拷贝到 SD卡中的\AppShell文件夹中,并将所有程序里的 residentflash2 字串替换为 SDMMC\AppShell(长度一样),并将residentflash2盘理的东西删除,这样,在SD卡中也能运行 GPS_Main.exe(即原ROM中的应用程序),这样 residentflash2 盘就可以作为其它用途了(有24M)


PS:搜星正常.


[此贴子已经被作者于2009-3-13 8:05:05编辑过]
 楼主| 发表于 2009-3-13 11:55 | 显示全部楼层
以下是引用Aven在2009-3-13 11:10:00的发言:

我发现你发的东东不多。但是篇篇都是你自己的体会。看这文章受益良多。


谢谢,我在这儿也学习到许多咚咚


谢谢你,谢谢你论坛!

您需要登录后才可以回帖 登录 | 注册register

本版积分规则

百度SITEMAP|小黑屋|Archiver|手机版|小胖熊酷数码GPS论坛 www.sosaw.com ( 沪ICP备16050520号-1 )|网站地图 

GMT+8, 2019-12-9 21:35 , Processed in 0.238728 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表