mansellan / clickonce

ClickOnce packager
Other
26 stars 7 forks source link

Allow prerequisites #17

Closed mansellan closed 4 years ago

mansellan commented 4 years ago

ClickOnce application manifest allow Prerequisite assemblies (DependencyType=prerequisite). Such assemblies are required to be present in the user's GAC before the ClickOnce deployment is permitted. Ordinarily, this is limited to a (mandatory) entry for the CLR (either v2 or v4).

In Visual Studio, the Pre-requisites button allows the user to create a Setup.exe, which installs selected prequisites and then invokes the ClickOnce deployment manifest. The Setup.exe is not part of ClickOnce, it's provided as a convenience to Visual Studio developers. It also does not affect the ClickOnce dependency collection, rather, it pre-empts it.

Not proposing to replicate creation of a Setup.exe, that would be extremely complex (the source is proprietary). Rather, to consider allowing prerequisites to be declared in the application manifest, as per the original ClickOnce schema intention. This would act as a backstop to prevent dependancy failures.

Users could then create a Setup.exe from Visual studio, and include it in the globbing patterns for files to replicate VS behaviour.