Menu

#3 Instructions are not clear

v1.0_(example)
open
nobody
None
5
2019-07-10
2019-05-14
Oto
No

If trying to extraxt or add object to document it shows "Save "Root Entry" (0): Success" or "Save "(null)" (64): Success" but nothing actually is saved or dumped.

Discussion

  • RF Engineer

    RF Engineer - 2019-07-10

    It would be great if there were at least one example of how to dump the contents of an OLE object to disk. In my case when I type the command (as per the help provided):

    mvole -e vbaProject.bin
    

    I get the following output:

    MVOLE Ms OLE storage manipulation 0.30b
      by Andrey S. Cherepanov & Tomasz Lis, 2001-2007
    -------------------------------
    Mounting OLE file vbaProject.bin, size 235520 bytes...
    Reading big blocks allocation table...
    Info: Allocated memory for 4 BD alloc. table blocks
    Info: Processing allocation table part 0, entry 000000
    Info: Processing allocation table part 1, entry 000077
    Info: Processing allocation table part 2, entry 0000eb
    Info: Processing allocation table part 3, entry 00017f
    Info: Readed 2048 bytes of Big Block depot
    Info: Filled 512 entries of BD allocation table
    Reading small blocks allocation table...
    Info: Processing allocation entry 000002 to extract block
    Info: Processing allocation entry 0000ef to extract block
    Info: Processing allocation entry 0001be to extract block
    Info: Loaded 1536 bytes to form SD alloc. table
    Info: Created 384 entries in SD alloc. table
    Reading root entry...
    Info: Processing allocation entry 000001 to extract block
    Info: Processing allocation entry 000008 to extract block
    Info: Processing allocation entry 00005c to extract block
    Info: Processing allocation entry 0000aa to extract block
    Info: Processing allocation entry 0000cf to extract block
    Info: Processing allocation entry 0000ea to extract block
    Info: Processing allocation entry 000178 to extract block
    Info: Processing allocation entry 000183 to extract block
    Info: Processing allocation entry 00019b to extract block
    Info: Processing allocation entry 0001bf to extract block
    Reading objects tree...
    Info: Created entry "Root Entry"; size 16320, first alloc entry 000003
    Info: Created entry "VBA"; size 0, first alloc entry 000000
    Info: Created entry "ThisWorkbook"; size 1105, first alloc entry 000000
    Info: Created entry "Sheet1"; size 985, first alloc entry 000012
    Info: Created entry "Module_Auxiliary"; size 19274, first alloc entry 00000d
    Info: Created entry "Module_FindAllUplinkReceptions"; size 22169, first alloc entry 000033
    Info: Created entry "__SRP_a"; size 260, first alloc entry 000022
    Info: Created entry "__SRP_b"; size 223, first alloc entry 000027
    Info: Created entry "Module_PasteDataFromClipboard"; size 10536, first alloc entry 000064
    Info: Created entry "__SRP_3"; size 446, first alloc entry 00002b
    Info: Created entry "__SRP_2"; size 363, first alloc entry 000032
    Info: Created entry "Module_RUN_General"; size 27546, first alloc entry 000078
    Info: Created entry "__SRP_5"; size 384, first alloc entry 000038
    Info: Created entry "__SRP_4"; size 251, first alloc entry 00003e
    Info: Created entry "Module_RUN_PostProcessing"; size 17405, first alloc entry 0000b4
    Info: Created entry "__SRP_c"; size 322, first alloc entry 000042
    Info: Created entry "__SRP_d"; size 258, first alloc entry 000048
    Info: Created entry "Module_RUN_PreProcessing"; size 11813, first alloc entry 0000d7
    Info: Created entry "__SRP_e"; size 198, first alloc entry 00004d
    Info: Created entry "__SRP_f"; size 167, first alloc entry 000051
    Info: Created entry "Module_RUN_Processing"; size 20221, first alloc entry 0000f4
    Info: Created entry "__SRP_7"; size 94, first alloc entry 000054
    Info: Created entry "__SRP_6"; size 280, first alloc entry 000056
    Info: Created entry "Sheet_NC_RUN"; size 49676, first alloc entry 00011d
    Info: Created entry "__SRP_8"; size 1128, first alloc entry 00005b
    Info: Created entry "__SRP_9"; size 752, first alloc entry 00006d
    Info: Created entry "xxx_ThisWorkbook"; size 9465, first alloc entry 000184
    Info: Created entry "__SRP_12"; size 124, first alloc entry 000079
    Info: Created entry "__SRP_13"; size 260, first alloc entry 00007b
    Info: Created entry "zzz_Module_Restore_References"; size 3817, first alloc entry 000080
    Info: Created entry "__SRP_10"; size 136, first alloc entry 0000bc
    Info: Created entry "__SRP_11"; size 103, first alloc entry 0000bf
    Info: Created entry "_VBA_PROJECT"; size 13939, first alloc entry 0001a2
    Info: Created entry "dir"; size 1336, first alloc entry 0000c1
    Info: Created entry "__SRP_0"; size 4877, first alloc entry 0001c1
    Info: Created entry "__SRP_1"; size 696, first alloc entry 0000d6
    Info: Created entry "PROJECTwm"; size 752, first alloc entry 0000e1
    Info: Created entry "PROJECT"; size 1110, first alloc entry 0000ed
    Info: Entry 38 does not exist, skipped
    Info: Entry 39 does not exist, skipped
    Done, file mounted.
    Info: Processing allocation entry 000000 to extract block
    Info: Processing allocation entry fffffffd to extract block
    Warning: BD allocation entry ends with control value
    Warning: Special Big Block value fffffffd when loading block
    Save "(null)" (512): Success
    

    But despite it stating "success" nothing appears to have been saved anywhere.

    SUMMARY: Just a simple command-line example (with actual values, not with standard abstract notations like it is in the help) showing how to dump the contents of a specific OLE object to a file or to a folder would be great.

    For example: I have VBAProject.bin object which I extracted from an Excel .xlsm file. I would like to further extract (or decompile) this into ASCII file. With the above command mvole.exe appears to be doing something and extracting something, but when it finishes there is no trace of any saved files, as if all is done in memory and left there.

    [Explanation: I would like to use mvole.exe to extract VBAProject.bin as part of my investigation into why my VBA workbooks get quickly corrupted under the new Microsoft Office 365 -- I have never had in the past such a problem of a VBA workbook getting corrupted just after a couple of edits in Excel. So I would like to see what exactly changes inside VBAProject.bin from one edit to another that results in the workbook being declared by Excel.exe as corrupted. My workbooks are neither excessive in size nor in complexity, they are just moderate and modest VBA workbooks which get spontaneously corrupted after I have edited them in Excel a few times -- this is something new for me and it only started happenning this month after I upgraded from Office 2013 to Office 365. Now it is happenning on a daily bases with most of my VBA workbooks and it is preventing me from doing my job. I only edit the workbooks in Excel and in Office VBA Editor, so it is surprising that a couple of edits lead to a workbook being seen by Excel as corrupted.]

    Thanks for your help and time, and kind regards,
    RF Engineer

     

    Last edit: RF Engineer 2019-07-10
  • Tomasz Lis

    Tomasz Lis - 2019-07-10

    Please look at either USAGE file or the source code.
    https://sourceforge.net/p/mvole/code/ci/master/tree/USAGE

    This tool is not in active development for over a decade, so the only way to answer your questions is to check the source.

    I apreciate the in-depth description you made, but I have no plans of getting back to developing this.

     
  • RF Engineer

    RF Engineer - 2019-07-10

    Hello Tomasz,

    Thank you very much indeed for your prompt anwer -- this was much appreciated.

    Kind regards,
    RF Engineer

     

Log in to post a comment.