Skip to content

RFBCodeWorks/ClickOnceApplicationDeployment

Repository files navigation

ClickOnceApplicationDeployment

DLL designed to ease transition of ClickOnce applications from .NetFramwork to .Net by providing a unified library to both .NetFramework and .Net5 projects that utilize ClickOnce. Provider has been designed to mimick System.Deployment.ApplicationDeployment class. Depending on the target framework, different methods will be used by the dll to provide the core ClickOnce functionality. Targets: Net472, Net48, .NetCoreApp3.1, and .Net5-windows

.NetFramework utilizes system.deployment.dll
.Net compatibility provided by:
- https://github.com/derskythe/WpfSettings
- https://gitlab.com/Syroot/KnownFolders/
- Both of the above assemblies had their relevant code extracted and compiled into this dll in order to avoid versioning conflicts.

Available as a NuGet package here: https://www.nuget.org/packages/ClickOnceApplicationDeploymentWrapper/

Usage

NameSpace: RFBApplicationDeployment

RFBApplicationDeployment.ClickOnceApplicationDeployment.EntryApplication

  • This static object will act as your main interaction point.
  • If needed, other objects can be constructed that have different publish paths.
  • To set the publish path (where the app will get its updates from) in .Net applications, use then SetupEntryApplication(string) method.
    • This will Recreate the static object using the new string as the update path.

The underlying providers are still accessible if needed, but the ClickOnceApplicationDeployment object wraps their methods and properties in a way to make the code-base simpler, eliminating #if {TARGET} statements from the caller's code.

This also adds in the ability to use cancellation tokens with the System.Deployment.Dll methods.

About

ClickOnce wrapper to provide compatibility from .NetFramework to .Net5

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages