主题:EM9260接U盘的问题? 共有34957人关注过本帖 |
---|
Rite2009 |
1楼 |
EM9260接U盘的问题? Post By:2012-6-20 8:16:00 [只看该作者]
我用EM9260接U盘,分别接了2G和4G的。结果出现一个问题:系统重启(不断电)后找不到U盘,重启几次都是一样,但是如果断电重启后又能找到U盘。可能是什么原因?
|
|
单帖管理 | 引用 | 回复 |
x10 |
2楼 |
Post By:2012-6-20 9:08:00 [只看该作者]
是吗?马上测试一下呢?
|
|
单帖管理 | 引用 | 回复 |
Rite2009 |
3楼 |
Post By:2012-6-20 9:10:00 [只看该作者]
我又测试了一下,软重启有时候可以找到,有时候找不到。这个比较麻烦呢,呵呵
|
|
单帖管理 | 引用 | 回复 |
cx |
4楼 |
Post By:2012-6-20 9:26:00 [只看该作者]
您好!我们进行了一系列测试,并未出现您所说的那种情况。您是怎样测试出来的呢?
|
|
单帖管理 | 引用 | 回复 |
Rite2009 |
5楼 |
Post By:2012-6-20 13:30:00 [只看该作者]
我的应用程序里是调用下面的函数,让系统重新启动的。
系统每天自动调用该程序启动一次。连续工作了半个月,其中有几次看不到U盘,我就再次重启,仍旧看不到U盘,然后我就断电重启,就有U盘了,再重复的软重启,就有时候能看到,有时候看不到。 void funSysRestart() { DWORD dwType; dwType = COLD_BOOT; SetCleanRebootFlag(); KernelIoControl(IOCTL_HAL_REBOOT, (LPVOID)&dwType, sizeof(DWORD), NULL, 0, NULL); } |
|
单帖管理 | 引用 | 回复 |
cx |
6楼 |
Post By:2012-6-20 13:44:00 [只看该作者]
系统启动后,你最好延时一下,再检测U盘,如果你的U盘容量较大或文件交多,就延时多一些。再试试
|
|
单帖管理 | 引用 | 回复 |
Rite2009 |
7楼 |
Post By:2012-6-20 15:00:00 [只看该作者]
这个检测U盘不是CE系统自动检测的么?跟我的应用程序延不延时没多大关系吧,我也没有马上就检测U盘的,而是系统启动后通过ftp去查看USBDisk文件夹的。所以我觉得跟应用程序没多大关系呢。
|
|
单帖管理 | 引用 | 回复 |
zxw |
8楼 |
Post By:2012-6-20 16:25:00 [只看该作者]
系统加载U盘的优先级是比较低的,只有系统完全启动完以后,才会去检测。当系统启动完后,如你的应用程序已存在,则有可能在应用程序运行时,U盘还没有被系统完全加载成功,所以应用程序做一点延时后,系统则可以把U盘挂接上,这时再去操作U盘,才会成功。
|
|
单帖管理 | 引用 | 回复 |
Rite2009 |
9楼 |
Post By:2012-6-21 7:57:00 [只看该作者]
那要如何做到应用程序延时?在应用程序中加一个判断来判断U盘是否加载?用Sleep放权?
|
|
单帖管理 | 引用 | 回复 |
zxw |
10楼 |
Post By:2012-6-21 9:12:00 [只看该作者]
你可以用如下的方法试试:
1、Sleep(2000) 2、在U盘处属的路径下建一个文件 3、检查建立文件返回值,如成功,向下运行程序,否则到1继续 |
|
单帖管理 | 引用 | 回复 |