问题标签 [ctypes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
21385 浏览

python - 如何从 python ctypes 中取消引用内存位置?

我想在 python ctypes 中复制以下 c 代码:

我可以弄清楚如何将此内存位置称为函数指针,而不仅仅是进行正常的取消引用:

由于存在段错误,指令指针指向该内存位置,因此它成功调用了它。但是我不能让它只读取内存位置:

0 投票
1 回答
2258 浏览

python - Python:使用 ctypes 从缓冲区中提取数据

我能够在 Python 中成功调用带有 ctypes 的函数。我现在有一个缓冲区,里面装满了我要提取的数据结构。最好的策略是什么?还有什么我应该发布的吗?

功能:

结构:

一些输出:
传输字节:156
缓冲区大小:272
缓冲区:<ctypes.c_char_Array_272 object at 0x8c3f0>

0 投票
4 回答
57245 浏览

c++ - 如何将 C++ 类与 ctypes 一起使用?

我刚刚开始使用 ctypes,并且想使用我使用 ctypes 从 python 中导出到 dll 文件中的 C++ 类。所以假设我的 C++ 代码看起来像这样:

我会知道创建一个包含此类的 .dll 文件,然后使用 ctypes 在 python 中加载 .dll 文件。现在我将如何创建一个 MyClass 类型的对象并调用它的测试函数?ctypes甚至可能吗?或者,我会考虑使用 SWIG 或 Boost.Python,但 ctypes 似乎是小型项目最简单的选择。

0 投票
1 回答
1031 浏览

python - 用python自省DLL

我目前正在尝试使用 python 对 DLL 进行一些自省。我想自动创建一个基于 DLL 的图形测试界面。

我可以很容易地在 python 中加载我的 DLL 并调用一些函数。主要问题是如果我在对象上调用“dir”而不调用任何方法,我会得到结果

当我手动调用一个函数(如“Read_Version”)时,我得到了 dir 函数的结果

内省似乎只对我已经调用过的函数起作用,这并不是真正的“有用”;)。

您是否有其他想法来获取 DLL 中的函数?(当然在 python 中)

我在 Windows 下使用 python 2.6。

0 投票
4 回答
8692 浏览

vb.net - 获取 Excel (*.xls) 文件中单元格文本值的更好方法

我正在尝试编写一个导入函数来从 excel 文件中获取数据。我目前的做法如下:

当然,问题在于它运行得非常糟糕。据我所知,它很可能归结为这一行:

我需要的只是单元格中的文本,而不是为每个单元格创建一个对象(然后不将它们发送到垃圾收集)。有没有更简单的方法来获取文本?

理想情况下,如果我可以获得获取单元格文本值的方法,我希望将多个 rowArray() 添加到主数组并稍后更新程序的值。

如果您看到任何其他性能提示,请告诉我。将不胜感激。=b

编辑:我也意识到,如果我要创建一个主数组(比如 mArr)来保存所有数据,我有两个选择。让 mArr 大而子阵列小,还是 mArr 小而子阵列容纳更多信息,在性能方面会更好吗?

我问是因为将要导入的文件的行数多于列数,所以我想知道是否有任何“设置”的方法。

0 投票
2 回答
522 浏览

python - Python ctypes & libspeex.dll/libspeex.so;#define、typedef 和结构的等价物是什么?

我在这里有 dll 文件的参考:http: //speex.org/docs/api/speex-api-reference/group__Codec.html

我想知道的是,在那个列表中,有很多定义。什么是 python 等价物,与 struct 类相同,我用 ctypes 实现所有这些的选项是什么?类型定义?

我对python相对缺乏经验,所以如果我的技能不够,请原谅我。没有大学在这里教它,所以我试图通过询问和谷歌来学习。

现在我只是想基本上弄清楚如何与这个 speex 库交互,这样我至少可以开始使用编码/解码函数。但我不确定这三件事的实施。我确定我对此感到头疼,但最后似乎我总是在学习新事物方面表现出色。有人介意给我简要介绍一下吗?

从我的理解来看,#define 在所有实际用途中基本上只是 foo = bar?
而 Class:Struct SpeexMode 将是一个具有所有列出功能的类?

还是所有这些都已在编译的 DLL 中定义?如果是这样,我已经通过我遇到的教程使用 ctypes 完成了一个小的 dll 文件调用。是否像设置环境一样简单(将这些变量传递给函数以设置编解码器质量等内容,调用编码器,然后使用编码器?)

0 投票
2 回答
362 浏览

python - 访问 xrange 内部结构

我正在尝试使用 ctypes 从内部 python 结构中提取数据。即,我正在尝试读取 xrange 中的 4 个字段:

是否有任何标准方法可以在 python 本身中获取这些字段?

0 投票
1 回答
610 浏览

python - 帮助 ctypes.windll.dnsapi.DnsQuery_A

我在使用 [DnsQuery]( http://msdn.microsoft.com/en-us/library/ms682016(VS.85).aspx) API 时遇到问题,*ppQueryResultsSet 参数让我很困扰。谁能告诉我如何在 python 中进行正确的 DLL 调用的示例?

0 投票
3 回答
32608 浏览

python - 如何使用 ctypes 打包和解包(结构 <-> str)

这可能是一个愚蠢的问题,但我在文档或任何地方都找不到好的答案。

如果我使用struct定义二进制结构,则该 struct 有 2 种对称的序列化和反序列化方法(打包和解包),但似乎ctypes没有直接的方法来做到这一点。这是我的解决方案,感觉不对:

0 投票
1 回答
926 浏览

python - pygst - glimagesink 回调

我正在尝试将'glimagesink'元素与python一起使用。元素(内部是 GObject)具有client-draw-callback应该(至少在 C++ 中)包含函数 ( bool func(uint t, uint w, uint h)) 指针的属性。我已经尝试过element.set_property('client-draw-callback', myfunc),并使用 ctypes 创建函数指针,但每次都说,TypeError: could not convert argument to correct param type

我可以找到任何关于在 python 中使用 glimagesink 或 glfilterapp 的文档):

工作 C++ 代码: