Skip to content

Build: drop retired ManagedVwWindow.dll from RegFree managed COM list#989

Closed
johnml1135 wants to merge 1 commit into
mainfrom
fix/regfree-remove-retired-managedvwwindow
Closed

Build: drop retired ManagedVwWindow.dll from RegFree managed COM list#989
johnml1135 wants to merge 1 commit into
mainfrom
fix/regfree-remove-retired-managedvwwindow

Conversation

@johnml1135

@johnml1135 johnml1135 commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Summary

ManagedVwWindow.dll was retired with the Linux-era view shims (#906). That cleanup updated Build/mkall.targets (excludes its CLSID) and Build/Installer.legacy.targets (lists it as removed-since-last-base), but missed Build/RegFree.targets, which still listed the DLL in ManagedComAssemblies.

Because the file no longer exists, the RegFree task emits a warning for every EXE that imports the target:

Build\RegFree.targets(91,3): warning : Failed to process managed assembly
  ...\Output\Debug\ManagedVwWindow.dll: Could not find file
  '...\Output\Debug\ManagedVwWindow.dll'.
  [Src\UnicodeCharEditor\UnicodeCharEditor.csproj]
  [Src\LCMBrowser\LCMBrowser.csproj]

Change

Remove the stale <ManagedComAssemblies Include="$(OutDir)ManagedVwWindow.dll" /> entry (replaced with an explanatory comment). The remaining managed COM assemblies (FwUtils.dll, SimpleRootSite.dll) are real and unaffected.

Impact

  • Clears the warning from both UnicodeCharEditor and LCMBrowser builds (one root cause, surfaced once per EXE).
  • No behavior change: the DLL doesn't exist, so it was never actually being processed — only warned about.

🤖 Generated with Claude Code


This change is Reviewable

ManagedVwWindow.dll was retired with the Linux-era view shims (#906),
which updated mkall.targets and Installer.legacy.targets but missed
Build/RegFree.targets. It still listed the DLL as a managed COM
assembly, so the RegFree task warned "Could not find file
...\Output\Debug\ManagedVwWindow.dll" for every EXE importing the
target (UnicodeCharEditor, LCMBrowser).

Remove the stale entry; the remaining managed COM assemblies
(FwUtils.dll, SimpleRootSite.dll) are unaffected.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown

NUnit Tests

    1 files  ±0      1 suites  ±0   10m 14s ⏱️ -28s
4 299 tests ±0  4 226 ✅ ±0  73 💤 ±0  0 ❌ ±0 
4 308 runs  ±0  4 235 ✅ ±0  73 💤 ±0  0 ❌ ±0 

Results for commit 447e31d. ± Comparison against base commit 906e569.

@johnml1135

Copy link
Copy Markdown
Contributor Author

Code review (verified against the code at the PR head)

MEDIUM — the fallback-list removal doesn't reach FieldWorks.exe, so the warning this PR targets keeps firing for the main product

Build/RegFree.targets:68 (the <ManagedComAssemblies Include="$(OutDir)ManagedVwWindow.dll" /> line) sits in an ItemGroup gated by Condition="'@(ManagedComAssemblies)' == ''" — it's only a fallback used when nothing has pre-populated ManagedComAssemblies. For FieldWorks.exe specifically, Src/Common/FieldWorks/BuildInclude.targets:10 pre-populates that list explicitly and still includes <ManagedComAssemblies Include="$(OutDir)ManagedVwWindow.dll" />, so the fallback in RegFree.targets never applies to the main executable's build — it will keep emitting Could not find file ...ManagedVwWindow.dll for FieldWorks.exe after this PR merges. The change is real and useful for the other projects that do hit the fallback (LCMBrowser, GenerateHCConfig, UnicodeCharEditor, ComManifestTestHost), just incomplete for the main product. Suggest also removing the BuildInclude.targets:10 entry (and checking Build/mkall.targets:46 for a related stale CLSID-exclusion comment).

Note — overlaps with #978

#978 removes this exact same RegFree.targets line outright (no replacement comment); this PR replaces it with an explanatory comment instead. Whichever merges first will make the other a no-op/conflict on this one line — worth deciding which PR carries this change and dropping it from the other.

Reviewed with Claude Code; findings verified against the code at the PR head. No code changed.

@johnml1135

Copy link
Copy Markdown
Contributor Author

Close as a duplicate of #978

@johnml1135 johnml1135 closed this Jul 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant