Add-in Express for Office issues on multiple monitors with different DPI settings
This is an early alert for developers creating Office add-ins using Add-in Express for Office (.NET and VCL editions) or Add-in Express Regions for VSTO.
Microsoft has published Office 2016 build 8828.2010 through its Office Insider update channel. Without any useless notifications, that build supports multiple monitors with different DPI settings; the support relies on the API changes provided by Windows 10 Creators Update. The user, developer and tester related aspects of these changes are described in High-DPI Scaling Improvements for Desktop Applications in the Windows 10 Creators Update.
The current build of Add-in Express may demonstrate two issues in Excel, Word and PowerPoint of that Office build:
- In multi-monitor multi-DPI environment, an Add-in Express pane may become shown on a wrong monitor, outside of the Office application’s main window.
- The display of the Add-in Express panes doesn’t react to the pane being dragging to a monitor with different DPI.
Again, currently affected are Excel, Word and PowerPoint only. We are investigating these issues. Once I have any news on this, I’ll let you know. Stay tuned.
The issues were reported by our long-time customer, a team of developers led by Slava. Thank you very much, guys!
Update. 17-Jan-2018. We have test assemblies that fix the issue for Word, Excel and PowerPoint. The assemblies can be used only with Add-in Express 8.7.4430. Please contact us, if you need these assemblies.
Update. 8-May-2018. We’ve released Add-in Express 9 that provides support for the issues above. The above-mentioned assemblies are not available any longer.
10 Comments
Hello,
Does the new 8.8 version include this fix?
Thanks!
Hello Alexander,
No. This Office feature isn’t yet completed; almost every Insider build brings some changes.
Hello Andrei, could you please send me the assemblies that fix this issue and the link to download Add-in Express 8.7.4430? Thank you! Kind regards, Pavel
Hello Pavel,
Check your Inbox.
As above. We’re getting customers with the same issue. Am I right in assuming this is not fixed in the April 3rd release? If not, can you send me a link to the dlls as well.
Thanks
Hello Darren,
Check your Inbox. “The issues” is rather vague as Microsoft changes Office on the fly.
Our add-ins seem to be exhibiting a similar problem in the recently updates PowerPoint 2016. All custom panes are not attached to the PowerPoint window and are floating (and NOT moveable) behind all other windows on the primary display.
Unlike what I believe I am reading, this happens even with a single monitor and default DPI settings, not just if you have “multiple monitors with different DPI settings.”
This is a legacy product that we have not compiled a new version in a few years. Is my only option to upgrade to v9 and attempt to update project for newer Visual Studio and plugins and recompile?
Thanks,
kt
Hello Keith,
> this happens even with a single monitor and default DPI settings
To support this feature, Office has changed internally and added external settings. To avoid the issue, you can select the “Optimize for compatibility” option button on the General tab of the dialog window, which you open via File | Options. Choosing this option button modifies the value of the dpiAware element on the {host name}.EXE.MANIFEST file in the Office folder. This is how they allow you to use the previously available functionality.
Hi Andrei,
Wanted to share an fix with you.
I just fixed a bug which was introduced after addition of latest add-in express binaries related to “Addin Express pane shown outside of office application”.
In our application we are launching Excel using COM object and setting Excel.Application = true.
If we set “Excel.Application = true” after workbook open then taskpane does not appear in Office application at all.
If we set “Excel.Application = true” before workbook open call then it works fine.
Thanks,
Amit B
Hello Amit,
Thank you for sharing your findings!
—
Andrei Smolin
Add-in Express Team Leader