question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Deploying a non self-contained app that requires both x64 and x86 runtimes

See original GitHub issue
  • .NET Core Version: (e.g. 3.0 Preview1, or daily build number, use dotnet --info) 3.0 Preview 8

  • Have you experienced this same bug with .NET Framework?: Yes/No No

Problem description: I’ve ported my application (https://github.com/mscrivo/ootd) to .net core 3 and have run into an interesting problem with the deployment scenario. According to what I’ve seen, the only supported deployment mechanisms for .net core 3 wpf/winforms apps are;

  1. WSIX packaging
  2. self-contained publish

Neither of these work for my app though, because it has to choose at runtime which platform to it needs to run. Essentially, the app places instances of the Outlook View Control on your desktop. So if you are running on Windows 64-bit, but are running 32-bit Outlook, the 32-bit version of my app needs to run in order for it to load the 32-bit COM component. So what I did in the .net framework world was have a launcher detect which version of Outlook you have installed and run the x64/x86 version of the app appropriately. Worked beautifully.

Now, with .net core 3.0, it seems I have to choose one or the other, I can’t publish a package which contains both x64/x86 runtimes, which means I can’t make my app work all scenarios:

windows x86 + office x86 windows x64 + office x86 windows x64 + office x64

The only way for me to make it work is to install both x64/x86 .net core SDKs on the users’ system, which is highly impractical.

Are there any plans to support a scenario like this? Is there some workaround I can use to make this work?

The easiest solution from my point of view, would be to include the WinForms/WPF runtime components in the .net core x64/x86 runtime installers. Then I can just install both of those on the users’ system and it would work.

Thanks!

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:3
  • Comments:7 (4 by maintainers)

github_iconTop GitHub Comments

3reactions
dagoodcommented, Aug 16, 2019

Funny, I just commented on https://github.com/dotnet/core-setup/issues/7530#issuecomment-522103307 about this. It hasn’t been ported to release/3.0 yet due to that discussion. I’m skipping a decision on the branding to get something released for Preview 9. The tracking issue is https://github.com/dotnet/core-setup/issues/6384.

2reactions
nguerreracommented, Aug 16, 2019

Seems like this can be closed against https://github.com/dotnet/core-setup/issues/6384, then.

Read more comments on GitHub >

github_iconTop Results From Across the Web

NET application publishing overview
Publishing an app as self-contained includes the .NET runtime with the app, and users of the app don't have to worry about installing...
Read more >
Deploy .NET Core apps with Visual Studio
Deploying a framework-dependent deployment with no third-party dependencies simply involves building, testing, and publishing the app.
Read more >
Deploy Self-Contained .NET Apps Without Packaging the ...
Hi everyone! I just released version 2 of .NET Runtime Bootstrapper, which is packed with improvements. Check out the changelog here: ...
Read more >
"win-x86" or "win-x64" target runtime for Any CPU?
When publishing the app, a target architecture needs to be specified, because the compiler will create an architecture specific stub loader ...
Read more >
.NET Core Self-Contained and Framework-Dependent ...
In this post, I explain the difference between framework-dependent deployments and self-contained deployments, review the pros and cons of each, ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found