Analyzer.py :  » Windows » Python-Extensions-for-Windows » pyexcelerator-0.6.4.1 » tools » Python Open Source

Home
Python Open Source
1.3.1.2 Python
2.Ajax
3.Aspect Oriented
4.Blog
5.Build
6.Business Application
7.Chart Report
8.Content Management Systems
9.Cryptographic
10.Database
11.Development
12.Editor
13.Email
14.ERP
15.Game 2D 3D
16.GIS
17.GUI
18.IDE
19.Installer
20.IRC
21.Issue Tracker
22.Language Interface
23.Log
24.Math
25.Media Sound Audio
26.Mobile
27.Network
28.Parser
29.PDF
30.Project Management
31.RSS
32.Search
33.Security
34.Template Engines
35.Test
36.UML
37.USB Serial
38.Web Frameworks
39.Web Server
40.Web Services
41.Web Unit
42.Wiki
43.Windows
44.XML
Python Open Source » Windows » Python Extensions for Windows 
Python Extensions for Windows » pyexcelerator 0.6.4.1 » tools » Analyzer.py
#!/usr/bin/env python
# -*- coding: windows-1251 -*-

#  Copyright (C) 2005 Roman V. Kiseliov
#  All rights reserved.
# 
#  Redistribution and use in source and binary forms, with or without
#  modification, are permitted provided that the following conditions
#  are met:
# 
#  1. Redistributions of source code must retain the above copyright
#     notice, this list of conditions and the following disclaimer.
# 
#  2. Redistributions in binary form must reproduce the above copyright
#     notice, this list of conditions and the following disclaimer in
#     the documentation and/or other materials provided with the
#     distribution.
# 
#  3. All advertising materials mentioning features or use of this
#     software must display the following acknowledgment:
#     "This product includes software developed by
#      Roman V. Kiseliov <roman@kiseliov.ru>."
# 
#  4. Redistributions of any form whatsoever must retain the following
#     acknowledgment:
#     "This product includes software developed by
#      Roman V. Kiseliov <roman@kiseliov.ru>."
# 
#  THIS SOFTWARE IS PROVIDED BY Roman V. Kiseliov ``AS IS'' AND ANY
#  EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
#  PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL Roman V. Kiseliov OR
#  ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
#  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
#  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
#  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
#  STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
#  OF THE POSSIBILITY OF SUCH DAMAGE.

__rev_id__ = """$Id: Analyzer.py,v 1.4 2005/05/12 06:51:17 rvk Exp $"""


# total 258 records in database
import struct

def analyze_1904_record(data):
    # 0x0022
    pass


def analyze_ADDIN_record(data):
    # 0x0087
    pass


def analyze_ADDMENU_record(data):
    # 0x00C2
    pass


def analyze_ARRAY_record(data):
    # 0x0021, 0x0221
    pass


def analyze_AUTOFILTER_record(data):
    # 0x009E
    pass


def analyze_AUTOFILTERINFO_record(data):
    # 0x009D
    pass


def analyze_BACKUP_record(data):
    # 0x0040
    pass


def analyze_BEGIN_record(data):
    # 0x1033
    pass


def analyze_BITMAP_record(data):
    # 0x00E9
    pass


def analyze_BLANK_record(data):
    # 0x0001, 0x0201
    pass


def analyze_BOF_record(data):
    # 0x0009, 0x0209, 0x0409, 0x0809
    pass


def analyze_BOOKBOOL_record(data):
    # 0x00DA
    pass


def analyze_BOOLERR_record(data):
    # 0x0005, 0x0205
    pass


def analyze_BOTTOMMARGIN_record(data):
    # 0x0029
    print struct.unpack('<d', data)[0]
    pass


def analyze_BOUNDSHEET_record(data):
    # 0x0085
    pass


def analyze_BUILTINFMTCNT_record(data):
    # 0x0056
    pass


def analyze_BUNDLEHEADER_record(data):
    # 0x008F
    pass


def analyze_BUNDLESOFFSET_record(data):
    # 0x008E
    pass


def analyze_CALCCOUNT_record(data):
    # 0x000C
    pass


def analyze_CALCMODE_record(data):
    # 0x000D
    pass


def analyze_MERGEDCELLS_record(data):
    # 0x00E5
    pass


def analyze_CF_record(data):
    # 0x01B1
    pass


def analyze_CHTRCELLCONTENT_record(data):
    # 0x013B
    pass


def analyze_CHTRHEADER_record(data):
    # 0x0196
    pass


def analyze_CHTRINFO_record(data):
    # 0x0138
    pass


def analyze_CHTRINSERT_record(data):
    # 0x0137
    pass


def analyze_CHTRINSERTTAB_record(data):
    # 0x014D
    pass


def analyze_CHTRMOVERANGE_record(data):
    # 0x0140
    pass


def analyze_CODENAME_record(data):
    # 0x01BA
    pass


def analyze_CODEPAGE_record(data):
    # 0x0042
    pass


def analyze_COLINFO_record(data):
    # 0x007D
    pass


def analyze_COLUMNDEFAULT_record(data):
    # 0x0020
    pass


def analyze_COLWIDTH_record(data):
    # 0x0024
    pass


def analyze_CONDFMT_record(data):
    # 0x01B0
    pass


def analyze_CONTINUE_record(data):
    # 0x003C
    pass


def analyze_COORDLIST_record(data):
    # 0x00A9
    pass


def analyze_COUNTRY_record(data):
    # 0x008C
    pass


def analyze_CRN_record(data):
    # 0x005A
    pass


def analyze_Chart3D_record(data):
    # 0x103A
    pass


def analyze_Chart3DDataFormat_record(data):
    # 0x105F
    pass


def analyze_ChartAI_record(data):
    # 0x1051
    pass


def analyze_ChartAlruns_record(data):
    # 0x1050
    pass


def analyze_ChartArea_record(data):
    # 0x101A
    pass


def analyze_ChartAreaformat_record(data):
    # 0x100A
    pass


def analyze_ChartAttachedlabel_record(data):
    # 0x100C
    pass


def analyze_ChartAxcext_record(data):
    # 0x1062
    pass


def analyze_ChartAxesused_record(data):
    # 0x1046
    pass


def analyze_ChartAxis_record(data):
    # 0x101D
    pass


def analyze_ChartAxislineformat_record(data):
    # 0x1021
    pass


def analyze_ChartAxisparent_record(data):
    # 0x1041
    pass


def analyze_ChartBar_record(data):
    # 0x1017
    pass


def analyze_ChartBoppcustom_record(data):
    # 0x1067
    pass


def analyze_ChartBoppop_record(data):
    # 0x1061
    pass


def analyze_ChartCatserrange_record(data):
    # 0x1020
    pass


def analyze_ChartChart_record(data):
    # 0x1002
    pass


def analyze_ChartChartformat_record(data):
    # 0x1014
    pass


def analyze_ChartChartline_record(data):
    # 0x101C
    pass


def analyze_ChartDat_record(data):
    # 0x1063
    pass


def analyze_ChartDataformat_record(data):
    # 0x1006
    pass


def analyze_ChartDefaulttext_record(data):
    # 0x1024
    pass


def analyze_ChartDropbar_record(data):
    # 0x103D
    pass


def analyze_ChartFbi_record(data):
    # 0x1060
    pass


def analyze_ChartFontx_record(data):
    # 0x1026
    pass


def analyze_ChartFormatlink_record(data):
    # 0x1022
    pass


def analyze_ChartFrame_record(data):
    # 0x1032
    pass


def analyze_ChartGelframe_record(data):
    # 0x1066
    pass


def analyze_ChartIfmt_record(data):
    # 0x104E
    pass


def analyze_ChartLegend_record(data):
    # 0x1015
    pass


def analyze_ChartLegendxn_record(data):
    # 0x1043
    pass


def analyze_ChartLine_record(data):
    # 0x1018
    pass


def analyze_ChartLineformat_record(data):
    # 0x1007
    pass


def analyze_ChartMarkerformat_record(data):
    # 0x1009
    pass


def analyze_ChartObjectLink_record(data):
    # 0x1027
    pass


def analyze_ChartPicf_record(data):
    # 0x103C
    pass


def analyze_ChartPie_record(data):
    # 0x1019
    pass


def analyze_ChartPieformat_record(data):
    # 0x100B
    pass


def analyze_ChartPlotarea_record(data):
    # 0x1035
    pass


def analyze_ChartPlotgrowth_record(data):
    # 0x1064
    pass


def analyze_ChartPos_record(data):
    # 0x104F
    pass


def analyze_ChartRadar_record(data):
    # 0x103E
    pass


def analyze_ChartRadararea_record(data):
    # 0x1040
    pass


def analyze_ChartSbaseref_record(data):
    # 0x1048
    pass


def analyze_ChartScatter_record(data):
    # 0x101B
    pass


def analyze_ChartSerauxerrbar_record(data):
    # 0x105B
    pass


def analyze_ChartSerauxtrend_record(data):
    # 0x104B
    pass


def analyze_ChartSerfmt_record(data):
    # 0x105D
    pass


def analyze_ChartSeries_record(data):
    # 0x1003
    pass


def analyze_ChartSerieslist_record(data):
    # 0x1016
    pass


def analyze_ChartSeriestext_record(data):
    # 0x100D
    pass


def analyze_ChartSerparent_record(data):
    # 0x104A
    pass


def analyze_ChartSertocrt_record(data):
    # 0x1045
    pass


def analyze_ChartShtprops_record(data):
    # 0x1044
    pass


def analyze_ChartSiindex_record(data):
    # 0x1065
    pass


def analyze_ChartSurface_record(data):
    # 0x103F
    pass


def analyze_ChartText_record(data):
    # 0x1025
    pass


def analyze_ChartTick_record(data):
    # 0x101E
    pass


def analyze_ChartValuerange_record(data):
    # 0x101F
    pass


def analyze_DBCELL_record(data):
    # 0x00D7
    pass


def analyze_DCON_record(data):
    # 0x0050
    pass


def analyze_DCONBIN_record(data):
    # 0x01B5
    pass


def analyze_DCONNAME_record(data):
    # 0x0053
    pass


def analyze_DCONREF_record(data):
    # 0x0051
    pass


def analyze_DEFAULTROWHEIGHT_record(data):
    # 0x0025, 0x0225
    pass


def analyze_DEFCOLWIDTH_record(data):
    # 0x0055
    pass


def analyze_DELMENU_record(data):
    # 0x00C3
    pass


def analyze_DELTA_record(data):
    # 0x0010
    pass


def analyze_DIMENSIONS_record(data):
    # 0x0000, 0x0200
    pass


def analyze_DOCROUTE_record(data):
    # 0x00B8
    pass


def analyze_DSF_record(data):
    # 0x0161
    pass


def analyze_DV_record(data):
    # 0x01BE
    pass


def analyze_DVAL_record(data):
    # 0x01B2
    pass


def analyze_EDG_record(data):
    # 0x0088
    pass


def analyze_EFONT_record(data):
    # 0x0045
    pass


def analyze_END_record(data):
    # 0x1034
    pass


def analyze_EOF_record(data):
    # 0x000A
    pass


def analyze_EXTERNCOUNT_record(data):
    # 0x0016
    pass


def analyze_EXTERNNAME_record(data):
    # 0x0023, 0x0223
    pass


def analyze_EXTERNSHEET_record(data):
    # 0x0017
    pass


def analyze_EXTSST_record(data):
    # 0x00FF
    pass


def analyze_FILEPASS_record(data):
    # 0x002F
    pass


def analyze_FILESHARING_record(data):
    # 0x005B
    pass


def analyze_FILTERMODE_record(data):
    # 0x009B
    pass


def analyze_FNGROUPCOUNT_record(data):
    # 0x009C
    pass


def analyze_FNGROUPNAME_record(data):
    # 0x009A
    pass


def analyze_FONT_record(data):
    # 0x0031, 0x0231
    pass


def analyze_FOOTER_record(data):
    # 0x0015
    pass


def analyze_FORMAT_record(data):
    # 0x001E, 0x041E
    fmt_idx = struct.unpack('<H', data[0:2])
    name_len = struct.unpack('<H', data[2:4])
    compressed = data[4] == '\x00'
    print 'format index      : 0x%04X' % fmt_idx
    print 'format name len   : 0x%04X' % name_len
    print 'compressed UNICODE:', compressed

    name = data[5:]
    if not compressed:
        name = [c for c in name if c != '\x00']    
        name = ''.join(name)
    print 'format str        :', name            
    pass


def analyze_FORMATCOUNT_record(data):
    # 0x001F
    pass


def analyze_FORMULA_record(data):
    # 0x0006, 0x0206, 0x0406
    pass


def analyze_GCW_record(data):
    # 0x00AB
    pass


def analyze_GRIDSET_record(data):
    # 0x0082
    pass


def analyze_GUTS_record(data):
    # 0x0080
    pass


def analyze_HCENTER_record(data):
    # 0x0083
    pass


def analyze_HEADER_record(data):
    # 0x0014
    pass


def analyze_HIDEOBJ_record(data):
    # 0x008D
    pass


def analyze_HLINK_record(data):
    # 0x01B8
    pass


def analyze_HORIZONTALPAGEBREAKS_record(data):
    # 0x001B
    pass


def analyze_IMDATA_record(data):
    # 0x007F
    pass


def analyze_INDEX_record(data):
    # 0x000B, 0x020B
    pass


def analyze_INTEGER_record(data):
    # 0x0002
    pass


def analyze_INTERFACEEND_record(data):
    # 0x00E2
    pass


def analyze_INTERFACEHDR_record(data):
    # 0x00E1
    pass


def analyze_ITERATION_record(data):
    # 0x0011
    pass


def analyze_IXFE_record(data):
    # 0x0044
    pass


def analyze_LABEL_record(data):
    # 0x0004, 0x0204
    pass


def analyze_LABELRANGES_record(data):
    # 0x015F
    pass


def analyze_LABELSST_record(data):
    # 0x00FD
    row, col, xf_idx, sst_idx = struct.unpack('<3HL', data)
    print 'row     : 0x%000X'  % row
    print 'col     : 0x%000X'  % col
    print 'xf  idx : 0x%000X'  % xf_idx
    print 'sst idx : 0x%000X'  % sst_idx

    pass


def analyze_LEFTMARGIN_record(data):
    # 0x0026
    print struct.unpack('<d', data)[0]
    pass


def analyze_LHNGRAPH_record(data):
    # 0x0095
    pass


def analyze_LHRECORD_record(data):
    # 0x0094
    pass


def analyze_LPR_record(data):
    # 0x0098
    pass


def analyze_MMS_record(data):
    # 0x00C1
    pass


def analyze_MSODRAWING_record(data):
    # 0x00EC
    pass


def analyze_MSODRAWINGGROUP_record(data):
    # 0x00EB
    pass


def analyze_MSODRAWINGSELECTION_record(data):
    # 0x00ED
    pass


def analyze_MULBLANK_record(data):
    # 0x00BE
    pass


def analyze_MULRK_record(data):
    # 0x00BD
    pass


def analyze_NAME_record(data):
    # 0x0018, 0x0218
    pass


def analyze_NOTE_record(data):
    # 0x001C
    pass


def analyze_NUMBER_record(data):
    # 0x0003, 0x0203
    pass


def analyze_OBJ_record(data):
    # 0x005D
    pass


def analyze_OBJPROTECT_record(data):
    # 0x0063
    pass


def analyze_OBPROJ_record(data):
    # 0x00D3
    pass


def analyze_OLESIZE_record(data):
    # 0x00DE
    pass


def analyze_PALETTE_record(data):
    # 0x0092
    pass


def analyze_PANE_record(data):
    # 0x0041
    pass


def analyze_PASSWORD_record(data):
    # 0x0013
    pass


def analyze_PLS_record(data):
    # 0x004D
    pass


def analyze_PRECISION_record(data):
    # 0x000E
    pass


def analyze_PRINTGRIDLINES_record(data):
    # 0x002B
    pass


def analyze_PRINTHEADERS_record(data):
    # 0x002A
    pass


def analyze_PROT4REV_record(data):
    # 0x01AF
    pass


def analyze_PROT4REVPASS_record(data):
    # 0x01BC
    pass


def analyze_PROTECT_record(data):
    # 0x0012
    pass


def analyze_PUB_record(data):
    # 0x0089
    pass


def analyze_QSI_record(data):
    # 0x01AD
    pass

def analyze_RECALCID_record(data):
    # 0x01C1: 
    pass


def analyze_RECIPNAME_record(data):
    # 0x00B9
    pass


def analyze_REFMODE_record(data):
    # 0x000F
    pass


def analyze_REFRESHALL_record(data):
    # 0x01B7
    pass


def analyze_RIGHTMARGIN_record(data):
    # 0x0027
    print struct.unpack('<d', data)[0]
    pass


def analyze_RK_record(data):
    # 0x007E, 0x027E
    pass


