SD卡显示盘符的问题

TheGameIsFives 2009-02-18 11:04:19
wince5.0系统 SD卡驱动已经可以发现识别卡 并且sdmemory.dll已经被sdbus加载
但是有一个问题:
如果sd卡没有格式化(其实里面有东西,而且用其他的windows mobile手机能看见卡里面的东西) 那么就没有sd盘符显示但是在存储管理器中能看见它的存在
我跟了一下 sd卡插入后正常回去读sd卡block0 block1 .....然后就能显示盘符
但是没有格式化(其实里面有东西,而且用其他的windows mobile手机能看见卡里面的东西)的sd卡只是读block0 2次 然后就不读了 就没有盘符显示 但是stroage manager里面能看到有卡

我想问的是sd卡插入后这个读 block0 block1..的动作是哪里调用的 不能显示盘符是卡driver的问题呢 还是操作系统设置的问题?
有没有谁遇到过同样的问题
...全文
599 点赞 收藏 6
写回复
6 条回复
gsymichael 2009年02月18日
这种情况比较奇怪啊。
你提到会去读BLk0,1。我猜测应该是去读取Sd卡FAT的BootSector了。这个部分如果读取有错就
没法加载文件系统,那么盘符自然也看不到了。
LZ可以看看part.cpp里面的PD_OpenStore函数,加些信息看看是不是问题出在这里。

如果说只是这一张卡这样,其他的卡都OK,那么也有可能是卡本身的原因。
回复 点赞
feishanm 2009年02月18日
我的也是这样,新的SD卡必须在PC上格式化一下。
在CE上,有时候频繁地读写SD卡,也会出现SD卡不能识别,到PC上格式化一下又可以了
回复 点赞
TheGameIsFives 2009年02月18日
补充一下 :
我说的格式化 是用读卡器再pc上格式化
但是其实卡在其他手机上已经是可以用的 只是在我的板子上要格式化以下才识别
回复 点赞
wdw1600 2009年02月18日
卡在PC机上格式化下就可以用了就是文件系统被写坏了的表现,我以前也遇到过,还弄了好几天
回复 点赞
gsymichael 2009年02月18日
[Quote=引用 4 楼 TheGameIsFives 的回复:]
引用 3 楼 gsymichael 的回复:
这种情况比较奇怪啊。
你提到会去读BLk0,1。我猜测应该是去读取Sd卡FAT的BootSector了。这个部分如果读取有错就
没法加载文件系统,那么盘符自然也看不到了。
LZ可以看看part.cpp里面的PD_OpenStore函数,加些信息看看是不是问题出在这里。

如果说只是这一张卡这样,其他的卡都OK,那么也有可能是卡本身的原因。

谢谢 我就是想找读卡的函数 没有格式化的卡是读两次 block0 然后就…
[/Quote]
private\winceos\coreos\storage\dospart
回复 点赞
TheGameIsFives 2009年02月18日
[Quote=引用 3 楼 gsymichael 的回复:]
这种情况比较奇怪啊。
你提到会去读BLk0,1。我猜测应该是去读取Sd卡FAT的BootSector了。这个部分如果读取有错就
没法加载文件系统,那么盘符自然也看不到了。
LZ可以看看part.cpp里面的PD_OpenStore函数,加些信息看看是不是问题出在这里。

如果说只是这一张卡这样,其他的卡都OK,那么也有可能是卡本身的原因。
[/Quote]
谢谢 我就是想找读卡的函数 没有格式化的卡是读两次 block0 然后就不读了
请问一下part.cpp在那个目录下?
是所有的卡如果未格式化 或者用诺基亚手机格式化之后在我的板子上都不能显示盘符了。但是在同事的wince手机上都是可以识别的,所以还是应该是驱动或者系统设置哪里的问题。
回复 点赞
发动态
发帖子
嵌入开发(WinCE)
创建于2007-09-28

8168

社区成员

4.1w+

社区内容

硬件/嵌入开发 嵌入开发(WinCE)
社区公告
暂无公告