首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DTN_DATETIMECHANGE断点和日期选择器控制有问题吗?

DTN_DATETIMECHANGE断点和日期选择器控制有问题吗?
EN

Stack Overflow用户
提问于 2013-09-04 18:51:24
回答 2查看 592关注 0票数 0

我有一个Windows应用程序,我正在处理,并且在调试时遇到了一个奇怪的问题。我正在使用WTL,并且在表单上有一个CDateTimePickerCtl来设置日期。我使用消息映射中的以下内容处理DTN_DATETIMECHANGE事件:

代码语言:javascript
复制
NOTIFY_HANDLER(CONTROL_ID_DATE, DTN_DATETIMECHANGE, OnDateChanged)

当应用程序在没有断点的调试器中运行时,这很好。如果OnDateChanged函数中有一个断点,即使在第一行,如果通过下拉日历更改时间,VS也会挂起。如果通过在控件中键入日期来编辑日期,则没有问题。

我甚至试图让OnDateChanged只调用PostMessage,并使用特定于应用程序的消息试图绕过这个问题,但是如果在消息处理程序中有一个断点,我也会遇到相同的奇怪问题。

变得更奇怪了。不仅VS挂起,而且一旦VS挂起,其他一些应用程序也会挂起。IE 10,Chrome,Outlook挂,记事本不。这是完全可重复的。

最后,我不得不通过任务管理器多次杀死VS。

您可以在这里看到我与Connect女士一起打开的机票:

https://connect.microsoft.com/VisualStudio/feedback/details/799690/break-point-in-vs-2005-when-debugging-c-gui-hangs-vs-and-other-applications-running-on-the-system-if-calendar-control-has-calendar-displayed

我的主要问题是,其他人是否见过这个问题和/或他们是否能复制它。我这里有另一个开发人员在另一台机器上复制了相同的代码,但是还没有把简化的代码放在一起进行回购。

还请注意,我在Win7 64位上运行VS 2008。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-06 22:00:09

在早期版本的Windows中,我对组合框也有同样的问题。特别是当断点在关闭时间设置并由另一个控件激活启动时。看起来很有可能在日期时间也存在问题。对于这种情况,我建议使用TRACE/ATLTRACE调用进行调试。

票数 1
EN

Stack Overflow用户

发布于 2015-10-01 07:28:12

这个问题已经很老了,但也许这个答案可以帮助一些人发现这个问题:

微软的连接网站(https://connect.microsoft.com/VisualStudio/feedback/details/490277/,link不再起作用)上有一个问题,描述了C#/.NET环境中的这种行为。

微软团队发现这是由Win32 DateTimePicker控件本身造成的,该控件安装了一个全局鼠标钩子,导致了所描述的行为。自从错误(?)已经在Win32中了,对于.NET/C++应用程序也是一样的。

我不认为窃听器会被修复。连接网站链接被关闭。

当前的解决方法是在DateTimePicker事件处理程序中没有断点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18621575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档