def analyze_ROW_record(data):
    # 0x0008, 0x0208
    idx, col1, col2, height_options, not_used, not_used, options = \
        struct.unpack('<6HL', data)
    print 'row index        : 0x%000X'  % idx
    print 'start col        : 0x%000X'  % col1
    print 'last col + 1     : 0x%000X'  % col2
    print 'height           : 0x%000X'  % (height_options & 0x7FFF)
    print 'height is custom : 0x%000X'  % ((height_options & 0x8000) >> 15)
    print 'outline level    : 0x%000X'  % ((options & 0x00000007L) >> 0)
    print 'level collapsed  : 0x%000X'  % ((options & 0x00000010L) >> 4)
    print 'row is hidden    : 0x%000X'  % ((options & 0x00000020L) >> 5)
    print 'font height match: 0x%000X'  % ((options & 0x00000040L) >> 6)
    print 'default format   : 0x%000X'  % ((options & 0x00000080L) >> 7)
    print 'default xf index : 0x%000X'  % ((options & 0x0FFF0000L) >> 16)
    print 'add space above  : 0x%000X'  % ((options & 0x10000000L) >> 28)
    print 'add space below  : 0x%000X'  % ((options & 0x20000000L) >> 29)


def analyze_RSTRING_record(data):
    # 0x00D6
    pass


def analyze_SAFERECALC_record(data):
    # 0x005F
    pass


def analyze_SCENARIO_record(data):
    # 0x00AF
    pass


def analyze_SCENMAN_record(data):
    # 0x00AE
    pass


def analyze_SCENPROTECT_record(data):
    # 0x00DD
    pass


def analyze_SCL_record(data):
    # 0x00A0
    pass


def analyze_SCREENTIP_record(data):
    # 0x0800
    pass


def analyze_SELECTION_record(data):
    # 0x001D
    pass


def analyze_SETUP_record(data):
    # 0x00A1
    pass


def analyze_SHEETLAYOUT_record(data):
    # 0x0862
    pass


def analyze_SHEETPROTECTION_record(data):
    # 0x0867
    pass


def analyze_SHRFMLA_record(data):
    # 0x00BC, 0x04BC
    pass


def analyze_SORT_record(data):
    # 0x0090
    pass


def analyze_SOUND_record(data):
    # 0x0096
    pass


def analyze_SST_record(data):
    # 0x00FC
    pass


def analyze_STANDARDWIDTH_record(data):
    # 0x0099
    pass


def analyze_STRING_record(data):
    # 0x0007, 0x0207
    pass


def analyze_STYLE_record(data):
    # 0x0093, 0x0293
    pass


def analyze_SUB_record(data):
    # 0x0091
    pass


def analyze_SUPBOOK_record(data):
    # 0x01AE
    pass


def analyze_SXDATETIME_record(data):
    # 0x00CE
    pass


def analyze_SXDB_record(data):
    # 0x00C6
    pass


def analyze_SXDBEX_record(data):
    # 0x0122
    pass


def analyze_SXDI_record(data):
    # 0x00C5
    pass


def analyze_SXDOUBLE_record(data):
    # 0x00C9
    pass


def analyze_SXEX_record(data):
    # 0x00F1
    pass


def analyze_SXEXT_PARAMQRY_record(data):
    # 0x00DC
    pass


def analyze_SXFDBTYPE_record(data):
    # 0x01BB
    pass


def analyze_SXFIELD_record(data):
    # 0x00C7
    pass


def analyze_SXFILT_record(data):
    # 0x00F2
    pass


def analyze_SXFMLA_record(data):
    # 0x00F9
    pass


def analyze_SXFORMAT_record(data):
    # 0x00FB
    pass


def analyze_SXFORMULA_record(data):
    # 0x0103
    pass


def analyze_SXIDSTM_record(data):
    # 0x00D5
    pass


def analyze_SXINDEXLIST_record(data):
    # 0x00C8
    pass


def analyze_SXIVD_record(data):
    # 0x00B4
    pass


def analyze_SXLI_record(data):
    # 0x00B5
    pass


def analyze_SXNAME_record(data):
    # 0x00F6
    pass


def analyze_SXPAIR_record(data):
    # 0x00F8
    pass


def analyze_SXPI_record(data):
    # 0x00B6
    pass


def analyze_SXRULE_record(data):
    # 0x00F0
    pass


def analyze_SXSELECT_record(data):
    # 0x00F7
    pass


def analyze_SXSTRING_record(data):
    # 0x00CD
    pass


def analyze_SXTBL_record(data):
    # 0x00D0
    pass


def analyze_SXTBPG_record(data):
    # 0x00D2
    pass


def analyze_SXTBRGITEM_record(data):
    # 0x00D1
    pass


def analyze_SXVD_record(data):
    # 0x00B1
    pass


def analyze_SXVDEX_record(data):
    # 0x0100
    pass


def analyze_SXVI_record(data):
    # 0x00B2
    pass


def analyze_SXVIEW_record(data):
    # 0x00B0
    pass


def analyze_SXVS_record(data):
    # 0x00E3
    pass


def analyze_TABID_record(data):
    # 0x013D
    pass


def analyze_TABLE_record(data):
    # 0x0036, 0x0236
    pass


def analyze_TEMPLATE_record(data):
    # 0x0060
    pass


def analyze_TOPMARGIN_record(data):
    # 0x0028
    print struct.unpack('<d', data)[0]
    pass


def analyze_TXO_record(data):
    # 0x01B6
    pass


def analyze_UDDESC_record(data):
    # 0x00DF
    pass


def analyze_UNCALCED_record(data):
    # 0x005E
    pass


def analyze_UNITS_record(data):
    # 0x1001
    pass


def analyze_USERBVIEW_record(data):
    # 0x01A9
    pass


def analyze_USERSVIEWBEGIN_record(data):
    # 0x01AA
    pass


def analyze_USERSVIEWEND_record(data):
    # 0x01AB
    pass


def analyze_USESELFS_record(data):
    # 0x0160
    pass


def analyze_VCENTER_record(data):
    # 0x0084
    pass


def analyze_VERTICALPAGEBREAKS_record(data):
    # 0x001A
    pass


def analyze_WEBQRYSETTINGS_record(data):
    # 0x0803
    pass


def analyze_WEBQRYTABLES_record(data):
    # 0x0804
    pass


def analyze_WINDOW1_record(data):
    # 0x003D
    pass


def analyze_WINDOW2_record(data):
    # 0x003E, 0x023E
    pass


def analyze_WINDOWPROTECT_record(data):
    # 0x0019
    pass


def analyze_WRITEACCESS_record(data):
    # 0x005C
    pass


def analyze_WRITEPROT_record(data):
    # 0x0086
    pass


def analyze_WSBOOL_record(data):
    # 0x0081
    pass


def analyze_XCT_record(data):
    # 0x0059
    pass


def analyze_XF_record(data):
    # 0x0043, 0x00E0, 0x0243, 0x0443
    #fnt_idx, num_ftm_idx, \
    #    cell_prot,         \
    #    align, rotation, txt_format, \
    #    used_attrib, \
    #    border0, border1, border2 = struct.unpack('<3H4B2LH', data)
    #print 'fnt idx                 : 0x%000X'  % fnt_idx
    #print 'num fmt idx             : 0x%000X'  % num_ftm_idx
    #print 'cell is locked          : 0x%0X  '  % ((cell_prot) & 0x01)
    #print 'format is hidden        : 0x%0X  '  % ((cell_prot & 0x02) >> 1)
    #print 'style XF(1), cell XF(0) : 0x%0X  '  % ((cell_prot & 0x03) >> 3)
    #print 'Index to parent style XF: 0x%0000X' % ((cell_prot & 0xFFF0) >> 4)

    pass


def analyze_XL5MODIFY_record(data):
    # 0x0162
    pass

def analyze_XL9FILE_record(data):
    # 0x01C0: 
    pass

