Python通过SeMeMeAg到C++通信

2024-09-27 00:14:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是Python2.7和windows7professional上的visualstudio2010。在

我尝试使用sEnmDebug将CopyDATA结构对象发送到MFC C++程序。C++程序接收消息很好,但是,我不能为DWDATA属性找出正确的数据类型。在

DWDATA属性是针对C++代码中声明的变量进行检查的:

#define RUN_ASYNC 0x8001
#define RUN_SYNC 0x8002
...
#define RUN_MCS 0x8012
...
<> C++代码中的OnCopDATA函数有一个基本的转换语句:

^{pr2}$

因为我没有正确地发送它,它永远不会命中正确的大小写,最后使用默认值。在

我在python脚本中将copydatastruct设置为:

class COPYDATASTRUCT(Structure):
_fields_ = [("dwData", c_ulong),
            ("cbData", c_uint),
            ("lpData", c_void_p)]

并将变量声明为:

RUN_ASYNC = 8001
RUN_SYNC = 8002
...
RUN_MCS = 8012
...
<>这将向C++程序发送正确的四位数字,但对于交换机的情况,它没有被正确地识别。在

当我将python脚本中的变量声明为:

RUN_ASYNC = 0x8001
RUN_SYNC = 0x8002
...
RUN_MCS = 0x8012
...
< C++程序接收一个像32786的数字,当然,它不与交换语句一起工作。在

<>我需要声明我将要发送给DWDATA属性中的C++程序的变量,以便它们与C++代码一起工作。我有一种感觉,我真的很蠢,错过了一些相对简单的东西。在

提前谢谢。在


Tags: run代码程序脚本声明async属性数字

热门问题