发布于 2014-09-25 22:55:29 | 481 次阅读 | 评论: 1 | 来源: 网友投递

这里有新鲜出炉的Python3 官方中文指南,程序狗速度看过来!

Python编程语言

Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。


本文为大家讲解的是Python编写的com组件发生R6034错误的原因与解决办法,感兴趣的同学参考下.

pythoncom27.dll可能没有包含manifest信息,或者没有包含正确的manifest信息,或者系统中的c++ runtime library受到破坏都有可能造成这种现象
解决该问题的方法可以为调用本程序的exe文件建立一个合适的manifest文件,指定正确的msvcr90.dll版本即可

ps:可以使用mt.exe进行导出或合并manifest资源到exe或者dll文件。

查看manifest的方法:mt -inputresource:pythoncom27.dll;#2 -out:sss.txt

合并manifest到dll的方法:

mt.exe –manifest MyApp.exe.manifest -outputresource:MyApp.exe;1

or

mt.exe –manifest MyLibrary.dll.manifest -outputresource:MyLibrary.dll;2

(1 for an EXE, 2 for a DLL.)

ps:2010.12.24

如果是使用c++开发dll,那么使用libcmtd.lib或者libcmt.lib 替换掉 msvcrtd.lib 或 msvcrtd.lib也可以避免这个问题。

ps:内牛碗面

测试regsvr32 pythoncom27.dll一直是失败,即使使用mt嵌入了manifest信息也不行,当我把windowssystem32目录下的 pythoncom27.dll和pywintypes27.dll改名后,才行。原来regsvr32默认都是在处理windowssystem32 目录下的dll,即使当前目录有也不管。。。。。。无语了。终于出现“已加载***.dll,但没有找到dllregisterserver输入点…..”。看来想dll中嵌入manifest信息是管用的。。下次最好写上目录,如:regsvr32 .pythoncom27.dll

ps:2010.12.26 完美解决

我使用的python2.7以及截止目前的2.6–3.1版本python的pyd文件根 据python.org的建议(要求),全部没有manifest信息。这是为了更好的在程序运行时根据python.exe提供的crt来运行。 pywin32提供的pythoncom27.dll以及pywintypes27.dll也没有manifest信息。这样一般情况都没有问题,只是当 使用python制作的dll类型的com组件时会发生R6034错误。解决的办法有2个:为调用com组件的exe制作一个manifest文件,指明 msvcr90.dll的依赖;或者把所有使用到的dll以及pyd都嵌入manifest信息。
 



相关阅读 :
Python编写的com组件发生R6034错误的原因与解决办法
Python错误提示:[Errno 24] Too many open files的分析与解决
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
Python 3.x中使用print函数出现语法错误(SyntaxError: invalid syntax)的原因分析
Python处理JSON时的值报错及编码报错的两则解决实录
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
ubuntu上跑python连接pg,报错 ImportError: No module named psycopg2解决方法
Python中str is not callable问题详解及解决办法
python安装cx_Oracle模块常见问题与解决方法
Python安装PIL库提示:Python version 2.7 required, which was not found in the registry错误的解决方法
python下连接mysql的错误 错误码 【10061】 解决方法
最新网友评论  共有(1)条评论 发布评论 返回顶部
rjtz 发布于2016-04-19 19:27:06
完美,感谢分享
支持(0)  反对(0)  回复
月排行榜

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务