-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug] Error for missing .NET frameworks on ARM64 #1075
Comments
For reference, this is the version of Screen To Gif I attempted to get working:
|
What appears to be happening is that the ARM64 MSI installs the x64 .NET for you rather than ARM64. When you then try to launch the installed ARM64 app, there's no ARM64 .NET and you get the error dialog shown. If the user is installing the ARM64 version of the app, the installer should fetch the ARM64 .NET instead of x64. Note that a similar issue happens if you use the x86 MSI installer, as it also installs the x64 .NET for you rather than x86. |
For x86, the installer was not downloading the correct package. |
Can you run |
@NickeManarin sadly, I just have the one ARM64 device and I had to reimage it. Once that's done, I'll work on a solid repro and share the data with you. |
This is what you see if you run the ARM64 installer on Windows 11: internally it is detecting the architecture as x64. (If you run it on Windows 10, it detects the architecture as x86.) I don't see the source code of the installer, but the WixSharp UI is running as an x86 process. That means if it calls GetNativeSystemInfo, the architecture it gets back will be x86 (if Windows 10) or x64 (if Windows 11) for compatibility reasons. To get the true host architecture, it can call IsWow64Process2 instead. |
Ohh, thank you for the details! |
Your x86 EXE on Windows 11 on ARM64 returns:
You can see that IsWow64Process2 will give you the true host architecture. |
@denelon Are you able to run the latest version? |
I'll see if I can reproduce this. |
It said it installed, but it doesn't launch. |
@marswe do you have any ideas here? |
I see the same problem. If you use the portable ARM64 version and attempt to launch it, you'll get a screentogif process but no window. In the logs you'll see:
It appears to be failing to load the d3dcompiler_47.dll from its own temp directory, but I couldn't tell you why. Let me see if I can get some eyeballs on this internally. |
Someone else pointed that it could be related to this: dotnet/wpf#5747 |
Strange that when trying to find what was going on, running some tests, checking each assembly with |
Runs ok with .NET 7. |
Describe the bug
I installed Screen To Gif using the Windows Package Manager on an ARM64 device (Surface Pro X). After the install I was prompted about missing .NET. I installed the ARM64 version of the Framework and still received the same error.
To Reproduce
Steps to reproduce the behavior:
winget install screentogif -s winget
orwinget install screentogif -s msstore
Expected behavior
I expected the Screen To Gif to launch.
Screenshots
Desktop (please complete the following information):
Additional context
I also attempted to install the x64 version of .NET to resolve the issue, and that still resulted in the same error being displayed.
The text was updated successfully, but these errors were encountered: