Documentation

Velion Install Studio

Complete guide for creating Windows installer projects, configuring the runtime wizard, packaging files, adding shortcuts and automation, building setup files, and testing uninstall behavior.

Overview

Velion Install Studio is a desktop builder for creating modern Windows installers. The program saves your installer configuration as a .sfproj JSON project, builds a runtime manifest, packs selected files into a payload archive, and prepares a setup executable that installs your app on another Windows computer.

The workflow is intentionally similar to traditional installer tools, but the project is edited visually: you add app metadata, files, folders, wizard pages, themes, shortcuts, dependencies, commands, uninstall behavior, and build settings from the left sidebar.

Velion Install Studio itself is installed as a normal Windows application. Users who install it do not need Python, PySide6, or development tools.

Install Studio

  1. Download VelionInstallStudioSetup.exe.
  2. Run the installer. Administrator rights are recommended for the default Program Files location.
  3. After installation, open the app from the desktop shortcut or Start Menu.
C:\Program Files\VelionSoft\Velion Install Studio

The Studio installation is separate from the installers you create. When you build your own app setup, your app can use a different name, icon, install folder, publisher, and wizard theme.

Recommended Workflow

  1. Create a new project from the Dashboard.
  2. Fill in App Settings first: name, version, publisher, app ID, install directory, icon, and output name.
  3. Add the main executable and required files on the Files page.
  4. Add complete asset/config folders on the Folders page.
  5. Configure desktop and Start Menu shortcuts.
  6. Edit Welcome and Finish text in Wizard Designer.
  7. Choose theme mode, accent color, logo, and window size in Theme Designer.
  8. Add dependencies and commands only after the basic file install works.
  9. Use Build Page > Validate Project.
  10. Build the installer, then test it in a clean folder or virtual machine.
Build in small steps. First confirm that files install correctly, then add shortcuts, commands, dependencies, registry changes, and signing.

Dashboard

Dashboard is the starting point for project-level actions and quick status information.

ActionWhat it does
New ProjectCreates a clean .sfproj project with default wizard, theme, build, and uninstall settings.
Open ProjectLoads an existing .sfproj file from disk.
Save ProjectWrites the current settings back to the current project file.
Save Project AsSaves a copy of the project to a new location.
Open Output FolderOpens the folder where generated setup files are written.

The status area shows the current project name, project path, app name, version, last build status, and counts for files, folders, and wizard steps.

Project Files

Velion Install Studio projects use the .sfproj extension. The file is JSON, which makes it readable, version-control friendly, and easy to inspect when debugging.

my-installer-project.sfproj

Keep the project file close to your application build output when possible. Relative paths are easier to move between machines than absolute paths.

App Settings

App Settings define the identity of the application being installed. These values are written into the runtime manifest and used by the installer wizard, shortcuts, uninstall entry, and output file name.

FieldRecommended value
Application NameThe public name of your app, for example Demo App.
VersionA clear version number such as 1.0.0.
PublisherYour company or developer name.
Application IDA stable identifier such as com.company.product.
Main ExecutableThe EXE that should be launched by shortcuts or after install.
Default Install DirectoryUse tokens, for example {pf}\Publisher\AppName.
Application IconUse a PNG or ICO that represents the installed app.
Installer Output NameThe final setup file name, for example DemoAppSetup.exe.
Requires AdminEnable when installing to Program Files or writing HKLM registry entries.

The Browse button can be used for install directory selection. When the selected path matches a known Windows location, the Studio converts it back to a token so the project remains portable.

Files and Folders

Files Page

Use Files for individual files that must be copied exactly to a destination. The most common first file is your main application executable.

  • Source is the file on your development computer.
  • Destination is where the file should be installed, usually under {app}.
  • Required means the build must stop if the source file is missing.
  • Overwrite allows replacing an existing file during install.
  • Only if newer is used when you want to avoid replacing a newer installed file.
Source: dist\DemoApp.exe Destination: {app}\DemoApp.exe

