python调用ctypes 调用win32_从Python ctypes加载带有通用Windows平台(UWP)调用的win32dll...

我想从Python调用通用Windows平台(UWP)API。我试图通过使用ctypes调用包含调用UWPAPI函数的win32 dll来做到这一点。在

总结一下这个过程:

Python->cytpes->dll->UWP

我一直在调试它。以下是的工作原理:创建win32 dll文件并使用

Python ctypes模块

生成包含UWP调用的win32 dll文件(使用指令here)。在从一个C++ Win32应用程序加载Win32 DLL文件,调用UWP API调用的函数。在

以下是不起作用的地方:当用Python ctypes加载win32 DLL时,该DLL内的UWP调用;从win32应用程序加载和调用同一DLL时,相同的UWP调用在从ctypes调用时失败。在

Python 3.6.4代码如下所示:dll = ctypes.CDLL(path_to_dll)

dll.IsKeyboardPresent.restype = ctypes.c_bool

is_keyboard_present = dll.IsKeyboardPresent()

崩溃后的回溯结果如下:

^{pr2}$

dll文件的源代码如下:#include "stdafx.h"

using namespace Platform;

using namespace Windows::Devices::Input;

using namespace Windows::Foundation;

using namespace Windows::Foundation::Collect

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值