decalage2 / olefile

olefile is a Python package to parse, read and write Microsoft OLE2 files (also called Structured Storage, Compound File Binary Format or Compound Document File Format), such as Microsoft Office 97-2003 documents, vbaProject.bin in MS Office 2007+ files, Image Composer and FlashPix files, Outlook messages, StickyNotes, several Microscopy file formats, McAfee antivirus quarantine files, etc.
http://www.decalage.info/olefile
Other
225 stars 76 forks source link

module 'olefile' has no attribute 'OleFileIO' #152

Open hildeb opened 1 year ago

hildeb commented 1 year ago

I'm using olevba from within olefy and I'm getting this error:

olefy ERROR oletools <308750> olevba returned <30 chars - rc: 1, response: '', error: ' Traceback (most recent call last): File "/usr/local/bin/olevba", line 5, in from oletools.olevba import main File "/usr/local/lib/python3.10/dist-packages/oletools/olevba.py", line 342, in from oletools import rtfobj File "/usr/local/lib/python3.10/dist-packages/oletools/rtfobj.py", line 133, in from oletools import oleobj, ftguess File "/usr/local/lib/python3.10/dist-packages/oletools/oleobj.py", line 71, in from oletools.ppt_record_parser import (is_ppt, PptFile, File "/usr/local/lib/python3.10/dist-packages/oletools/ppt_record_parser.py", line 57, in from oletools import record_base File "/usr/local/lib/python3.10/dist-packages/oletools/record_base.py", line 84, in OleFileIO = olefile.OleFileIO\nAttributeError: module \'olefile\' has no attribute \'OleFileIO\'

I wonder if this is an error in olevba

decalage2 commented 1 year ago

Hi @hildeb, have you checked if olefile is properly installed, and which version it is? You can use pip list, and the olefile version should be 0.46.

hildeb commented 1 year ago
# pip list |fgrep ole
olefile                0.46
oletools               0.60.1
decalage2 commented 1 year ago

This is really strange, olevba does not trigger that error on my Linux with Python 3.10. I really wonder what would trigger this error if olefile is installed properly. 🤔