Folders Page

Use Folders for complete directories such as assets, plugins, templates, language files, or bundled resources. Enable Recursive when all subfolders and files should be included.

Source Folder: dist\assets Destination: {app}\assets Recursive: enabled

Components

Components group files and folders into selectable install parts. A required component is always installed, while an optional component can be chosen by the end user in the runtime installer.

Common component examples are Main Program, Documentation, Example Files, Plugins, Language Packs, or Optional Tools. For a simple installer, one required Main Program component is enough.

Wizard Designer

Wizard Designer controls the text and enabled pages shown by the generated runtime installer.

StepPurpose
WelcomeIntroduces the setup and tells the user what will be installed.
LicenseShows license text and can require agreement before continuing.
ReadmeShows release notes or special installation notes.
Install LocationLets the user accept or change the install folder.
ComponentsShows optional components when configured.
TasksShows choices such as desktop shortcut or run after install.
MarketingOptional promotional page for related products or links.
SummaryConfirms selected path, tasks, and components before install.
ProgressShows installation progress and current action.
FinishShows success/failure state and final options.

Start with Welcome and Finish text. Add License, Marketing, or Components later when the basic installer flow is already tested.

Theme Designer

Theme Designer controls how the generated runtime installer looks. It does not change the application being installed; it changes the setup wizard around it.

  • Mode chooses dark or light installer appearance.
  • Accent Color controls primary buttons and highlights.
  • Logo appears in the runtime installer header or visual area.
  • Background Image can add branded installer background artwork.
  • Font Family should usually stay Segoe UI for Windows apps.
  • Rounded Corners controls the softer modern window style.
  • Window Width/Height controls the installer window size.
Keep the runtime design clean. Installer screens should be readable first, branded second.

Shortcuts

Shortcuts are created during installation when their related task/component is enabled. The most common choices are Desktop and Start Menu.

FieldMeaning
NameText shown under the shortcut icon.
TargetUsually {app}\YourApp.exe.
ArgumentsOptional command-line parameters.
Working DirectoryUsually {app}.
IconEXE or ICO used by the shortcut.
LocationDesktop, Start Menu, Startup, or custom path.
Enabled by taskConnects the shortcut to a checkbox on the Tasks page.

Registry

Registry entries are optional. Use them only when your application actually needs Windows registry data, app path entries, protocol handlers, or uninstall metadata. HKCU entries can normally be written without admin rights. HKLM entries usually require administrator rights.

  • Root: HKCU or HKLM.
  • Key: registry path under the selected root.
  • Name: value name.
  • Type: REG_SZ, REG_DWORD, REG_QWORD, REG_EXPAND_SZ, or REG_MULTI_SZ.
  • Remove on uninstall: deletes this value during uninstall.

Dependencies

Dependencies are external installers that run before or after your app is installed. Typical examples are Visual C++ Redistributable, .NET Runtime, DirectX runtime, drivers, or a custom prerequisite.

OptionHow to use it
Source exe/msiSelect the dependency installer file to include.
ArgumentsUse silent arguments such as /quiet /norestart when supported.
Run modeChoose before_install for prerequisites or after_install for optional helpers.
RequiredStops the install if dependency execution fails.
Ignore errorsAllows install to continue even if the dependency fails.
Run as adminUse for system runtimes, drivers, or machine-wide installs.
Always test dependency arguments manually first. Silent switches differ between installers.

Commands

Commands are custom processes run during installation or uninstall. They are useful for registration, service setup, cache creation, database migration, cleanup, or launching helper tools.

  • Pre-install: runs before files are installed.
  • Post-install: runs after files, shortcuts, and registry actions.
  • Pre-uninstall: runs before installed files are removed.
  • Post-uninstall: runs after removal.
Command: {app}\DemoApp.exe Arguments: --register Working directory: {app} Ignore errors: enabled

Use timeouts for commands that may hang. Avoid destructive commands unless they are clearly scoped to the install folder or app-specific data.

