-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Add support for Arm64EC platform for COM based addins #96342
Comments
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsThe Microsoft Office on Windows 11 Arm is running in the Arm64EC mode. We have COM addins written in .NET and they can be compiled for the x86 and x64 platform to run natively on respective Microsoft Office builds. We are unable to target the Arm version of Microsoft Office because it is compiled in Arm64EC and the .NET arm64 platform is not compatible with it. https://learn.microsoft.com/en-us/windows/arm/arm64ec#interoperability Altough a COM addin built for x64 platform will load in Office Arm64EC, the performace is terrible and the product is terrible to use unless it is running as native Arm code.
|
For reference, here are links to previous discussions about ARM64EC support: |
Building a simple .NET Core based add-in for Microsoft Office on Windows 11 ARM64 requires the project to target the <Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8</TargetFramework>
<EnableComHosting>true</EnableComHosting>
<PlatformTarget>x64</PlatformTarget>
</PropertyGroup>
</Project> Building the project will use the Office applications in Native ARM add-inIt is not possible use the
|
This would require building the |
When I think about it again, it may not make sense to have MS Office add-in in .NET built for ARM64EC as the host application can work with x64 libraries. I don't have enough knowledge if ARM64EC based .NET runtime would increase the performance compared to x64 addins. May be we need to wait for native ARM64 Office. |
Arm64EC is x64 with perf optimizations for x64 emulation on Arm64.. The host is very small amount of code and there is very little time spent in it. Optimizing the emulation of the host by compiling it for Arm64EC would not move the needle. It would have to be a complete runtime port to Arm64EC ABI. Multi-year project that we have said that we are not interested in pursuing. |
Oh right... I keep forgetting that it isn't just the entry point, but the whole stack that needs Arm64EC.
That is what I would assume at this point. |
How Microsoft thinks we will make apps for ARM platform when you will not support it? |
@jozefizso We do support ARM64, but not ARM64EC - which is a optimization that some applications take advantage of to avoid retargeting code. ARM64 itself is fully supported. |
Specifically for Office, VSTO is very limited with respect to .NET 5+. See the Note in the following VSTO link. |
The Microsoft Office on Windows 11 Arm is running in the Arm64EC mode.
We have COM addins written in .NET and they can be compiled for the x86 and x64 platform to run natively on respective Microsoft Office builds.
We are unable to target the Arm version of Microsoft Office because it is compiled in Arm64EC and the .NET arm64 platform is not compatible with it.
https://learn.microsoft.com/en-us/windows/arm/arm64ec#interoperability
Altough a COM addin built for x64 platform will load in Office Arm64EC, the performace is terrible and the product is terrible to use unless it is running as native Arm code.
The text was updated successfully, but these errors were encountered: