ctypes相关内容

在子进程中的共享 c_wchar_p 中设置字符串的值?

我遇到过这样的情况: 主进程生成一些子进程,他们应该将结果以字符串和数字类型写入共享对象中,对于数字类型没有问题,但对于字符串,值将丢失. 将多处理导入为 mpfrom ctypes import Structure, c_double, c_wchar_p, c_int# 共享对象类类 SharedObj(结构):_fields_ = [('name', c_wchar_p), ('va ..
发布时间:2021-07-23 20:16:14 Python

具有python ctypes的灰度hbitmap

我有一些PIL图片,试图将其转换为ctypes的灰度HBitmap.我对ctypes,C或HBITMAP的了解很少.我将来自各种来源的代码拼凑在一起,例如 使用8bpp灰度位图(非托管C ++) http://d.hatena.ne.jp/chrono-meter/20090905/p3 这是我到目前为止所拥有的.首先,我初始化了所需的标头: 导入ctypes从ctypes导入wi ..
发布时间:2021-05-10 18:39:25 Python

Python ctypes:访问冲突

我正在尝试为第三方C DLL编写Python包装器. 函数 WolaInit 初始化库并返回一个句柄,以用于后续函数调用. 导入ctypes#将WOLA DLL加载到内存中.wolaDLL = ctypes.WinDLL("wola.dll")#函数原型WolaInit = wolaDLL.WolaInitWolaInit.restype = ctypes.c_ulongWolaInit. ..
发布时间:2021-05-02 18:51:03 Python

使用Python访问C#dll中存在的函数

我想访问存在于c#文件中的函数 my_function(),该函数已编译为.net dll- abc.dll . C#文件 使用系统;使用System.Collections.Generic;使用System.Linq;使用System.Text;使用System.Threading.Tasks;命名空间测试{公共课Class1{公共字符串my_function(){返回"Hello Wo ..
发布时间:2021-04-27 20:03:07 C#/.NET

调用CreateProcessWithLogonW后,Python崩溃

使用在此处找到的代码,以备用用户身份启动应用程序.但是,启动该应用程序后,Python崩溃,并且Windows显示"python.exe已停止工作".它似乎仅在函数完成调用后才发生,但似乎不是由函数中的任何内容引起的. import ctypes,sys从ctypes导入结构,sizeofNULL = 0TRUE = 1FALSE = 0INVALID_HANDLE_VALUE = -1字= ..
发布时间:2021-04-27 20:03:04 Python

如何获取python的multiprocessing array'pointer并将其传递给Cpp程序?

我现在需要在python中请求数组,并将其传递到Cpp程序中,但是python仍然需要处理它们.但是我发现当我使用多重处理时,数组的adderess将会被更改. 下面是我的代码: //导出test.h中的dll,这是test.cpp#include"test.h"#include使用命名空间std;无效someWork(double * data,long *标志){ ..
发布时间:2021-04-27 20:03:01 其他开发

为什么GIL不能使在DLL中运行本机C ++代码的Python线程同步化?

我已经开发了一个简单的多线程Python应用程序(Python 3.7),可以在8个线程中调用8个不同的计算密集型任务.这些任务可以是嵌入在DLL中并且可以通过ctypes包进行访问的Python代码或C ++代码.我正在Windows的8核计算机上运行实验. 奇怪的是,当所有线程都调用Python代码时,似乎在特定时间只有一个线程处于活动状态,CPU利用率约为12.5%.但是,当在DLL中 ..
发布时间:2021-04-27 20:02:58 其他开发

相同功能的两个名称

我需要两个具有相同功能的实例(不仅仅是别名).绝对有效的一件事是 void writedata(联合芯片* tempchip,无符号字符* datapos,int datanum){等等}void writestring(union chip * tempchip,unsigned char * datapos,int datanum){writedata(tempchip,datapos,d ..
发布时间:2021-04-27 20:02:55 Python

Python可以调用使用外部"C"编译的C ++ DLL库吗?与ctypes?

互联网上有很多文章说Python无法使用 ctypes 访问C ++编译的DLL,还有其他相互矛盾的文章说,只要DLL,就可以访问DLL.使用外部"C" 方法进行编译.所以我只想澄清一下.如果外部的"C"是否可能用了吗? 解决方案 有C ++编译的dll可以与 ctypes 一起使用,而C ++编译的dll不能与 ctypes一起使用直接. 如果API仅公开纯旧数据(例如 int , ..
发布时间:2021-04-27 20:02:51 C/C++开发

如何使用Ctypes将此numpy数组传递给C?

目前,我正在学习C类型.我的目标是产生一个numpypython中的数组A从500到4 * pi分500步.该数组传递给计算这些值的切线的C代码.C代码也将这些值传递回python中的numpy数组B. 昨天我只是尝试将一个值从python转换为C并(经过一些帮助)成功.今天,我尝试传递整个数组,而不是值. 我认为向C库添加另一个函数是一个好主意,处理数组.新函数应该在循环中传递每个值 ..
发布时间:2021-04-27 20:02:44 Python

带参数的Ctypes回调函数

不确定我在这里问的是一种正确的方法(找不到任何类似的问题),但是可以了. 我需要使用自定义参数和ctypes参数来启动回调函数. 功能 def initMessageCallback(myData):callback = ctypes.CFUNCTYPE(ctypes.c_bool,ctypes.c_long)#返回类型和输出参数lib.SetMessageCallback.res ..
发布时间:2021-04-27 20:02:30 Python

从Python(ctypes)到C的指针以保存函数输出

我是Python的C集成的新手.我目前正在使用 ctypes 将.dll库包装到我的Python代码中,并且在传递指针以保存特定函数的输出时遇到问题. 我的C函数具有以下结构: 函数(int * w,int * h,无符号short * data_output) 其中 h 和 w 是输入,而 data_output 是大小为(wxh,1)的数组. 我能够通过创建 zeros ..
发布时间:2021-04-27 20:02:27 其他开发

更新ctypes指针

出于各种原因,我想就地更新ctypes指针的值.换句话说,我想要的是修改指针对象包装的内部缓冲区.这是一种可能的方法: 从ctypes导入 *一个=指针(c_int(123))b =指针(c_int(456))记忆(addressof(a),addressof(b),sizeof(c_void_p))a._objects.clear()a._objects.update(b._objects ..
发布时间:2021-04-27 20:02:24 Python

ctypes segfault仅在OSX上

我使用ctypes在Python中创建了一个非常简单的C库绑定.它所做的就是接受一个字符串并返回一个字符串. 我在Ubuntu上进行了开发,一切看起来都很好.不幸的是,在OSX上,完全相同的代码失败.我完全迷住了. 我整理了一个最小的案例来说明我遇到的问题. main.py 导入ctypes#编译为:#Linux:`gcc -fPIC -shared hello.c -o he ..
发布时间:2021-04-27 20:02:21 Python

加载DLL时Python解释器退出

我想测试用 ctypes 包装一个dll.我已经编写了以下测试代码,并使用Code :: Blocks和Cygwin将其编译为dll. #define DLL_EXPORT extern"C" __declspec(dllexport)DLL_EXPORT int sum(int a,int b){返回a + b;} 注意:这是完整的代码.也许缺少什么? 现在,我将 TestDll. ..
发布时间:2021-04-27 20:02:12 C/C++开发

Python程序以不同于英语的语言显示消息

我编写了一个简单的python程序,版本为2.7.6(32位).但是,当我在消息框中显示任何消息时,它会以某种奇怪的语言出现.代码在下面 将Tkinter导入为tk导入win32com.client导入pythoncom导入ctypes导入系统导入球导入系统导入操作系统MessageBox = ctypes.windll.user32.MessageBoxW如果__name__ =="__mai ..
发布时间:2021-04-27 20:02:09 其他开发