问题标签 [pywin32]

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 回答
1159 浏览

python - 将 win32service 模块与 IronPython 一起使用

嘿,所以我正在尝试采用现有的 IronPython 脚本并将其转换为始终在我们的一台服务器上运行的 Windows 服务。不幸的是,我似乎无法获得我需要的模块。我下载了 pywin32 扩展 ( http://sourceforge.net/projects/pywin32/ ) 但我无法安装它们,因为我在此服务器上只安装了 IronPython,而不是 vanilla 2.6 解释器。感谢任何可以帮助我解决此问题的人。

0 投票
6 回答
6930 浏览

python - Windows 7 上的 GetWindowRect 太小

我要解决的实际问题是,我想自动找出窗口周围边距的大小。如果您能找到更好的方法,请务必回答,而不是这个。

为此,我决定截取测试窗口的屏幕截图并测量边距。这很简单,因为我预计任何边距都不会是亮粉色,但我承认这是一个 hack。我使用GetWindowRect ( py ) 获取边界框,并使用PIL抓取屏幕截图并裁剪到边界框。问题是,虽然裁剪操作正确,但边界框并不准确。Windows 7“截图工具”的尺寸正确。我该怎么做?

0 投票
1 回答
702 浏览

python - 如何将非英语 Windows 时区名称映射到 Python 中的 Olsen 名称?

如果我调用win32timezone.TimeZoneInfo.local().timeZoneName,它会给我当前语言环境中的时区名称(例如,在日本机器上,它会返回u"東京 (標準時)")。

我想将此名称映射到 Olsen 数据库时区名称,以便与pytz. CLDR windowZones.xml帮助我映射英文名称,但无法处理日文名称。

如何将名称转换回英文(Tokyo Standard Time在这种情况下应该是)?

0 投票
1 回答
1339 浏览

python - Python:获取当前登录的用户和他/她的特殊文件夹

此代码是否win32api.GetUserName()适用于从 win 2000 到 win 7 的所有 win 系统?如果用户不是本地用户而是域用户怎么办,它仍然有效吗?

当我使用这个功能shell.SHGetFolderPath(0, shellcon.CSIDL_someDirectory, 0, 0)时,我会得到当前登录用户的想要的文件夹吗?

任何帮助表示赞赏。

0 投票
1 回答
356 浏览

python - teamplayer 和 pyhook 奇怪地互动

我正在使用teamplayer,它可以让您将更多鼠标连接到您的计算机以同时使用。我还使用 pyHook 来捕获鼠标事件,代码如下:

该代码在没有 teamplayer 的情况下也能正常工作 - 它可以准确地检测鼠标按钮的上下移动。如果我在程序运行时启动 teamplayer,那么它会继续运行良好,这次准确地检测到两只鼠标的点击。

但是,如果我在 teamplayer 启动启动程序,那么每次鼠标点击都会变成两次:

这没关系 - 我可以检测到具有相同时间戳的点击并忽略第二个点击。但是,当我用不同的鼠标单击时,模式很奇怪:

也就是说,第一个 down 事件使用最后一个 up 事件的坐标!问题还在于错误的事件是第一个,因此更难检测到正确的事件(我不能只说“忽略第一个事件”,因为如果团队玩家关闭或只连接了一个鼠标,那就是唯一一个! )

关于为什么会发生这种情况的任何想法,以及我能做些什么来获得正常的鼠标事件?

0 投票
1 回答
826 浏览

python - 将c中的结构转换为pywin32?

我正在尝试TTM_GETTEXT通过SendMessage使用 pywin32 来使用。问题是,lparam应该存储文本的结构必须是TOOLINFO,这在 MSDN 中有很好的记录,但在 pywin32 中没有对应物。有没有办法使用 python 和 pywin32 创建相同的结构?

编辑:这是我想出的使用ctypes. 我做了一个Structurefor TOOLINFO,从中创建了一个缓冲区以传递给 pywin32's SendMessage,然后将其转换回TOOLINFO ctypes Structure. 唯一的问题是,它不起作用:

文本没有被打印,但我认为它应该包含我想从中提取的工具提示中的文本。我的使用方式有问题ctypes吗?我很确定我的价值观wnd和价值观w_wnd是正确的,所以我一定做错了什么。

0 投票
4 回答
3497 浏览

python - 当 bundle_files=1 时,py2exe + pywin32 MemoryLoadLibrary 导入失败

我创建了一个使用 pywin32 的简单程序。我想将它部署为可执行文件,所以我 py2exe 了它。我也不想要大量的文件,所以我设置bundle_files为 1(意味着将所有内容捆绑在一起)。但是,当我尝试运行它时,我得到:

在我的设置脚本中,我尝试做packages=["win32ui"]includes=["win32ui"]作为选项,但这没有帮助。如何让 py2exe 包含 win32ui.pyd?

如果我不要求它捆绑文件,我就没有这个问题,所以我现在可以这样做,但我想知道如何让它正常工作。

0 投票
1 回答
1897 浏览

python - 使用 Python 从 GUI 程序发送/接收文本

我正在使用 PyWin32 的 win32process.CreateProcess 启动一个 GUI 程序,该程序具有我想在 Python 类中使用的功能。

我想用这个 GUI 从 Python 执行以下操作:

  • 将文本发送到 GUI 中的各个窗口(如果相信 WinSpy++,每次创建进程时似乎都会更改标识符),
  • 单击 GUI 上的按钮以配置和启动计算,以及
  • 从 GUI 检索计算输出(允许在 GUI 文本输出或保存文件输出)。

快速提问:我应该研究哪些 Python/PyWin32 功能来完成这些任务?我不是在寻找实际的代码,只是我应该研究的领域,以学习如何自己做这些事情。我已经浏览了大部分学习 Python、Python 编程和 Win32 上的 Python 编程,但如果它在那里,我不知道答案。

谢谢,

麦克风

0 投票
1 回答
533 浏览

python - python + windows:运行exe就好像它与当前进程无关

我知道我可以subprocess.Popen用来运行可执行文件,并可能将标准输入和标准输出重定向到文件/使用管道到我的进程。但是,有没有办法运行一个可执行文件,使得生成的进程与当前的 Python 进程无关?意思是,我想以与双击 .exe 相同的方式启动一个进程,或者在 Start->Run... 中输入其名称。

0 投票
3 回答
552 浏览

python - 使用 python 修改文件夹的 Exchange ACL

在尝试读取文件夹的 ACL 表时,我遇到了这个问题:

在 C++ 工具 (MFCMAPI) 中,此方法用于获取可用数据类型的属性 PR_ACL_TABLE:

我想在 python win32 中做到这一点:

但似乎 MAPI 扩展不知道 IID_IExchangeModifyTable 类型。我刚刚收到这个错误:

属性错误:'module' object has no attribute 'IID_IExchangeModifyTable'

有人知道通过 MAPI(和 python)从交换中获取和修改 ACL 数据的另一种方法吗?

谢谢-侯爵