all_records = {
    0x0000: ('DIMENSIONS', analyze_DIMENSIONS_record),
    0x0001: ('BLANK', analyze_BLANK_record),
    0x0002: ('INTEGER', analyze_INTEGER_record),
    0x0003: ('NUMBER', analyze_NUMBER_record),
    0x0004: ('LABEL', analyze_LABEL_record),
    0x0005: ('BOOLERR', analyze_BOOLERR_record),
    0x0006: ('FORMULA', analyze_FORMULA_record),
    0x0007: ('STRING', analyze_STRING_record),
    0x0008: ('ROW', analyze_ROW_record),
    0x0009: ('BOF', analyze_BOF_record),
    0x000A: ('EOF', analyze_EOF_record),
    0x000B: ('INDEX', analyze_INDEX_record),
    0x000C: ('CALCCOUNT', analyze_CALCCOUNT_record),
    0x000D: ('CALCMODE', analyze_CALCMODE_record),
    0x000E: ('PRECISION', analyze_PRECISION_record),
    0x000F: ('REFMODE', analyze_REFMODE_record),
    0x0010: ('DELTA', analyze_DELTA_record),
    0x0011: ('ITERATION', analyze_ITERATION_record),
    0x0012: ('PROTECT', analyze_PROTECT_record),
    0x0013: ('PASSWORD', analyze_PASSWORD_record),
    0x0014: ('HEADER', analyze_HEADER_record),
    0x0015: ('FOOTER', analyze_FOOTER_record),
    0x0016: ('EXTERNCOUNT', analyze_EXTERNCOUNT_record),
    0x0017: ('EXTERNSHEET', analyze_EXTERNSHEET_record),
    0x0018: ('NAME', analyze_NAME_record),
    0x0019: ('WINDOWPROTECT', analyze_WINDOWPROTECT_record),
    0x001A: ('VERTICALPAGEBREAKS', analyze_VERTICALPAGEBREAKS_record),
    0x001B: ('HORIZONTALPAGEBREAKS', analyze_HORIZONTALPAGEBREAKS_record),
    0x001C: ('NOTE', analyze_NOTE_record),
    0x001D: ('SELECTION', analyze_SELECTION_record),
    0x001E: ('FORMAT', analyze_FORMAT_record),
    0x001F: ('FORMATCOUNT', analyze_FORMATCOUNT_record),
    0x0020: ('COLUMNDEFAULT', analyze_COLUMNDEFAULT_record),
    0x0021: ('ARRAY', analyze_ARRAY_record),
    0x0022: ('1904', analyze_1904_record),
    0x0023: ('EXTERNNAME', analyze_EXTERNNAME_record),
    0x0024: ('COLWIDTH', analyze_COLWIDTH_record),
    0x0025: ('DEFAULTROWHEIGHT', analyze_DEFAULTROWHEIGHT_record),
    0x0026: ('LEFTMARGIN', analyze_LEFTMARGIN_record),
    0x0027: ('RIGHTMARGIN', analyze_RIGHTMARGIN_record),
    0x0028: ('TOPMARGIN', analyze_TOPMARGIN_record),
    0x0029: ('BOTTOMMARGIN', analyze_BOTTOMMARGIN_record),
    0x002A: ('PRINTHEADERS', analyze_PRINTHEADERS_record),
    0x002B: ('PRINTGRIDLINES', analyze_PRINTGRIDLINES_record),
    0x002F: ('FILEPASS', analyze_FILEPASS_record),
    0x0031: ('FONT', analyze_FONT_record),
    0x0036: ('TABLE', analyze_TABLE_record),
    0x003C: ('CONTINUE', analyze_CONTINUE_record),
    0x003D: ('WINDOW1', analyze_WINDOW1_record),
    0x003E: ('WINDOW2', analyze_WINDOW2_record),
    0x0040: ('BACKUP', analyze_BACKUP_record),
    0x0041: ('PANE', analyze_PANE_record),
    0x0042: ('CODEPAGE', analyze_CODEPAGE_record),
    0x0043: ('XF', analyze_XF_record),
    0x0044: ('IXFE', analyze_IXFE_record),
    0x0045: ('EFONT', analyze_EFONT_record),
    0x004D: ('PLS', analyze_PLS_record),
    0x0050: ('DCON', analyze_DCON_record),
    0x0051: ('DCONREF', analyze_DCONREF_record),
    0x0053: ('DCONNAME', analyze_DCONNAME_record),
    0x0055: ('DEFCOLWIDTH', analyze_DEFCOLWIDTH_record),
    0x0056: ('BUILTINFMTCNT', analyze_BUILTINFMTCNT_record),
    0x0059: ('XCT', analyze_XCT_record),
    0x005A: ('CRN', analyze_CRN_record),
    0x005B: ('FILESHARING', analyze_FILESHARING_record),
    0x005C: ('WRITEACCESS', analyze_WRITEACCESS_record),
    0x005D: ('OBJ', analyze_OBJ_record),
    0x005E: ('UNCALCED', analyze_UNCALCED_record),
    0x005F: ('SAFERECALC', analyze_SAFERECALC_record),
    0x0060: ('TEMPLATE', analyze_TEMPLATE_record),
    0x0063: ('OBJPROTECT', analyze_OBJPROTECT_record),
    0x007D: ('COLINFO', analyze_COLINFO_record),
    0x007E: ('RK', analyze_RK_record),
    0x007F: ('IMDATA', analyze_IMDATA_record),
    0x0080: ('GUTS', analyze_GUTS_record),
    0x0081: ('WSBOOL', analyze_WSBOOL_record),
    0x0082: ('GRIDSET', analyze_GRIDSET_record),
    0x0083: ('HCENTER', analyze_HCENTER_record),
    0x0084: ('VCENTER', analyze_VCENTER_record),
    0x0085: ('BOUNDSHEET', analyze_BOUNDSHEET_record),
    0x0086: ('WRITEPROT', analyze_WRITEPROT_record),
    0x0087: ('ADDIN', analyze_ADDIN_record),
    0x0088: ('EDG', analyze_EDG_record),
    0x0089: ('PUB', analyze_PUB_record),
    0x008C: ('COUNTRY', analyze_COUNTRY_record),
    0x008D: ('HIDEOBJ', analyze_HIDEOBJ_record),
    0x008E: ('BUNDLESOFFSET', analyze_BUNDLESOFFSET_record),
    0x008F: ('BUNDLEHEADER', analyze_BUNDLEHEADER_record),
    0x0090: ('SORT', analyze_SORT_record),
    0x0091: ('SUB', analyze_SUB_record),
    0x0092: ('PALETTE', analyze_PALETTE_record),
    0x0093: ('STYLE', analyze_STYLE_record),
    0x0094: ('LHRECORD', analyze_LHRECORD_record),
    0x0095: ('LHNGRAPH', analyze_LHNGRAPH_record),
    0x0096: ('SOUND', analyze_SOUND_record),
    0x0098: ('LPR', analyze_LPR_record),
    0x0099: ('STANDARDWIDTH', analyze_STANDARDWIDTH_record),
    0x009A: ('FNGROUPNAME', analyze_FNGROUPNAME_record),
    0x009B: ('FILTERMODE', analyze_FILTERMODE_record),
    0x009C: ('FNGROUPCOUNT', analyze_FNGROUPCOUNT_record),
    0x009D: ('AUTOFILTERINFO', analyze_AUTOFILTERINFO_record),
    0x009E: ('AUTOFILTER', analyze_AUTOFILTER_record),
    0x00A0: ('SCL', analyze_SCL_record),
    0x00A1: ('SETUP', analyze_SETUP_record),
    0x00A9: ('COORDLIST', analyze_COORDLIST_record),
    0x00AB: ('GCW', analyze_GCW_record),
    0x00AE: ('SCENMAN', analyze_SCENMAN_record),
    0x00AF: ('SCENARIO', analyze_SCENARIO_record),
    0x00B0: ('SXVIEW', analyze_SXVIEW_record),
    0x00B1: ('SXVD', analyze_SXVD_record),
    0x00B2: ('SXVI', analyze_SXVI_record),
    0x00B4: ('SXIVD', analyze_SXIVD_record),
    0x00B5: ('SXLI', analyze_SXLI_record),
    0x00B6: ('SXPI', analyze_SXPI_record),
    0x00B8: ('DOCROUTE', analyze_DOCROUTE_record),
    0x00B9: ('RECIPNAME', analyze_RECIPNAME_record),
    0x00BC: ('SHRFMLA', analyze_SHRFMLA_record),
    0x00BD: ('MULRK', analyze_MULRK_record),
    0x00BE: ('MULBLANK', analyze_MULBLANK_record),
    0x00C1: ('MMS', analyze_MMS_record),
    0x00C2: ('ADDMENU', analyze_ADDMENU_record),
    0x00C3: ('DELMENU', analyze_DELMENU_record),
    0x00C5: ('SXDI', analyze_SXDI_record),
    0x00C6: ('SXDB', analyze_SXDB_record),
    0x00C7: ('SXFIELD', analyze_SXFIELD_record),
    0x00C8: ('SXINDEXLIST', analyze_SXINDEXLIST_record),
    0x00C9: ('SXDOUBLE', analyze_SXDOUBLE_record),
    0x00CD: ('SXSTRING', analyze_SXSTRING_record),
    0x00CE: ('SXDATETIME', analyze_SXDATETIME_record),
    0x00D0: ('SXTBL', analyze_SXTBL_record),
    0x00D1: ('SXTBRGITEM', analyze_SXTBRGITEM_record),
    0x00D2: ('SXTBPG', analyze_SXTBPG_record),
    0x00D3: ('OBPROJ', analyze_OBPROJ_record),
    0x00D5: ('SXIDSTM', analyze_SXIDSTM_record),
    0x00D6: ('RSTRING', analyze_RSTRING_record),
    0x00D7: ('DBCELL', analyze_DBCELL_record),
    0x00DA: ('BOOKBOOL', analyze_BOOKBOOL_record),
    0x00DC: ('SXEXT|PARAMQRY', analyze_SXEXT_PARAMQRY_record),
    0x00DD: ('SCENPROTECT', analyze_SCENPROTECT_record),
    0x00DE: ('OLESIZE', analyze_OLESIZE_record),
    0x00DF: ('UDDESC', analyze_UDDESC_record),
    0x00E0: ('XF', analyze_XF_record),
    0x00E1: ('INTERFACEHDR', analyze_INTERFACEHDR_record),
    0x00E2: ('INTERFACEEND', analyze_INTERFACEEND_record),
    0x00E3: ('SXVS', analyze_SXVS_record),
    0x00E5: ('MERGEDCELLS', analyze_MERGEDCELLS_record),
    0x00E9: ('BITMAP', analyze_BITMAP_record),
    0x00EB: ('MSODRAWINGGROUP', analyze_MSODRAWINGGROUP_record),
    0x00EC: ('MSODRAWING', analyze_MSODRAWING_record),
    0x00ED: ('MSODRAWINGSELECTION', analyze_MSODRAWINGSELECTION_record),
    0x00F0: ('SXRULE', analyze_SXRULE_record),
    0x00F1: ('SXEX', analyze_SXEX_record),
    0x00F2: ('SXFILT', analyze_SXFILT_record),
    0x00F6: ('SXNAME', analyze_SXNAME_record),
    0x00F7: ('SXSELECT', analyze_SXSELECT_record),
    0x00F8: ('SXPAIR', analyze_SXPAIR_record),
    0x00F9: ('SXFMLA', analyze_SXFMLA_record),
    0x00FB: ('SXFORMAT', analyze_SXFORMAT_record),
    0x00FC: ('SST', analyze_SST_record),
    0x00FD: ('LABELSST', analyze_LABELSST_record),
    0x00FF: ('EXTSST', analyze_EXTSST_record),
    0x0100: ('SXVDEX', analyze_SXVDEX_record),
    0x0103: ('SXFORMULA', analyze_SXFORMULA_record),
    0x0122: ('SXDBEX', analyze_SXDBEX_record),
    0x0137: ('CHTRINSERT', analyze_CHTRINSERT_record),
    0x0138: ('CHTRINFO', analyze_CHTRINFO_record),
    0x013B: ('CHTRCELLCONTENT', analyze_CHTRCELLCONTENT_record),
    0x013D: ('TABID', analyze_TABID_record),
    0x0140: ('CHTRMOVERANGE', analyze_CHTRMOVERANGE_record),
    0x014D: ('CHTRINSERTTAB', analyze_CHTRINSERTTAB_record),
    0x015F: ('LABELRANGES', analyze_LABELRANGES_record),
    0x0160: ('USESELFS', analyze_USESELFS_record),
    0x0161: ('DSF', analyze_DSF_record),
    0x0162: ('XL5MODIFY', analyze_XL5MODIFY_record),
    0x0196: ('CHTRHEADER', analyze_CHTRHEADER_record),
    0x01A9: ('USERBVIEW', analyze_USERBVIEW_record),
    0x01AA: ('USERSVIEWBEGIN', analyze_USERSVIEWBEGIN_record),
    0x01AB: ('USERSVIEWEND', analyze_USERSVIEWEND_record),
    0x01AD: ('QSI', analyze_QSI_record),
    0x01AE: ('SUPBOOK', analyze_SUPBOOK_record),
    0x01AF: ('PROT4REV', analyze_PROT4REV_record),
    0x01B0: ('CONDFMT', analyze_CONDFMT_record),
    0x01B1: ('CF', analyze_CF_record),
    0x01B2: ('DVAL', analyze_DVAL_record),
    0x01B5: ('DCONBIN', analyze_DCONBIN_record),
    0x01B6: ('TXO', analyze_TXO_record),
    0x01B7: ('REFRESHALL', analyze_REFRESHALL_record),
    0x01B8: ('HLINK', analyze_HLINK_record),
    0x01BA: ('CODENAME', analyze_CODENAME_record),
    0x01BB: ('SXFDBTYPE', analyze_SXFDBTYPE_record),
    0x01BC: ('PROT4REVPASS', analyze_PROT4REVPASS_record),
    0x01BE: ('DV', analyze_DV_record),
    0x01C0: ('XL9FILE', analyze_XL9FILE_record),
    0x01C1: ('RECALCID',analyze_RECALCID_record),
    0x0200: ('DIMENSIONS', analyze_DIMENSIONS_record),
    0x0201: ('BLANK', analyze_BLANK_record),
    0x0203: ('NUMBER', analyze_NUMBER_record),
    0x0204: ('LABEL', analyze_LABEL_record),
    0x0205: ('BOOLERR', analyze_BOOLERR_record),
    0x0206: ('FORMULA', analyze_FORMULA_record),
    0x0207: ('STRING', analyze_STRING_record),
    0x0208: ('ROW', analyze_ROW_record),
    0x0209: ('BOF', analyze_BOF_record),
    0x020B: ('INDEX', analyze_INDEX_record),
    0x0218: ('NAME', analyze_NAME_record),
    0x0221: ('ARRAY', analyze_ARRAY_record),
    0x0223: ('EXTERNNAME', analyze_EXTERNNAME_record),
    0x0225: ('DEFAULTROWHEIGHT', analyze_DEFAULTROWHEIGHT_record),
    0x0231: ('FONT', analyze_FONT_record),
    0x0236: ('TABLE', analyze_TABLE_record),
    0x023E: ('WINDOW2', analyze_WINDOW2_record),
    0x0243: ('XF', analyze_XF_record),
    0x027E: ('RK', analyze_RK_record),
    0x0293: ('STYLE', analyze_STYLE_record),
    0x0406: ('FORMULA', analyze_FORMULA_record),
    0x0409: ('BOF', analyze_BOF_record),
    0x041E: ('FORMAT', analyze_FORMAT_record),
    0x0443: ('XF', analyze_XF_record),
    0x04BC: ('SHRFMLA', analyze_SHRFMLA_record),
    0x0800: ('SCREENTIP', analyze_SCREENTIP_record),
    0x0803: ('WEBQRYSETTINGS', analyze_WEBQRYSETTINGS_record),
    0x0804: ('WEBQRYTABLES', analyze_WEBQRYTABLES_record),
    0x0809: ('BOF', analyze_BOF_record),
    0x0862: ('SHEETLAYOUT', analyze_SHEETLAYOUT_record),
    0x0867: ('SHEETPROTECTION', analyze_SHEETPROTECTION_record),
    0x1001: ('UNITS', analyze_UNITS_record),
    0x1002: ('ChartChart', analyze_ChartChart_record),
    0x1003: ('ChartSeries', analyze_ChartSeries_record),
    0x1006: ('ChartDataformat', analyze_ChartDataformat_record),
    0x1007: ('ChartLineformat', analyze_ChartLineformat_record),
    0x1009: ('ChartMarkerformat', analyze_ChartMarkerformat_record),
    0x100A: ('ChartAreaformat', analyze_ChartAreaformat_record),
    0x100B: ('ChartPieformat', analyze_ChartPieformat_record),
    0x100C: ('ChartAttachedlabel', analyze_ChartAttachedlabel_record),
    0x100D: ('ChartSeriestext', analyze_ChartSeriestext_record),
    0x1014: ('ChartChartformat', analyze_ChartChartformat_record),
    0x1015: ('ChartLegend', analyze_ChartLegend_record),
    0x1016: ('ChartSerieslist', analyze_ChartSerieslist_record),
    0x1017: ('ChartBar', analyze_ChartBar_record),
    0x1018: ('ChartLine', analyze_ChartLine_record),
    0x1019: ('ChartPie', analyze_ChartPie_record),
    0x101A: ('ChartArea', analyze_ChartArea_record),
    0x101B: ('ChartScatter', analyze_ChartScatter_record),
    0x101C: ('ChartChartline', analyze_ChartChartline_record),
    0x101D: ('ChartAxis', analyze_ChartAxis_record),
    0x101E: ('ChartTick', analyze_ChartTick_record),
    0x101F: ('ChartValuerange', analyze_ChartValuerange_record),
    0x1020: ('ChartCatserrange', analyze_ChartCatserrange_record),
    0x1021: ('ChartAxislineformat', analyze_ChartAxislineformat_record),
    0x1022: ('ChartFormatlink', analyze_ChartFormatlink_record),
    0x1024: ('ChartDefaulttext', analyze_ChartDefaulttext_record),
    0x1025: ('ChartText', analyze_ChartText_record),
    0x1026: ('ChartFontx', analyze_ChartFontx_record),
    0x1027: ('ChartObjectLink', analyze_ChartObjectLink_record),
    0x1032: ('ChartFrame', analyze_ChartFrame_record),
    0x1033: ('BEGIN', analyze_BEGIN_record),
    0x1034: ('END', analyze_END_record),
    0x1035: ('ChartPlotarea', analyze_ChartPlotarea_record),
    0x103A: ('Chart3D', analyze_Chart3D_record),
    0x103C: ('ChartPicf', analyze_ChartPicf_record),
    0x103D: ('ChartDropbar', analyze_ChartDropbar_record),
    0x103E: ('ChartRadar', analyze_ChartRadar_record),
    0x103F: ('ChartSurface', analyze_ChartSurface_record),
    0x1040: ('ChartRadararea', analyze_ChartRadararea_record),
    0x1041: ('ChartAxisparent', analyze_ChartAxisparent_record),
    0x1043: ('ChartLegendxn', analyze_ChartLegendxn_record),
    0x1044: ('ChartShtprops', analyze_ChartShtprops_record),
    0x1045: ('ChartSertocrt', analyze_ChartSertocrt_record),
    0x1046: ('ChartAxesused', analyze_ChartAxesused_record),
    0x1048: ('ChartSbaseref', analyze_ChartSbaseref_record),
    0x104A: ('ChartSerparent', analyze_ChartSerparent_record),
    0x104B: ('ChartSerauxtrend', analyze_ChartSerauxtrend_record),
    0x104E: ('ChartIfmt', analyze_ChartIfmt_record),
    0x104F: ('ChartPos', analyze_ChartPos_record),
    0x1050: ('ChartAlruns', analyze_ChartAlruns_record),
    0x1051: ('ChartAI', analyze_ChartAI_record),
    0x105B: ('ChartSerauxerrbar', analyze_ChartSerauxerrbar_record),
    0x105D: ('ChartSerfmt', analyze_ChartSerfmt_record),
    0x105F: ('Chart3DDataFormat', analyze_Chart3DDataFormat_record),
    0x1060: ('ChartFbi', analyze_ChartFbi_record),
    0x1061: ('ChartBoppop', analyze_ChartBoppop_record),
    0x1062: ('ChartAxcext', analyze_ChartAxcext_record),
    0x1063: ('ChartDat', analyze_ChartDat_record),
    0x1064: ('ChartPlotgrowth', analyze_ChartPlotgrowth_record),
    0x1065: ('ChartSiindex', analyze_ChartSiindex_record),
    0x1066: ('ChartGelframe', analyze_ChartGelframe_record),
    0x1067: ('ChartBoppcustom', analyze_ChartBoppcustom_record),
    0xFFFF: ('', None)
}
if __name__ == '__main__':
    for r in all_records:
        if all_records[r][1]:
            all_records[r][1]('analyze it!')
            
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.