Table of Contents

Class LaunchArguments

Namespace
Archiver.Core.Services
Assembly
Archiver.Core.dll

The launch-argument string Archiver.Shell passes to Archiver.App through IApplicationActivationManager::ActivateApplication — the single owner of both sides of the format, so the producer and the consumer cannot drift apart. Replaced the pakko:// URI scheme (T-F232): a registered scheme could be launched by any web page or document link, while an activation argument can only come from a process already running on the machine. Shape: --browse|--extract|--archive <base64 of a UTF-8 JSON string array> — base64 keeps paths with spaces, quotes or a trailing backslash out of command-line quoting rules.

public static class LaunchArguments
Inheritance
LaunchArguments
Inherited Members

Fields

MaxLength

Longest argument string Archiver.Shell may pass. Measured 2026-09-26: 32000 characters activate normally, while a string past the 32767-character command-line limit makes ActivateApplication block forever instead of failing.

public const int MaxLength = 32000

Field Value

int

Methods

Format(LaunchOperation, IReadOnlyList<string>)

Builds the argument string for operation on files.

public static string Format(LaunchOperation operation, IReadOnlyList<string> files)

Parameters

operation LaunchOperation
files IReadOnlyList<string>

Returns

string

Exceptions

ArgumentException

files is empty.

TryParse(string?, out LaunchOperation, out IReadOnlyList<string>)

Parses an argument string produced by Format(LaunchOperation, IReadOnlyList<string>). Never throws: anything else — an empty string (a plain Start-menu launch), an unknown switch, a malformed payload, or a string longer than MaxLength — returns false with an empty files. Null or blank entries are dropped; a payload left with none returns false.

public static bool TryParse(string? arguments, out LaunchOperation operation, out IReadOnlyList<string> files)

Parameters

arguments string
operation LaunchOperation
files IReadOnlyList<string>

Returns

bool