diff --git a/src/VRio.App/MainForm.cs b/src/VRio.App/MainForm.cs
index 9da31a0..8f2b967 100644
--- a/src/VRio.App/MainForm.cs
+++ b/src/VRio.App/MainForm.cs
@@ -125,6 +125,8 @@ internal sealed class MainForm : Form
{
// ProductVersion carries the git stamp (see StampGitVersion in the csproj).
Text = $"vRIO v{Application.ProductVersion} — Virtual RIO cockpit device";
+ // Title-bar/taskbar icon from the exe's embedded ApplicationIcon (vwe.ico).
+ Icon = Icon.ExtractAssociatedIcon(Application.ExecutablePath);
// Fit the window to its content: the cockpit canvas plus the 330px
// control strip, with just enough height for the strip's log area.
ClientSize = new Size(_canvas.Width + 332, Math.Max(_canvas.Height, 640));
diff --git a/src/VRio.App/VRio.App.csproj b/src/VRio.App/VRio.App.csproj
index d2e9355..e9c0da0 100644
--- a/src/VRio.App/VRio.App.csproj
+++ b/src/VRio.App/VRio.App.csproj
@@ -8,6 +8,7 @@
enable
latest
app.manifest
+ vwe.ico
vRIO — Virtual RIO device
diff --git a/src/VRio.App/vwe.ico b/src/VRio.App/vwe.ico
new file mode 100644
index 0000000..f58deec
Binary files /dev/null and b/src/VRio.App/vwe.ico differ