在拖动复制操作期间清除MK_CONTROL标志

时间:2012-05-05 23:01:39

标签: mfc drag-and-drop ole stingray

我在MFC上使用Stingray Objective Views作为画布编辑应用程序。我最近开始遇到一个奇怪的问题,其中控制键设置被清除以进行拖动复制操作(也就是说,如果我在画布上有一个对象并且我在移动它时按住CTRL键应该复制而不是移动原始对象。)

奇怪的是我发现如果我在COleDropTarget :: XDropTarget :: DragOver的开头放置一个断点,那么我可以看到总是为dwKeyState参数设置MK_CONTROL标志,并且拖拽副本正常工作。但是如果没有断点,那么MK_CONTROL标志通常不会被设置,即使我按住CTRL键。

有谁知道可能导致问题的原因?

谢谢, 凯文

1 个答案:

答案 0 :(得分:0)

我没有使用Stingray软件。 。

问题: 以前工作过吗? 你怎么知道国旗没有设定? 如果使用断点设置,则应在相同的内存位置设置不带断点。

如果您确定它已被清除,则必须在断点之后将其清除。 如果它在之前和停止工作(假设你运行相同版本的代码),很可能罪魁祸首不是你的应用程序。

如果收费后它停止工作,代码中很可能发生的变化就会导致此问题;它可能是你的代码或黄貂鱼部分的某种错误。 您已经提到过使用COleDropTarget。如果您有黄貂鱼的来源,请查看它是否包含任何拖放自定义。