GithubHelp home page GithubHelp logo

Comments (6)

wixbot avatar wixbot commented on July 19, 2024

Dark does not dump out standard actions (they are
unnecessary) and light only adds back the standard actions
that are necessary to get the MSI to install. This creates
smaller MSIs that have no bloat.

from issues.

wixbot avatar wixbot commented on July 19, 2024

I agree with the previous issue loggers that there should be a
way for the sequence of all sequence tables (not just
InstallExecuteSequence) to preserve their relative
sequencing, when passed through a complete
dark/candle/light cycle.

Now that dark is available, I suspect that most people will try
the dark/candle/light cycle using an .msi file created by Visual
Studio. Since Visual Studio doesn't use the 'standard' action
sequence numbers then the technique of decompiling custom
actions to "before"/"after" action names is guaranteed to be
flawed unless the standard actions are also decompiled and
compiled. The result will be that many people will conclude
that dark/candle/light is broken in some way and may
abandon it

Request IDs 984404 and 991833 are examples of this. I've
experienced similar problems and they seem to be caused by
the AppSearch and LaunchConditions actions being setup by
Visual Studio in a reversal of the standard way. This results in
custom actions that are sequenced relative to these actions
also ending up in the wrong sequence.

Suggestion: Retain the existing design concept of not
including the standard actions in the .wxs file and continue to
automatically insert the standard actions via candle/light.
This would continue to optimise the size of the .msi file for
those WiX authors who are only interested in compiling via
candle/light and are not interested in using dark.

However, if standard actions are encountered by dark with
non-standard sequence numbers then output all actions to
the .wxs file and allow those actions to override the standard
sequence numbers when compiling via candle/light. If all of
the standard actions encountered by dark use standard
sequence numbers then there would be no need to output
the standard actions to the .wxs file.

from issues.

wixbot avatar wixbot commented on July 19, 2024

Should be fixed in v2.0.2722.0, dark now has switch to
preserve sequence tables.

from issues.

wixbot avatar wixbot commented on July 19, 2024

The problem with not allowing standard actions to be
exported is that if you decompile an MSI that was generated
using VS.NET, then recompile again (all using Wix), the
installation will fail. An error is always displayed indicating
that that you do not have the correct framework version.
Once I copied all the InstallExecutionSequence rows from the
MSI that VS.NET built to the one the candle.exe built, my
MSI worked. The point is that, dark.exe DOES NOT export
everything that is necessary.

(I previous added a bug relating specifically to the VS.NET
msi decompile/compile issue)

from issues.

wixbot avatar wixbot commented on July 19, 2024

I believe there may be a misunderstanding. The bug is not
necessarily against dark (see my earlier comment), and there
are still major considerations outstanding.

  1. These standard actions are not actually being re-added
    by light. (Unless you just now fixed this.)
  2. Even if light was fixed to readd these actions, the original
    sequencing of those actions are lost from their first 'dark'
    import. Standard actions do not have to be sequenced in
    their suggested locations and this is commonly different for
    some standard actions (e.g. RemoveExistingProducts).

Perhaps #2 can be resolved through a command-line switch
that allows dark to export all standard actions with their
same sequence to the .wxs file.

from issues.

wixbot avatar wixbot commented on July 19, 2024

It's possible some of these are candle's fault for not-
reinserting them.

Still, dark needs some sort of mechanism (perhaps a new
command-line switch) for choosing to export the standard
actions in the order they were in the initial install. Standard
actions have many variations on scheduling and we'd want to
preserve those choices somehow.

from issues.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.