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 |
