Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用WMI在WPF ViewModel中实现USB处理程序_C#_Wpf_Mvvm_Usb_Wmi - Fatal编程技术网

C# 使用WMI在WPF ViewModel中实现USB处理程序

C# 使用WMI在WPF ViewModel中实现USB处理程序,c#,wpf,mvvm,usb,wmi,C#,Wpf,Mvvm,Usb,Wmi,我正在使用WMI ManagementEventWatcher检测USB设备的插拔。我在ViewModel中实现了我的usb处理代码,这样我的TreeView数据源可以在任何检测时更新。我遇到一个关于COM对象的InvalidComObjectException,该对象已与其基础RCW分离,无法使用 我已经阅读了一些文章/答案,并理解这是由于WMI对象未被处置。但我没有看到任何具体的例子,具体到在WPF视图模型(MVVM)中这样做。希望有人能给我一些建议如何解决这个问题。非常感谢。那么,您什么时

我正在使用WMI ManagementEventWatcher检测USB设备的插拔。我在ViewModel中实现了我的usb处理代码,这样我的TreeView数据源可以在任何检测时更新。我遇到一个关于COM对象的InvalidComObjectException,该对象已与其基础RCW分离,无法使用


我已经阅读了一些文章/答案,并理解这是由于WMI对象未被处置。但我没有看到任何具体的例子,具体到在WPF视图模型(MVVM)中这样做。希望有人能给我一些建议如何解决这个问题。非常感谢。

那么,您什么时候订阅WMI通知?目前我正在ViewModel的构造函数中进行订阅。但我只是不确定应该在哪里处理WMI。我已经运行了这个示例:我将发布放在WPF表单的关闭事件上。一切都很好,在你的帮助下解决了。非常感谢。