Metamation Developer Notes

  • Developer Notes
  • Resource Map
  • Tools
    • Code Formatting
    • Configuring Git
    • Assignments
    • Testing with Windows Sandbox
    • Single Binary Applications
    • Self-Updating Applications
  • Flux Workflow
    • Flux Workflow
    • Flux Development Style Guide
    • Release notes for Flux
    • SonarCloud analysis for Flux
    • Build a Flux SDK Program
    • Shipping Flux
    • Flux.Test
      • BasicBendAuto Test
      • LaserAuto.cs Detailed Documentation
      • Laserexample:Test1
  • Technical Notes
    • File formats
      • .FX File Format
      • Au(Gold) streams
      • .GEO File Format
      • .LST File Format
      • .LST file - technology
      • .BNC File Format
      • .WAD Files: Flux Resource Packages
      • .Curl Files: ASCII config information
    • Folders App
      • Data\Bendtools
      • Data\Machines
    • FluxCode
      • Welcome & Repo Map
      • Architecture & System Context
      • Subsystem *Bend* (Press Brake)
      • Subsystem *BCell* (Bend Cell Automation)
      • API Maps
      • Data Model Catalog
      • Design Patterns -- A Reader's Guide
      • Tests and Golden Paths
      • Guided Code Tours
      • CAM Glossary with Code Mapping
      • Assignments
      • Flux Onboarding Handbook
    • Data flow
      • Part
        • Part.Dwg
        • Part.Load
        • Part.Load to Part.Dwg
      • BendTech.cs
      • Bend Technology
      • Laser Cutting Technology
    • LTS (Long term support mechanism)
    • Machine ID Scheme
  • FluxTester
    • Commands and Scripts
    • Command Cookbook
    • Script Commands
    • BendTooling.cs Test Inventory
    • LaserTooling.cs Test Steps
    • Fluxtester Recipe Book
    • Nesting.cs Overview
    • Nesting.cs Recipe Book
    • Job.cs Overview
    • Job.cs Recipe Book
  • Software license
  • 3d party software
    • Python
  • Documentation
    • Bento documentation
      • Structure of a Bento page
      • Attributes
    • Software
      • Software Requirement
      • Installation
      • Git workflow for documentation contributors
    • Quick start guide
    • Workflow
      • Roles and responsibilities
      • Analyze
      • Edit
      • Proofread
      • Pre-Publish
      • Publish
      • Release cycle
      • Information required for Documentation Team
      • Checklist for Documenters
    • Styleguide
    • Flavoring
    • Translation
      • Ordering translation for a new document
    • Citations
    • Annotation
Tools
/
Single Binary Applications

Single Binary Applications

Typically a .Net Core application is compiled into multiple files like <App>.exe, <App>.dll, <App>.runtimeconfig.json, <App>.deps.json. All of these must be copied together when deploying the application to another computer. Additional dependencies add proportionally to the deployment complexity. This complexity is justified for applications with multiple executables using shared libraries and resources. Commonly, installer applications are used to bundle all the files together and simplify the deployment in such scenarios. However it is an overkill for a simple, single-purpose tool or library.

Dotnet publish can be used to bundle all application files and dependencies into a single file simplifying the deployment. Rest of this article describes creating a VisualStudio publish profile to produce a single file binary (executable or a library).

Steps

  1. Open the Solution Explorer, Right-Mouse-Click and select the Publish menu option.

    singlefile publish1
  2. Press New Profile button. It should start the publish wizard. Select Folder option from the list and press Next.

    singlefile publish2
  3. Select the Folder target option and press Next.

    singlefile publish3
  4. Key-in the publish path and press Finish to close the wizard.

    singlefile publish4
  5. Click on Show all settings link to edit Profile settings. Change the Target runtime from Portable to win-x64. Now check Produce single file option under the File publish options and press OK to save the settings.

    singlefile publish5
  6. Click the Publish button placed at the top-right corner to compile and publish. Use the open folder link to open and locate the published binary.

    singlefile publish6

Contents

  • Steps
Testing with Windows Sandbox Self-Updating Applications

      Copyright © 2025 TRUMPF Metamation. All rights reserved.

    Compiled by Bento