ctypes相关内容
我正在尝试为名为Virtual Paradise的应用程序设计一个机器人,并且将用于构建该机器人的SDK编译为共享库,因此我必须使用ctypes。 当我使用 导入线程 ... 从ctypes导入CDLL时, CFUNCTYPE,c_char_p,c_int,c_void_p vp = CDLL(“ libvpsdk.so”) vp.vp_string.restype = c_
..
我里面有一个带有array [0]的结构。我想知道如何用ctypes表示它?还是ctypes不支持它,还有其他解决方案吗?任何帮助将不胜感激。 解决方案 您可以表示这样的结构: struct测试 { int大小; char arr [0]; }; 作为: class Test(ctypes.Structure): _fields_ = [('
..
我正在从我的python脚本中调用一个so文件。据我了解,我真的不需要释放使用ctypes在python中打开的共享库。但是,在我的so文件代码中,它dlopen另一个so文件,但不执行dlclose()。 在这种情况下,从python端使用安全吗?我不必释放在ctypes内部打开的共享库加载文件吗? 解决方案 规则 始终保持清洁 (尽管现代技术会为您提供清洁方面的服务)。 [Py
..
我想通过它的DLL连接一个光谱仪,其中一个功能定义为 UINT UAI_SpectrometerOpen(unsigned int dev, void **句柄,无符号int VID,无符号int PID) 来自文档,dev为指定索引光谱仪 的句柄是返回光谱仪句柄的指针 的VID是提供指定的VID PID是提供指定的PID dev,VID,PID是已知的,但是我不知
..
我正在使用ctypes将python代码与旧版C DLL接口。 DLL期望我给它一个函数指针用作回调,然后将在DLL内部调用它。 C的C声明该回调看起来像 char foo(char ** buf) 从理论上讲,DLL希望我让buf指向由回调管理的字符串缓冲区,如果一切正常,则返回0。在C中,这将是一个静态char []变量mybuf,我将使用 这样的代码将
..
我尝试阅读有关此主题的所有问题/答案,但无法进行任何工作。我要做的就是将结构发送到共享库,然后将其返回并可以访问。 我设法创建了一个结构,好了,我可以很好地将其传递给共享库。我知道这一点,因为如果从结构中返回特定值,它将很好地工作。 Python中的结构定义如下所示: class ROW(ctypes.Structure): _fields_ = [( “地址”,ctypes.c_
..
我正在尝试将此SO答案代码翻译为Python(以及那里的其他答案)官方文档的帮助 PACKAGE_ID 和 PACKAGE_INFO 。 我通过 GetPackageFullName 得到完整的软件包名称,但是我的某些结构却不如 OpenPackageInfoByFullName 给出了对我来说毫无用处的Unicode字符。同样, PackageIdFromFullName 在调用时也会返回
..
我正在尝试使用Pythons ctypes模块从DLL导入和使用函数,但是我一直收到此错误: Windows错误:例外:访问冲突写入0x0000002C 我在这里已经看过与类似主题有关的其他问题,但是似乎没有人能够提供有效的答案。 我当前的代码如下: from ctypes import * dll =“ ./WinlicenseSDK/Winl
..
ctypes 找不到通过fink安装的库,这些库位于 / sw / lib / 下,除非我没有明确地提供了到库的完整路径 >> import ctypes >> ctypes.CDLL(’libgoffice-0.8.dylib’) 回溯(最近一次调用为最后一次): 文件“”,中的第1行。 文件“ /sw/lib/python2.7/ctypes/__i
..
我有一个使用ctypes的简单代码: Python 3.1.1(r311:74480,Feb 23 2010,11: 06:41)linux2上的 [GCC 4.1.2 20071124(Red Hat 4.1.2-42)] 键入“帮助”,“版权”,“信用”或“许可证”以获取更多信息。 >> import ctypes >> libc = ctypes.CDLL(“ libc.so
..
我正在尝试使用Windows函数: https://docs.microsoft.com/zh-cn/windows/win32/api/winuser/nf-winuser-setwindowshookexa 注册全局钩子。 我已经在C ++ Dll中创建了一个钩子过程,并用C ++编写的可执行文件测试了该过程,该可执行文件调用SetWindowsHookEx,它似乎可以正常工作。
..
我正在使用ctypes从python调用DLL函数,我只是想从dll调用中捕获标准输出。我想在不更改dll代码本身的情况下进行很多printf的重定向。 我该怎么做? 解决方案 看起来您需要制作一个包装器。尝试如下操作: char * CallSomeFunc() { ostrstream ostr; cout.rdbuf(ostr.rdbuf()); SomeF
..
我已经安装了一个C ++ API应用程序,该应用程序放置了两个DLL( A.DLL 和 B.DLL )在我的程序文件夹中。 A.DLL 依赖于 B.DLL 我可以加载从 C:CPrograms Files\XXX-API\A.DLL ctypes.WinDLL IF成功地将它们c $ c> 而如果我将文件夹移动到另一个位置 C:\TEMP\ ,Python cytes加载将抱怨它找不到
..
我确定这是完全错误的,并且遇到了一些问题。我已经将一个 WIN32_FIND_DATAW 结构数组一个接一个地写到磁盘上,我想在Python脚本中使用并解析它们。 我当前使用的代码是: >> fp = open('findData','r')。read() >>>数据= ctypes.cast(fp,ctypes.POINTER(wintypes.WIN32_FIND_DATAW))
..
我想检测在执行python脚本期间是否按住CTRL | SHIFT | ALT来更改其行为。所以对于ex,如果我在按住SHIFT的情况下运行脚本,我希望GUI弹出而不是命令行...等等... 因为msvcrt.kbhit无法检测到SHIFT按键,我做了一些挖掘,发现此解决方案,这似乎很有希望。我将SHIFT添加到其热键列表中作为测试。不幸的是,如果您在dos外壳中尝试下面的代码,您会看到它可
..
我有一个由两个dll文件和一个python包装器组成的库。 我目前有基于这三个文件的代码,它们与我的主文件位于同一父目录中python文件。我现在正在尝试重构内容,然后继续开发,并希望将所述库代码移至其自己的lib /目录中。不幸的是,我尝试过的所有方法都无济于事。 import ctypes _lib = ctypes.cdll [“ ./my.dll“]
..
试图重新创建 _winapi.c 的 getenvironment(..) C函数(直接链接)在纯python中使用 ctypes ,我想知道如何翻译以下C代码: buffer = PyMem_NEW(Py_UCS4,totalsize); if(!buffer){ PyErr_NoMemory(); 转到错误; } p =缓冲区; end =缓冲区+ totalsize
..
我设法编写了代码,以便可以通过回调从C ++调用python。 Python中的回调设置如下: proto = ctypes.CFUNCTYPE(ctypes.c_char_p,ctypes.POINTER(ctypes.c_char)) def解析器(查询,结果): #解析代码 fp = proto(parser_func) 这可以,但是我从C
..
Python 2.7.8,Windows 7,Phyton USB程序员的DLL 我被困在应该是大内存阵列的Data元素上,我尝试使用多个不同的定义,但我无法理解错误试图告诉我什么。我遇到的大多数错误都是类型错误,下面的代码是我最近的错误,似乎正在调用该函数,但是由于该错误而无法处理。 C API: typedef struct tagACI_Memory_Params {
..
这是C ++代码: void sign_extending(int x) { int r; //产生的符号扩展数在此处 struct {signed int x:5;} s; r = s.x = x; cout
..