在 WPF 应用程序中,我需要抑制使用 USB 数据线连接的数码相机的自动播放。
Thomas 提供了一个很好的答案。我采用了 Thomas 的工作代码并将其用于创建新 WPF 应用程序的 VS 2013 项目。示例应用程序运行良好。我采用了完全相同的代码并将其放入我的真实 WPF 应用程序中,并且从未调用过 AllowAutoPlay 过程。我确实为自动播放类创建了一个新的 Guid,并在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\CLSID 的注册表中为我的真实应用程序注册了它,就像我为示例应用程序所做的那样。
我应该采用什么方法来调试我的 WPF 应用程序?我将运行对象表转储到控制台,它看起来是正确的。我更熟悉旧的 Windows 窗体应用程序结构,我会说一些消息被遗漏或处理不当。
我需要一些帮助来调试它。
我尝试转储运行对象表,它看起来是正确的。我在一个新的 WPF 应用程序中尝试了 Thomas 的代码,它按预期运行。