diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/olefile/olefile.html')
-rw-r--r-- | .venv/lib/python3.12/site-packages/olefile/olefile.html | 432 |
1 files changed, 432 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/olefile/olefile.html b/.venv/lib/python3.12/site-packages/olefile/olefile.html new file mode 100644 index 00000000..b7d1981a --- /dev/null +++ b/.venv/lib/python3.12/site-packages/olefile/olefile.html @@ -0,0 +1,432 @@ +
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head><title>Python: module olefile</title>
+</head><body bgcolor="#f0f0f8">
+
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
+<tr bgcolor="#7799ee">
+<td valign=bottom> <br>
+<font color="#ffffff" face="helvetica, arial"> <br><big><big><strong>olefile</strong></big></big> (version 0.42, 2015-01-24)</font></td
+><td align=right valign=bottom
+><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:./olefile.py">.\olefile.py</a></font></td></tr></table>
+ <p><tt># olefile (formerly OleFileIO_PL) version 0.42 2015-01-24<br>
+#<br>
+# Module to read/write Microsoft OLE2 files (also called Structured Storage or<br>
+# Microsoft Compound Document File Format), such as Microsoft Office 97-2003<br>
+# documents, Image Composer and FlashPix files, Outlook messages, ...<br>
+# This version is compatible with Python 2.6+ and 3.x<br>
+#<br>
+# Project website: <a href="http://www.decalage.info/olefile">http://www.decalage.info/olefile</a><br>
+#<br>
+# olefile is copyright (c) 2005-2015 Philippe Lagadec (<a href="http://www.decalage.info">http://www.decalage.info</a>)<br>
+#<br>
+# olefile is based on the <a href="#OleFileIO">OleFileIO</a> module from the PIL library v1.1.6<br>
+# See: <a href="http://www.pythonware.com/products/pil/index.htm">http://www.pythonware.com/products/pil/index.htm</a><br>
+#<br>
+# The Python Imaging Library (PIL) is<br>
+# Copyright (c) 1997-2005 by Secret Labs AB<br>
+# Copyright (c) 1995-2005 by Fredrik Lundh<br>
+#<br>
+# See source code and LICENSE.txt for information on usage and redistribution.</tt></p>
+<p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#aa55cc">
+<td colspan=3 valign=bottom> <br>
+<font color="#ffffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr>
+
+<tr><td bgcolor="#aa55cc"><tt> </tt></td><td> </td>
+<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="array.html">array</a><br>
+<a href="datetime.html">datetime</a><br>
+</td><td width="25%" valign=top><a href="io.html">io</a><br>
+<a href="os.html">os</a><br>
+</td><td width="25%" valign=top><a href="struct.html">struct</a><br>
+<a href="sys.html">sys</a><br>
+</td><td width="25%" valign=top></td></tr></table></td></tr></table><p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#ee77aa">
+<td colspan=3 valign=bottom> <br>
+<font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr>
+
+<tr><td bgcolor="#ee77aa"><tt> </tt></td><td> </td>
+<td width="100%"><dl>
+<dt><font face="helvetica, arial"><a href="olefile.html#OleFileIO">OleFileIO</a>
+</font></dt><dt><font face="helvetica, arial"><a href="olefile.html#OleMetadata">OleMetadata</a>
+</font></dt></dl>
+ <p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#ffc8d8">
+<td colspan=3 valign=bottom> <br>
+<font color="#000000" face="helvetica, arial"><a name="OleFileIO">class <strong>OleFileIO</strong></a></font></td></tr>
+
+<tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td>
+<td colspan=2><tt>OLE container object<br>
+ <br>
+This class encapsulates the interface to an OLE 2 structured<br>
+storage file. Use the listdir and openstream methods to<br>
+access the contents of this file.<br>
+ <br>
+Object names are given as a list of strings, one for each subentry<br>
+level. The root entry should be omitted. For example, the following<br>
+code extracts all image streams from a Microsoft Image Composer file::<br>
+ <br>
+ ole = <a href="#OleFileIO">OleFileIO</a>("fan.mic")<br>
+ <br>
+ for entry in ole.<a href="#OleFileIO-listdir">listdir</a>():<br>
+ if entry[1:2] == "Image":<br>
+ fin = ole.<a href="#OleFileIO-openstream">openstream</a>(entry)<br>
+ fout = <a href="#OleFileIO-open">open</a>(entry[0:1], "wb")<br>
+ while True:<br>
+ s = fin.read(8192)<br>
+ if not s:<br>
+ break<br>
+ fout.write(s)<br>
+ <br>
+You can use the viewer application provided with the Python Imaging<br>
+Library to view the resulting files (which happens to be standard<br>
+TIFF files).<br> </tt></td></tr>
+<tr><td> </td>
+<td width="100%">Methods defined here:<br>
+<dl><dt><a name="OleFileIO-__init__"><strong>__init__</strong></a>(self, filename<font color="#909090">=None</font>, raise_defects<font color="#909090">=40</font>, write_mode<font color="#909090">=False</font>, debug<font color="#909090">=False</font>, path_encoding<font color="#909090">='utf-8'</font>)</dt><dd><tt>Constructor for the <a href="#OleFileIO">OleFileIO</a> class.<br>
+ <br>
+:param filename: file to open.<br>
+ <br>
+ - if filename is a string smaller than 1536 bytes, it is the path<br>
+ of the file to open. (bytes or unicode string)<br>
+ - if filename is a string longer than 1535 bytes, it is parsed<br>
+ as the content of an OLE file in memory. (bytes type only)<br>
+ - if filename is a file-like object (with read, seek and tell methods),<br>
+ it is parsed as-is.<br>
+ <br>
+:param raise_defects: minimal level for defects to be raised as exceptions.<br>
+ (use DEFECT_FATAL for a typical application, DEFECT_INCORRECT for a<br>
+ security-oriented application, see source code for details)<br>
+ <br>
+:param write_mode: bool, if True the file is opened in read/write mode instead<br>
+ of read-only by default.<br>
+ <br>
+:param debug: bool, set debug mode<br>
+ <br>
+:param path_encoding: None or str, name of the codec to use for path<br>
+ names (streams and storages), or None for Unicode.<br>
+ Unicode by default on Python 3+, UTF-8 on Python 2.x.<br>
+ (new in olefile 0.42, was hardcoded to Latin-1 until olefile v0.41)</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-close"><strong>close</strong></a>(self)</dt><dd><tt>close the OLE file, to release the file object</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-dumpdirectory"><strong>dumpdirectory</strong></a>(self)</dt><dd><tt>Dump directory (for debugging only)</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-dumpfat"><strong>dumpfat</strong></a>(self, fat, firstindex<font color="#909090">=0</font>)</dt><dd><tt>Displays a part of FAT in human-readable form for debugging purpose</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-dumpsect"><strong>dumpsect</strong></a>(self, sector, firstindex<font color="#909090">=0</font>)</dt><dd><tt>Displays a sector in a human-readable form, for debugging purpose.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-exists"><strong>exists</strong></a>(self, filename)</dt><dd><tt>Test if given filename exists as a stream or a storage in the OLE<br>
+container.<br>
+Note: filename is case-insensitive.<br>
+ <br>
+:param filename: path of stream in storage tree. (see openstream for syntax)<br>
+:returns: True if object exist, else False.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-get_metadata"><strong>get_metadata</strong></a>(self)</dt><dd><tt>Parse standard properties streams, return an <a href="#OleMetadata">OleMetadata</a> object<br>
+containing all the available metadata.<br>
+(also stored in the metadata attribute of the <a href="#OleFileIO">OleFileIO</a> object)<br>
+ <br>
+new in version 0.25</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-get_rootentry_name"><strong>get_rootentry_name</strong></a>(self)</dt><dd><tt>Return root entry name. Should usually be 'Root Entry' or 'R' in most<br>
+implementations.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-get_size"><strong>get_size</strong></a>(self, filename)</dt><dd><tt>Return size of a stream in the OLE container, in bytes.<br>
+ <br>
+:param filename: path of stream in storage tree (see openstream for syntax)<br>
+:returns: size in bytes (long integer)<br>
+:exception IOError: if file not found<br>
+:exception TypeError: if this is not a stream.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-get_type"><strong>get_type</strong></a>(self, filename)</dt><dd><tt>Test if given filename exists as a stream or a storage in the OLE<br>
+container, and return its type.<br>
+ <br>
+:param filename: path of stream in storage tree. (see openstream for syntax)<br>
+:returns: False if object does not exist, its entry type (>0) otherwise:<br>
+ <br>
+ - STGTY_STREAM: a stream<br>
+ - STGTY_STORAGE: a storage<br>
+ - STGTY_ROOT: the root entry</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-getctime"><strong>getctime</strong></a>(self, filename)</dt><dd><tt>Return creation time of a stream/storage.<br>
+ <br>
+:param filename: path of stream/storage in storage tree. (see openstream for<br>
+ syntax)<br>
+:returns: None if creation time is null, a python datetime object<br>
+ otherwise (UTC timezone)<br>
+ <br>
+new in version 0.26</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-getmtime"><strong>getmtime</strong></a>(self, filename)</dt><dd><tt>Return modification time of a stream/storage.<br>
+ <br>
+:param filename: path of stream/storage in storage tree. (see openstream for<br>
+ syntax)<br>
+:returns: None if modification time is null, a python datetime object<br>
+ otherwise (UTC timezone)<br>
+ <br>
+new in version 0.26</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-getproperties"><strong>getproperties</strong></a>(self, filename, convert_time<font color="#909090">=False</font>, no_conversion<font color="#909090">=None</font>)</dt><dd><tt>Return properties described in substream.<br>
+ <br>
+:param filename: path of stream in storage tree (see openstream for syntax)<br>
+:param convert_time: bool, if True timestamps will be converted to Python datetime<br>
+:param no_conversion: None or list of int, timestamps not to be converted<br>
+ (for example total editing time is not a real timestamp)<br>
+ <br>
+:returns: a dictionary of values indexed by id (integer)</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-getsect"><strong>getsect</strong></a>(self, sect)</dt><dd><tt>Read given sector from file on disk.<br>
+ <br>
+:param sect: int, sector index<br>
+:returns: a string containing the sector data.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-listdir"><strong>listdir</strong></a>(self, streams<font color="#909090">=True</font>, storages<font color="#909090">=False</font>)</dt><dd><tt>Return a list of streams and/or storages stored in this file<br>
+ <br>
+:param streams: bool, include streams if True (True by default) - new in v0.26<br>
+:param storages: bool, include storages if True (False by default) - new in v0.26<br>
+ (note: the root storage is never included)<br>
+:returns: list of stream and/or storage paths</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-loaddirectory"><strong>loaddirectory</strong></a>(self, sect)</dt><dd><tt>Load the directory.<br>
+ <br>
+:param sect: sector index of directory stream.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-loadfat"><strong>loadfat</strong></a>(self, header)</dt><dd><tt>Load the FAT table.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-loadfat_sect"><strong>loadfat_sect</strong></a>(self, sect)</dt><dd><tt>Adds the indexes of the given sector to the FAT<br>
+ <br>
+:param sect: string containing the first FAT sector, or array of long integers<br>
+:returns: index of last FAT sector.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-loadminifat"><strong>loadminifat</strong></a>(self)</dt><dd><tt>Load the MiniFAT table.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-open"><strong>open</strong></a>(self, filename, write_mode<font color="#909090">=False</font>)</dt><dd><tt>Open an OLE2 file in read-only or read/write mode.<br>
+Read and parse the header, FAT and directory.<br>
+ <br>
+:param filename: string-like or file-like object, OLE file to parse<br>
+ <br>
+ - if filename is a string smaller than 1536 bytes, it is the path<br>
+ of the file to open. (bytes or unicode string)<br>
+ - if filename is a string longer than 1535 bytes, it is parsed<br>
+ as the content of an OLE file in memory. (bytes type only)<br>
+ - if filename is a file-like object (with read, seek and tell methods),<br>
+ it is parsed as-is.<br>
+ <br>
+:param write_mode: bool, if True the file is opened in read/write mode instead<br>
+ of read-only by default. (ignored if filename is not a path)</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-openstream"><strong>openstream</strong></a>(self, filename)</dt><dd><tt>Open a stream as a read-only file object (BytesIO).<br>
+Note: filename is case-insensitive.<br>
+ <br>
+:param filename: path of stream in storage tree (except root entry), either:<br>
+ <br>
+ - a string using Unix path syntax, for example:<br>
+ 'storage_1/storage_1.2/stream'<br>
+ - or a list of storage filenames, path to the desired stream/storage.<br>
+ Example: ['storage_1', 'storage_1.2', 'stream']<br>
+ <br>
+:returns: file object (read-only)<br>
+:exception IOError: if filename not found, or if this is not a stream.</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-sect2array"><strong>sect2array</strong></a>(self, sect)</dt><dd><tt>convert a sector to an array of 32 bits unsigned integers,<br>
+swapping bytes on big endian CPUs such as PowerPC (old Macs)</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-write_sect"><strong>write_sect</strong></a>(self, sect, data, padding<font color="#909090">='<font color="#c040c0">\x00</font>'</font>)</dt><dd><tt>Write given sector to file on disk.<br>
+ <br>
+:param sect: int, sector index<br>
+:param data: bytes, sector data<br>
+:param padding: single byte, padding character if data < sector size</tt></dd></dl>
+
+<dl><dt><a name="OleFileIO-write_stream"><strong>write_stream</strong></a>(self, stream_name, data)</dt><dd><tt>Write a stream to disk. For now, it is only possible to replace an<br>
+existing stream by data of the same size.<br>
+ <br>
+:param stream_name: path of stream in storage tree (except root entry), either:<br>
+ <br>
+ - a string using Unix path syntax, for example:<br>
+ 'storage_1/storage_1.2/stream'<br>
+ - or a list of storage filenames, path to the desired stream/storage.<br>
+ Example: ['storage_1', 'storage_1.2', 'stream']<br>
+ <br>
+:param data: bytes, data to be written, must be the same size as the original<br>
+ stream.</tt></dd></dl>
+
+</td></tr></table> <p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#ffc8d8">
+<td colspan=3 valign=bottom> <br>
+<font color="#000000" face="helvetica, arial"><a name="OleMetadata">class <strong>OleMetadata</strong></a></font></td></tr>
+
+<tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td>
+<td colspan=2><tt>class to parse and store metadata from standard properties of OLE files.<br>
+ <br>
+Available attributes:<br>
+codepage, title, subject, author, keywords, comments, template,<br>
+last_saved_by, revision_number, total_edit_time, last_printed, create_time,<br>
+last_saved_time, num_pages, num_words, num_chars, thumbnail,<br>
+creating_application, security, codepage_doc, category, presentation_target,<br>
+bytes, lines, paragraphs, slides, notes, hidden_slides, mm_clips,<br>
+scale_crop, heading_pairs, titles_of_parts, manager, company, links_dirty,<br>
+chars_with_spaces, unused, shared_doc, link_base, hlinks, hlinks_changed,<br>
+version, dig_sig, content_type, content_status, language, doc_version<br>
+ <br>
+Note: an attribute is set to None when not present in the properties of the<br>
+OLE file.<br>
+ <br>
+References for SummaryInformation stream:<br>
+- <a href="http://msdn.microsoft.com/en-us/library/dd942545.aspx">http://msdn.microsoft.com/en-us/library/dd942545.aspx</a><br>
+- <a href="http://msdn.microsoft.com/en-us/library/dd925819%28v=office.12%29.aspx">http://msdn.microsoft.com/en-us/library/dd925819%28v=office.12%29.aspx</a><br>
+- <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa380376%28v=vs.85%29.aspx">http://msdn.microsoft.com/en-us/library/windows/desktop/aa380376%28v=vs.85%29.aspx</a><br>
+- <a href="http://msdn.microsoft.com/en-us/library/aa372045.aspx">http://msdn.microsoft.com/en-us/library/aa372045.aspx</a><br>
+- <a href="http://sedna-soft.de/summary-information-stream/">http://sedna-soft.de/summary-information-stream/</a><br>
+- <a href="http://poi.apache.org/apidocs/org/apache/poi/hpsf/SummaryInformation.html">http://poi.apache.org/apidocs/org/apache/poi/hpsf/SummaryInformation.html</a><br>
+ <br>
+References for DocumentSummaryInformation stream:<br>
+- <a href="http://msdn.microsoft.com/en-us/library/dd945671%28v=office.12%29.aspx">http://msdn.microsoft.com/en-us/library/dd945671%28v=office.12%29.aspx</a><br>
+- <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa380374%28v=vs.85%29.aspx">http://msdn.microsoft.com/en-us/library/windows/desktop/aa380374%28v=vs.85%29.aspx</a><br>
+- <a href="http://poi.apache.org/apidocs/org/apache/poi/hpsf/DocumentSummaryInformation.html">http://poi.apache.org/apidocs/org/apache/poi/hpsf/DocumentSummaryInformation.html</a><br>
+ <br>
+new in version 0.25<br> </tt></td></tr>
+<tr><td> </td>
+<td width="100%">Methods defined here:<br>
+<dl><dt><a name="OleMetadata-__init__"><strong>__init__</strong></a>(self)</dt><dd><tt>Constructor for <a href="#OleMetadata">OleMetadata</a><br>
+All attributes are set to None by default</tt></dd></dl>
+
+<dl><dt><a name="OleMetadata-dump"><strong>dump</strong></a>(self)</dt><dd><tt>Dump all metadata, for debugging purposes.</tt></dd></dl>
+
+<dl><dt><a name="OleMetadata-parse_properties"><strong>parse_properties</strong></a>(self, olefile)</dt><dd><tt>Parse standard properties of an OLE file, from the streams<br>
+"SummaryInformation" and "DocumentSummaryInformation",<br>
+if present.<br>
+Properties are converted to strings, integers or python datetime objects.<br>
+If a property is not present, its value is set to None.</tt></dd></dl>
+
+<hr>
+Data and other attributes defined here:<br>
+<dl><dt><strong>DOCSUM_ATTRIBS</strong> = ['codepage_doc', 'category', 'presentation_target', 'bytes', 'lines', 'paragraphs', 'slides', 'notes', 'hidden_slides', 'mm_clips', 'scale_crop', 'heading_pairs', 'titles_of_parts', 'manager', 'company', 'links_dirty', 'chars_with_spaces', 'unused', 'shared_doc', 'link_base', ...]</dl>
+
+<dl><dt><strong>SUMMARY_ATTRIBS</strong> = ['codepage', 'title', 'subject', 'author', 'keywords', 'comments', 'template', 'last_saved_by', 'revision_number', 'total_edit_time', 'last_printed', 'create_time', 'last_saved_time', 'num_pages', 'num_words', 'num_chars', 'thumbnail', 'creating_application', 'security']</dl>
+
+</td></tr></table></td></tr></table><p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#eeaa77">
+<td colspan=3 valign=bottom> <br>
+<font color="#ffffff" face="helvetica, arial"><big><strong>Functions</strong></big></font></td></tr>
+
+<tr><td bgcolor="#eeaa77"><tt> </tt></td><td> </td>
+<td width="100%"><dl><dt><a name="-debug"><strong>debug</strong></a> = debug_pass(msg)</dt></dl>
+ <dl><dt><a name="-debug_pass"><strong>debug_pass</strong></a>(msg)</dt></dl>
+ <dl><dt><a name="-debug_print"><strong>debug_print</strong></a>(msg)</dt></dl>
+ <dl><dt><a name="-filetime2datetime"><strong>filetime2datetime</strong></a>(filetime)</dt><dd><tt>convert FILETIME (64 bits int) to Python datetime.datetime</tt></dd></dl>
+ <dl><dt><a name="-i16"><strong>i16</strong></a>(c, o<font color="#909090">=0</font>)</dt><dd><tt>Converts a 2-bytes (16 bits) string to an integer.<br>
+ <br>
+:param c: string containing bytes to convert<br>
+:param o: offset of bytes to convert in string</tt></dd></dl>
+ <dl><dt><a name="-i32"><strong>i32</strong></a>(c, o<font color="#909090">=0</font>)</dt><dd><tt>Converts a 4-bytes (32 bits) string to an integer.<br>
+ <br>
+:param c: string containing bytes to convert<br>
+:param o: offset of bytes to convert in string</tt></dd></dl>
+ <dl><dt><a name="-i8"><strong>i8</strong></a>(c)</dt><dd><tt># version for Python 2.x</tt></dd></dl>
+ <dl><dt><a name="-isOleFile"><strong>isOleFile</strong></a>(filename)</dt><dd><tt>Test if a file is an OLE container (according to the magic bytes in its header).<br>
+ <br>
+:param filename: string-like or file-like object, OLE file to parse<br>
+ <br>
+ - if filename is a string smaller than 1536 bytes, it is the path<br>
+ of the file to open. (bytes or unicode string)<br>
+ - if filename is a string longer than 1535 bytes, it is parsed<br>
+ as the content of an OLE file in memory. (bytes type only)<br>
+ - if filename is a file-like object (with read and seek methods),<br>
+ it is parsed as-is.<br>
+ <br>
+:returns: True if OLE, False otherwise.</tt></dd></dl>
+ <dl><dt><a name="-set_debug_mode"><strong>set_debug_mode</strong></a>(debug_mode)</dt><dd><tt>Set debug mode on or off, to control display of debugging messages.<br>
+:param mode: True or False</tt></dd></dl>
+</td></tr></table><p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#55aa55">
+<td colspan=3 valign=bottom> <br>
+<font color="#ffffff" face="helvetica, arial"><big><strong>Data</strong></big></font></td></tr>
+
+<tr><td bgcolor="#55aa55"><tt> </tt></td><td> </td>
+<td width="100%"><strong>DEBUG_MODE</strong> = False<br>
+<strong>DEFAULT_PATH_ENCODING</strong> = 'utf-8'<br>
+<strong>DEFECT_FATAL</strong> = 40<br>
+<strong>DEFECT_INCORRECT</strong> = 30<br>
+<strong>DEFECT_POTENTIAL</strong> = 20<br>
+<strong>DEFECT_UNSURE</strong> = 10<br>
+<strong>DIFSECT</strong> = 4294967292L<br>
+<strong>ENDOFCHAIN</strong> = 4294967294L<br>
+<strong>FATSECT</strong> = 4294967293L<br>
+<strong>FREESECT</strong> = 4294967295L<br>
+<strong>KEEP_UNICODE_NAMES</strong> = True<br>
+<strong>MAGIC</strong> = '<font color="#c040c0">\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1</font>'<br>
+<strong>MAXREGSECT</strong> = 4294967290L<br>
+<strong>MAXREGSID</strong> = 4294967290L<br>
+<strong>MINIMAL_OLEFILE_SIZE</strong> = 1536<br>
+<strong>NOSTREAM</strong> = 4294967295L<br>
+<strong>STGTY_EMPTY</strong> = 0<br>
+<strong>STGTY_LOCKBYTES</strong> = 3<br>
+<strong>STGTY_PROPERTY</strong> = 4<br>
+<strong>STGTY_ROOT</strong> = 5<br>
+<strong>STGTY_STORAGE</strong> = 1<br>
+<strong>STGTY_STREAM</strong> = 2<br>
+<strong>UINT32</strong> = 'L'<br>
+<strong>VT</strong> = {0: 'VT_EMPTY', 1: 'VT_NULL', 2: 'VT_I2', 3: 'VT_I4', 4: 'VT_R4', 5: 'VT_R8', 6: 'VT_CY', 7: 'VT_DATE', 8: 'VT_BSTR', 9: 'VT_DISPATCH', ...}<br>
+<strong>VT_BLOB</strong> = 65<br>
+<strong>VT_BLOB_OBJECT</strong> = 70<br>
+<strong>VT_BOOL</strong> = 11<br>
+<strong>VT_BSTR</strong> = 8<br>
+<strong>VT_CARRAY</strong> = 28<br>
+<strong>VT_CF</strong> = 71<br>
+<strong>VT_CLSID</strong> = 72<br>
+<strong>VT_CY</strong> = 6<br>
+<strong>VT_DATE</strong> = 7<br>
+<strong>VT_DECIMAL</strong> = 14<br>
+<strong>VT_DISPATCH</strong> = 9<br>
+<strong>VT_EMPTY</strong> = 0<br>
+<strong>VT_ERROR</strong> = 10<br>
+<strong>VT_FILETIME</strong> = 64<br>
+<strong>VT_HRESULT</strong> = 25<br>
+<strong>VT_I1</strong> = 16<br>
+<strong>VT_I2</strong> = 2<br>
+<strong>VT_I4</strong> = 3<br>
+<strong>VT_I8</strong> = 20<br>
+<strong>VT_INT</strong> = 22<br>
+<strong>VT_LPSTR</strong> = 30<br>
+<strong>VT_LPWSTR</strong> = 31<br>
+<strong>VT_NULL</strong> = 1<br>
+<strong>VT_PTR</strong> = 26<br>
+<strong>VT_R4</strong> = 4<br>
+<strong>VT_R8</strong> = 5<br>
+<strong>VT_SAFEARRAY</strong> = 27<br>
+<strong>VT_STORAGE</strong> = 67<br>
+<strong>VT_STORED_OBJECT</strong> = 69<br>
+<strong>VT_STREAM</strong> = 66<br>
+<strong>VT_STREAMED_OBJECT</strong> = 68<br>
+<strong>VT_UI1</strong> = 17<br>
+<strong>VT_UI2</strong> = 18<br>
+<strong>VT_UI4</strong> = 19<br>
+<strong>VT_UI8</strong> = 21<br>
+<strong>VT_UINT</strong> = 23<br>
+<strong>VT_UNKNOWN</strong> = 13<br>
+<strong>VT_USERDEFINED</strong> = 29<br>
+<strong>VT_VARIANT</strong> = 12<br>
+<strong>VT_VECTOR</strong> = 4096<br>
+<strong>VT_VOID</strong> = 24<br>
+<strong>WORD_CLSID</strong> = '00020900-0000-0000-C000-000000000046'<br>
+<strong>__author__</strong> = 'Philippe Lagadec'<br>
+<strong>__date__</strong> = '2015-01-24'<br>
+<strong>__version__</strong> = '0.42'<br>
+<strong>keyword</strong> = 'VT_UNKNOWN'<br>
+<strong>print_function</strong> = _Feature((2, 6, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 65536)<br>
+<strong>var</strong> = 13</td></tr></table><p>
+<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
+<tr bgcolor="#7799ee">
+<td colspan=3 valign=bottom> <br>
+<font color="#ffffff" face="helvetica, arial"><big><strong>Author</strong></big></font></td></tr>
+
+<tr><td bgcolor="#7799ee"><tt> </tt></td><td> </td>
+<td width="100%">Philippe Lagadec</td></tr></table>
+</body></html>
\ No newline at end of file |