我在Python(Windows 7中的CherryPy Web服务器)上重写了我很久以前在VB6中编写的旧应用程序。
我的旧应用程序使用this class从CAD文件中提取文件缩略图,就像Windows资源管理器一样。
This post解决了这个问题,但没有显示正常工作的代码,而且它已经很老了。
如何在Python中使用IExtractImage?
编辑:
我复制了旧帖子中的小代码,它遵循与旧的VB代码相同的步骤。它崩溃了最后一行的消息pywintypes.com_error: (-2147221164, 'Class not registered', None, None)
:
from win32com.shell import shell, shellcon
import pythoncom
def test_IExtractImage(path, filename):
iSHFolder = shell.SHGetDesktopFolder()
eaten, idList, attr = iSHFolder.ParseDisplayName(0, None, path)
targetFolder = iSHFolder.BindToObject(idList, None, shell.IID_IShellFolder)
eaten, targetIdList, attr = targetFolder.ParseDisplayName(0, None, filename)
iidExtractImage = pythoncom.MakeIID('{BB2E617C-0920-11D1-9A0B-00C04FC2D6C1}')
extractImage = targetFolder.GetUIObjectOf(0, [targetIdList], iidExtractImage, 0)
test_IExtractImage('c:\\', 'test.e2')
获取图片和生成文件的缺失步骤是什么,以便我可以在网页上提供?