Detecting USB Connection — C# .Net CF 3.5

若如初见. 提交于 2019-12-05 15:09:47

问题


I have an application (.Net Compact Framework 3.5) running on a Windows Mobile 6.1 device and I want to detect when the USB connection changes (either something connects or disconnects).

I was originally using the SystemProperty.CradlePresent property to trigger an event but I am wondering if this only works if the device connecting has ActiveSync? I will be receiving a connection via USB from a Linux device that does not have ActiveSync running on it.

Can I still use SystemProperty.CradlePresent to detect the connect/disconnect from the USB? Or do I need to explore other options to detect the USB event? Thanks.


回答1:


Perhaps this previous question of mine may help:

How can I detect a USB disconnect event? (Windows, .NET C# application)

I ended up listening for and handling WM_DEVICECHANGE events. They are specified here: http://msdn.microsoft.com/en-us/library/aa363480(VS.85).aspx

Unfortunately I don't have a copy of the source code anymore so my memory on it is a bit hazy. I don't know if this solution applies in your context.




回答2:


Check this out, you might be able to grab part of the source code. Its written in C# with a GUI. Keep in mind every time you have a program running that is checking for new USB drives, it will take up memory and CPU so you might want to tone down the intervals at which it checks and then supply a "refresh" button for impatient users.



来源:https://stackoverflow.com/questions/5411454/detecting-usb-connection-c-sharp-net-cf-3-5

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!