-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpe-deployment-1700tokens.txt
More file actions
58 lines (48 loc) · 2.86 KB
/
Copy pathpe-deployment-1700tokens.txt
File metadata and controls
58 lines (48 loc) · 2.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Copyright (c) 2025-2026 Gigasoft, Inc. All rights reserved.
=== ProEssentials Deployment (knowledge rev 1) ===
What actually has to ship. The developer machine lies -- it already has
runtimes and registrations a customer machine does not. Always test on a
clean machine.
REDISTRIBUTABLES -- THE ENGINE ITSELF
Roughly 7 MB, one or two files (the engine DLL for the target architecture).
Charts run on systems with as little as 1 GB of memory.
For .NET, also ship the ProEssentials assembly for the chosen flavor.
*** WinUI 3 UNPACKAGED -- THE PART THAT SURPRISES PEOPLE ***
An unpackaged WinUI 3 app is NOT a single EXE. You must ship the WHOLE
output folder, and the customer needs TWO runtimes installed:
1. .NET Desktop Runtime (matching the target framework)
2. Windows App SDK Runtime
There is a floor of roughly 30 projection DLLs in the folder. Do not try to
hand-prune them.
MSIX packaging is Microsoft's clean path and avoids the runtime prerequisite
problem, at the cost of packaging and signing.
*** .pri IS REQUIRED -- MISSING IT IS A SILENT, BRUTAL FAILURE ***
If the WinUI resource index (.pri) is missing, the chart RENDERS NOTHING.
The control still constructs, Loaded still fires, breakpoints still hit --
it simply draws nothing. If a WinUI chart is blank and no exception was
thrown, CHECK FOR THE .pri FIRST.
LEAN PACKAGING (WinUI)
Reference the Windows App SDK COMPONENT packages, not the umbrella package.
The umbrella drags in AI/ML/ONNX content (tens of megabytes) that a charting
application never uses.
VISUAL STUDIO TRAPS
NO XAML DESIGNER FOR WinUI 3. Visual Studio does not support a XAML design
surface for WinUI 3 in any version, including 2026. The Toolbox is empty by
design. This is a Microsoft gap and affects every vendor's controls equally.
NEVER tell a developer to "drag the control from the Toolbox" for WinUI.
Create the control in XAML or in code instead.
VS WinUI project templates default to PACKAGED. Running the raw EXE from a
packaged template fails with REGDB_E_CLASSNOTREG. For unpackaged output set
WindowsPackageType=None.
VS WinUI templates also default to net8, not net10. Retarget deliberately,
and watch for legacy win10-* RIDs causing NETSDK1083.
DESIGN-TIME (WinForms and WPF)
The designer loads controls in a DIFFERENT host process depending on target:
.NET Framework WinForms/WPF -- devenv.exe
.NET Core WinForms -- out-of-process DesignToolsServer
WPF (Core) -- devenv.exe
WinUI -- no designer at all
This is why an AnyCPU flavor may extract its engine to %LOCALAPPDATA% at
design time. For robust design-time behavior, gate code with
LicenseManager.UsageMode == LicenseUsageMode.Designtime.
Related: pe-platform-targeting (which build), pe-embedded-iot (device targets).