7370|23

64

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

如何把CE Device当作U盘? [复制链接]

WinCE5.0
我的CE Device已经有FAT32的分区了
请问如何把CE Device在连接PC后,当作U盘?

看到很多大侠已经实现了:
“WinCE5有,支持那个U盘的。那个core os service下面那个usb host support加一个usb storeage class driver,然后加一个device drivers下面的usb fuction clients的一个mass storage就可以了 ,当然ohci之类的要选上。”

只加上这些就可以了吗?,但是我加上了,PC端看不到U盘的盘符
偶尔有一次看到了盘符,却根本打不开。

注册表哪里需要改动吗?

最新回复

哈哈,估计他很久不来了  详情 回复 发表于 2008-12-24 19:36
点赞 关注

回复
举报

72

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
没有说明连接方式。。。。是要实现activesyc 还是。。。如果是,还要加as相关组件。。。。。
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
不是用ActiveSyc

就是通过USB,像插入U盘一样,在PC端出现个盘符,然后可以读取里面的内容
 
 
 

回复

92

帖子

0

TA的资源

一粒金砂(初级)

4
 
可以 自己做一个,基于RAPI。
 
 
 

回复

228

帖子

0

TA的资源

一粒金砂(中级)

5
 
难度WinCE5.0没有实现这个功能吗? 还需要自己编写吗?

sunrain_hjb兄,你有实现这个功能了吗?
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

6
 
RAPI不是基于ActiveSync的吗?
在Device要加ActiveSync的组件,PC端要装ActiveSync。

我是想不用ActiveSync来实现U盘功能,好多人应该都做过吧
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

7
 
没错,RAPI是基于ActiveSync。
我当时基于RAPI实现了文件的操作。
跟你所需要的还不一样啊。^_^
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

8
 
各位大侠帮忙
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

9
 
楼主提到的方法是让CE设备成为HOST端,U盘接入到设备中,而不是让设备成为U盘。
要让设备接到PC的时候能够认出来是U盘,必须要有如下几个方面的资源:
1. 确定硬件平台有USB Client支持(非HOST)。
2. 加入Device Drivers -> USB Function Clients -> Mass Storage(CE6.0环境)。(注意Mass Storage和Serial两个驱动最好不要同时并存,因为ActiveSync有可能通过Serial连接。)
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

10
 
有弄过的吗?
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

11
 
谢谢xinshine
1.  怎么确定硬件平台有USB Client支持?
2.  已加入Device Drivers -> USB  Function  Clients ->  Mass Storage(Serial驱动未加)

目前仍不可以
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

12
 
可以   自己做一个,基于RAPI。
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

13
 
现在,如果我插上SD卡PC上会有盘符
我看了调试的信息,前面的都正常,后面的有问题

0x8dfccb90: CStore Destructor(000D7EA0)
0x8dfccb90: SDMemory: GetDeviceInfo - Profile = SDMemory, length = 18
0x8dfccb90: SDMemory: GetStorageID Insufficient buffer space
SDMemory: -GetStorageID
0x8dfccb90: Loading partition driver mspart.dll hModule=8DF8D264
0x8dfccb90: Driver mspart.dll loaded
0x8dd13550: UsbFnMdd!CPipe::Open: Opened pipe (0x004dcff8): physical address 1, bus address 0x81
0x8dd13550: UsbFnMdd!UfnMdd_OpenPipe: Opened endpoint 0x81
0x8dd13550: UsbFnMdd!CPipe::Open: Opened pipe (0x004dd070): physical address 2, bus address 0x02
0x8dd13550: UsbFnMdd!UfnMdd_OpenPipe: Opened endpoint 0x2
0x8dd29b98: UsbMsFn!ProcessScsiRead10: IOCTL_DISK_READ failed; error = 160
0x8dd29b98: UsbMsFn!STORE_ExecuteCommand: failed to execute command 0x28
0x8dd29b98: UsbMsFn!BOT_ExecuteCB: Command : failed
0x8dfccb90: Opened the store hStore=000D8DE0
0x8dfccb90: NumSec=1939456 BytesPerSec=512 FreeSec=0 BiggestCreatable=0
0x8dfccb90: Partition Part00  NumSectors=1939454
0x8dfccb90: MSPART!PD_OpenPartition: dwStoreId=000D8DE0, PartName=Part00
0x8dfccb90: FSD_MountDisk: mounting volumes for hDsk=000DB100
0x8dfccb90: SDMemory: GetDeviceInfo - Profile = SDMemory, length = 18
0x8de87000: FSREG: Invalid HKEY 0x00000000
0x8de87000: FSREG: Invalid HKEY 0x00000000
0x8dd29b98: UsbMsFn!ProcessScsiRead10: IOCTL_DISK_READ failed; error = 160
0x8dd29b98: UsbMsFn!STORE_ExecuteCommand: failed to execute command 0x28
0x8dd29b98: UsbMsFn!BOT_ExecuteCB: Command : failed
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

14
 
查了WINERROR.H
// MessageId: ERROR_BAD_ARGUMENTS
// MessageText:
//  One or more arguments are not correct.
#define ERROR_BAD_ARGUMENTS 160L

错误发生处
    DWORD dwIoControlCode = (g_fLegacyBlockDriver) ? DISK_IOCTL_READ : IOCTL_DISK_READ;
    fResult = DeviceIoControl(
        g_hStore,
        dwIoControlCode,
        &sgSgReq,
        sizeof(sgSgReq),
        NULL,
        0,
        &dwBytesReturned,
        NULL);
    if (fResult) {
        DEBUGMSG(ZONE_COMMENT, (_T(
            "%s IOCTL_DISK_READ passed; %u bytes read\r\n"
            ), pszFname, dwBytesReturned));
    }
    else {
        DWORD dwError = GetLastError();
        DEBUGMSG(ZONE_ERROR, (_T(
            "%s IOCTL_DISK_READ failed; error = %u\r\n"
            ), pszFname, dwError));

        goto EXIT;
    }
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

15
 
路过,关注!
dapli,问题解决了么?
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

16
 
把USBFN那部分驱动看明白就OK了,然后修改注册表就可以了。针对不同的功能,系统加载对应的驱动就OK了,我实现了WINCE60+S3C6400下的做U盘功能

1。USBFN-------用于同步
2。MASSSTROAGE-----用于U盘
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

17
 
学习中。以前看2442 WM下的实现,做了一个软件切换的,不知道原理。。。。。。。。。
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

18
 
关注
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

19
 
这个MARK下吧:)
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

20
 
-_-!  好老的问题啊。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
艾睿电子& Silicon Labs 有奖直播 | 全新蓝牙信道探测:从技术创新到实际应用
直播时间:3月12日(周三)上午10:00
直播奖励:多功能榨汁机、蓝牙音箱、手机支架

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表