如何解决在 pywin32 中创建早期绑定的主要和次要是什么?
from win32com.client import gencache
gencache.EnsureModule('{00020813-0000-0000-C000-000000000046}',1,2)
该脚本使用 clsid {00020813-0000-0000-C000-000000000046} 为应用程序生成早期绑定。
在 Python Programming on Win32 一书中,它说第三个和第四个值分别是主要和次要。
我不知道这是什么意思,而且文档很差。
解决方法
查看EnsureModule调用的源代码,很容易看出它是typelib的主要/次要版本。如果他们在缓存中找不到它,那么他们会像这样加载它:
pythoncom.LoadRegTypeLib(typelibCLSID,major,minor,lcid)
如果您查看 LoadRegTypeLib() 的 Windows API,
HRESULT LoadRegTypeLib(
REFGUID rguid,WORD wVerMajor,WORD wVerMinor,LCID lcid,ITypeLib **pptlib
);
wVerMajor
库的主要版本。
wVerMinor
库的次要版本。
来自https://docs.microsoft.com/en-us/windows/win32/api/oleauto/nf-oleauto-loadregtypelib
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。