Usage of (Registration-Free Activation of) COM Components in Azure Web App
We are facing the issue - " (The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. in app service azure) while running my ASP.Net MVC application hosted in App Service, not in VM . The application uses 'Microsoft.ACE.OLEDB.12.0' provider which has to be installed on App Service before my application runs."
We understand that :
- There is no way to install VM-wide software on AppService – it runs in a sandbox
- Startup tasks are applicable to “cloud services”, not AppService
Just wondering if “Registration-Free Activation of COM Components” would be useful in scenarios like App Services where we are required to invoke 3rd party COM components …
For example, the guidance on MSDN and sample GitHub projects would be worth looking at …
Registration-Free Activation of COM Components: A Walkthrough
Will be great if Azure App Services team can provide some wrapper components to facilitate the above feature in a more supported way in Azure App Services kind of scenarios …
Closing due to lack of community support and traction. It also sounds like this is a request for wrappers to make it easier. But it’s not clear if an attempt was made to do this the way described in the articles linked to. Might be a hard workaround, but maybe still possible.
Jeremy Tilson commented
Would just like to add, we found this issue also when attempting to port an existing solution to an Azure web app that uploads an XLSX file using Microsoft.ACE.OLEDB.12.0 provider.
Interestingly, using Microsoft.Jet.OLEDB.4.0 provider instead does work - and this is our workaround for the time being, but only works with XLS format, and does prevent us allowing upload of Excel 2007 and above files.
I assume that, because JET 4 is included as standard with Windows OS, that this has somehow made it's way into Azure too? As this must be a fairly common requirement, couldn't Microsoft.ACE.OLEDB.12.0 be provided as standard to Azure web apps?