VirtualBox

Changeset 59386 in vbox for trunk/src/VBox/Installer/win


Ignore:
Timestamp:
Jan 18, 2016 5:48:29 PM (9 years ago)
Author:
vboxsync
Message:

VBoxMergeAppSeq.wxi: VBOX_WITH_MIDL_PROXY_STUB no longer needed after adding the 'proxy' attribute to IDL interfaces.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Installer/win/VBoxMergeAppSeq.wxi

    r59329 r59386  
    1717         xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
    1818
    19 <?if $(env.VBOX_WITH_MIDL_PROXY_STUB) = "yes" ?>
    20     <!--
    21         Reverse the typelib and registry writing order to make proxy stub work.
    22 
    23         A few things are ganging up on us here:
    24             - A Typelib element is translated into a typelib table entry.
    25             - While a Interface element is translated into a registry table
    26               entry.
    27             - The typelib table is by default processed after writing the
    28               registry table.
    29             - The typelib processing will set the ProxyStubClsid32 to a
    30               dynamic builtin one that uses the typelib, thus overwriting
    31               that bit of intformation from our interface elements (the
    32               NumMethods bit is kept, go figure).
    33            (- If we set the Advertise attribute on the Typelib element to
    34               no, we may get a bit futher with ProxyStubClsid32, but we
    35               end up with VBoxC being using instead of VBoxSVC. At least
    36               in one of the configurations attempted)
    37 
    38         The whole point of the proxy stub DLLs is to not use the default
    39         dynamic proxy stub from OLE that loads+parses the typelib each time
    40         it creates proxies/stubs.  There are two workarounds:
    41             1. Don't use the typelib and interface elements, but instead emit
    42                plain registry entries (heat.exe can help).
    43             2. Make the registry writing happen after the typelib registration.
    44 
    45         Going with option two for now.
    46 
    47         ASSUMES RegisterTypeLibraries has sequence number 5500 and
    48         WriteRegistryValues 5000.  Modifies both.
    49      -->
    50     <RegisterTypeLibraries Sequence="4999"/>
    51     <WriteRegistryValues Sequence="5501"/>
    52 <?endif?>
    53 
    5419</Include>
    5520
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette