首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在IronPython中使用win32api

如何在IronPython中使用win32api
EN

Stack Overflow用户
提问于 2008-09-24 15:34:50
回答 3查看 4.3K关注 0票数 3

在用IronPython编写一些测试脚本时,我想验证窗口是否显示。我有主应用程序的进程的pid,并希望获得与pid相关的窗口标题列表。

我试图避免使用win32api调用,比如FindWindowEx,因为(据我所知)您不能直接从IronPython访问win32api。有没有办法使用内置的.net类来做到这一点呢?我遇到的大多数东西都推荐使用win32api,如下所示。

.NET (C#): Getting child windows when you only have a process handle or PID?

更新:我找到了我想要做的事情的变通方法。请在下面回答。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-10-20 16:48:41

下面的文章展示了如何从IronPython间接访问win32api。它使用CSharpCodeProvider CompileAssemblyFromSource方法从提供的C#源代码字符串在内存中编译程序集。然后,IronPython可以导入该程序集。

Dynamically compiling C# from IronPython

票数 2
EN

Stack Overflow用户

发布于 2012-08-07 15:47:04

从IronPython 2.6开始支持ctypes模块。此模块提供与C兼容的数据类型,并允许调用DLL中的函数。快速示例:

代码语言:javascript
运行
复制
import ctypes
buffer = ctypes.create_string_buffer(100)
ctypes.windll.kernel32.GetWindowsDirectoryA(buffer, len(buffer))
print buffer.value
票数 3
EN

Stack Overflow用户

发布于 2008-09-24 19:28:31

这就像问你能不能不下水就能游泳。如果您需要从windows获取信息,唯一的选择就是使用win32api。关于如何做到这一点,有很多例子可以找到。

如果您不喜欢此答案,请在您的问题中留下评论,我将删除此答案,因此您的问题将保留在未回答问题列表中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/127912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档