Uninstall

The Uninstall page controls how the generated uninstaller behaves and how the installed app appears in Windows Apps & Features / Control Panel.

  • Enable uninstall creates uninstall metadata and uninstaller support.
  • Create Control Panel entry registers the app in Windows uninstall list.
  • Display name/version/publisher are shown by Windows uninstall UI.
  • Remove app folder removes the install folder after installed files are deleted.
  • Ask before uninstall shows a confirmation screen before removal.

During installation, the runtime writes an uninstall manifest containing installed files, folders, shortcuts, registry entries, and uninstall settings. The uninstaller reads that manifest to remove only what the installer created.

Signing

Signing is prepared for code-signing workflows. In the first release it should be treated as experimental unless your environment has a valid certificate, password, timestamp URL, and signtool path.

Unsigned installers can still work, but Windows SmartScreen may show stronger warnings. For public commercial distribution, use a trusted code-signing certificate.

Build Page

Build Page is where the project becomes an installer. Use it after saving the project and adding all required files.

  1. Validate Project checks app metadata, source files, folders, paths, dependencies, and risky admin settings.
  2. Build Installer creates the manifest, payload archive, runtime files, and setup output.
  3. Clean Build Folder removes temporary build artifacts before a fresh build.
  4. Open Build Folder opens intermediate build output for debugging.
  5. Open Output Folder opens the final installer location.
  6. Build Log shows validation, packaging, runtime, and copy steps.

Build artifacts

  • manifest.json: runtime instructions generated from the .sfproj project.
  • payload.zip: archive containing selected install files and folders.
  • setup.exe: runtime installer executable prepared for the project.

Runtime Installer

The runtime installer is what the final user sees. It loads the generated manifest and payload, shows the wizard pages, resolves path tokens, copies selected files, creates folders, runs dependencies and commands, creates shortcuts, writes uninstall data, and finishes with a success or failure screen.

Runtime progress is reported with percent, current action, and log messages. If an error occurs, the installer shows a clear failure state and writes logs for troubleshooting.

Testing Checklist

  1. Build the installer with a clean output folder.
  2. Run setup on the same machine first and choose a test install path.
  3. Confirm the main EXE exists in the install folder.
  4. Open the desktop and Start Menu shortcuts.
  5. Check that optional tasks behave correctly.
  6. Confirm dependencies and commands complete successfully.
  7. Check Apps & Features / Control Panel uninstall entry.
  8. Run uninstall and confirm installed files and shortcuts are removed.
  9. Test again on a clean Windows machine or VM before public release.

Supported Path Tokens

TokenMeaning
{app}The final selected install directory.
{pf}Program Files.
{pf32}Program Files (x86).
{pf64}64-bit Program Files.
{localappdata}User LocalAppData folder.
{appdata}User Roaming AppData folder.
{programdata}Machine-wide ProgramData folder.
{desktop}User desktop folder.
{startmenu}User Start Menu folder.
{documents}User Documents folder.
{temp}Temporary folder.
{publisher}Publisher value from App Settings.
{appname}Application Name from App Settings.
{version}Version from App Settings.
{pf}\VelionSoft\{appname} {app}\data {localappdata}\{publisher}\{appname}

Troubleshooting

Validation says a source file is missing

Open the Files or Folders page and check the Source path. If the source is required and missing, the build must stop. Rebuild your application first or remove the missing item.

Installer cannot write to Program Files

Enable Requires Admin in App Settings, then rebuild the installer. Program Files is protected by Windows and normally requires elevation.

Shortcut does not start the app

Check Target, Working Directory, and Icon. The target should usually point to the installed EXE under {app}, not to the source file on your development machine.

Dependency fails silently

Test the dependency command in Command Prompt first. Confirm silent switches and whether admin rights are needed. If the dependency is optional, enable Ignore errors.

Uninstall leaves files behind

Files created by the application after installation may not be listed in the uninstall manifest. Use Remove app folder only when it is acceptable to remove the whole install directory.