9328|18

101

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

WINCE下怎样实时检测到SD卡或MMC卡的状态???? [复制链接]

我用EVC做了一个工程,想要实现功能:不管程序执行到什么状态,只要SD卡或其它卡被拔出就退出程序。问题是怎么实时检测到SD卡的状态呢???在WINCE下没有WM_DEVICECHANGE等检测设备的消息,象这个功能在WINCE下应该怎么实现比较好呢??!!

最新回复

这个你去msdn上一查就知道了。有讲这个的。   详情 回复 发表于 2008-5-9 17:01
点赞 关注

回复
举报

63

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
奇怪,我发一个帖子怎么出现4个了~~~~~~~~斑竹是不是出什么问题了。

不过还是请各位先帮忙解决问题吧!!!
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
11
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

4
 
知道的请帮帮忙啊!!!!!!!!!!
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

5
 
有的.

LRESULT CXXXXXDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
if ( message == WM_DEVICECHANGE )        
        {                          
                switch (wParam)                
                {                
                case DBT_DEVICEARRIVAL: //U盘插进来
                        {                               
                                DEV_BROADCAST_HDR* dhr = (DEV_BROADCAST_HDR *)lParam;                
                                PDEV_BROADCAST_PORT lpdbp = (PDEV_BROADCAST_PORT)dhr;
                               
                                if( lpdbp->dbcp_devicetype == DBT_DEVTYP_PORT )        
                                {                                         
                                        if ( wcsicmp(lpdbp->dbcp_name, TCH_PATH3) == 0 )         //盘符,自己断点看看,我们是CF卡       
                                        {                                                 //判断到升级u盘                                        
                                        }                        
                                }                                        
                                break;                
                        }                       
                case DBT_DEVICEREMOVECOMPLETE:                
                        break;                
                default:                
                        break;                
                }        
        }
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

6
 
恩,这个讨论很多了。

ls回答的不错
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

7
 
{GUID}=GUID_friendly_name".

 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

8
 
{0};    // or any known and relevant d
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

9
 
谢谢各位的回答。

回 KevinCEC:WINCE下不支持这个WM_DEVICECHANGE消息。

回楼上的,谢谢你的提示,看来在WINCE下得自己创建一个消息队列来处理了
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

10
 
不可能,你的ce是什么版本?

我在ce5.0上就使用过WM_DEVICECHANGE

而且在platform builder for ce5中也能找到WM_DEVICECHANGE
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

11
 
我的4.2也支持的....
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

12
 
WINCE下的WM_DEVICECHANGE消息是要自己定义的吧???
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

13
 
我用的就是CE5.0的啊,我在EVC工程下使用,提示说WM_DEVICECHANGE没有定义,难道还要包括什么头文件???
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

14
 
错误如下:
error C2065: 'WM_DEVICECHANGE' : undeclared identifier
error C2065: 'DBT_DEVICEARRIVAL' : undeclared identifier
error C2051: case expression not constant
warning C4060: switch statement contains no 'case' or 'default' labels
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

15
 
在dbt.h中有

#define WM_DEVICECHANGE         0x0219
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

16
 
那就是说我只要在我的工程里包含dbt.h头文件就可以使用WM_DEVICECHANGE消息了哦
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

17
 
用Message queue messages来实现设备消息通知的具体实现原理是怎么样的?以上哪位朋友能否详细说下呢?!
谢谢了~~
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(中级)

18
 
KevinCEC 的方法最好,很全面了.
wince 2.0以上都支持WM_DEVICECHANGE.
支不支持要看OS机制,而不能光看有没有定义.
因为WM_DEVICECHANGE只是一个常量.
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

19
 
引用 16 楼 seer_lz 的回复:
用Message queue messages来实现设备消息通知的具体实现原理是怎么样的?以上哪位朋友能否详细说下呢?!
谢谢了~~


这个你去msdn上一查就知道了。有讲这个的。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
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
快速回复 返回顶部 返回列表