NetOfficeFw / NetOffice

🌌 Create add-ins and automation code for Microsoft Office applications.
MIT License
700 stars 145 forks source link

✨ Support for .NET 6 and 8 #343

Open jozefizso opened 2 years ago

jozefizso commented 2 years ago

Feature is developed on branch https://github.com/NetOfficeFw/NetOffice/tree/dev/net6

jozefizso commented 2 years ago

Release 1.9.0 will deprecated some projects, see #342

edoust commented 2 years ago

Any news on when the .NET 6 compatible version will be released?

mixonij commented 2 years ago

Any news on when the .NET 6 compatible version will be released?

Also waiting this =)

jozefizso commented 2 years ago

Any news on when the .NET 6 compatible version will be released?

When the code will be ready.

samatstariongroup commented 2 years ago

@jozefizso is there anything we can do to help

jozefizso commented 2 years ago

@samatrhea here some overview what I was working on lately:

Next work includes:

tb-mtg commented 1 year ago

Any news on this?

samatstariongroup commented 1 year ago

@jozefizso we would love to contribute to this, but i think we need some guidance on what to do which is a bit more detailed than the tasks listed above. Would you be able to spend 15 to 30 minutes with us to get us started? We can setup a teams meeting for this.

jozefizso commented 1 year ago

Hi @samatrhea, it would be helpful to test the code from https://github.com/NetOfficeFw/NetOffice/tree/dev/net6 if it works for your product.

Unfortunately I can test it only on small samples and I don't have a real project running on .NET 6. One of the issues to solve would be Addins and the new hosting model in .NET 6.

Do you have Calendly so we can arrange a time for meeting?

samatstariongroup commented 1 year ago

https://calendly.com/sgerene/netoffice

robertmuehsig commented 1 year ago

Hi @jozefizso - we have a larger application that is using NetOffice. Are there any test/beta/preview NuGet packages available?

jozefizso commented 1 year ago

Hi @robertmuehsig, I haven't setup publishing of preview packages yet. You can try the https://github.com/NetOfficeFw/NetOffice/tree/dev/net6 branch, it is updated for .NET 4.6.2 and .NET 6 (Windows).

There is still work to do around changes in the Assembly APIs and it needs a code review.

jskeet commented 1 year ago

Just as an FYI, I've been using NetOfficeFw.PowerPoint for a while with .NET 6.0 and had no problems that I couldn't ascribe to PowerPoint in general. (I only found this issue as VS is nagging me with NU1701 having updated to version 1.9.3, despite having NoWarn="NU1701"...)

Will look forward to more "official" support :)

jozefizso commented 1 year ago

Hi @jskeet, what are your use cases? Are you automating PowerPoint or running addins in the PowerPoint?

So are you using the current packages built for .NET Framework and with .NET 6 runtime?

jskeet commented 1 year ago

@jozefizso: I'm only showing PowerPoint presentations. (Basically "show the window", "get previews as images" and "move between slides" are my only operations.) It's entirely possible that I'm just lucky that it works, and that add-ins would fail.

mgoldsworth commented 1 year ago

Hi - I'm guessing I won't be able to get in on that meeting, but I'm interested in doing some testing around this.

We have some existing VBA plugins we're working on porting to something like ExcelDNA, but would like portability as our clients in the ICS and SCADA space have OS and Excel versions spanning a pretty large area and we'd like to be able to support as many of them as possible for each Add-In.

ExcelDNA is currently at a point where default installation instructions and guidance are using .NET 6.0, and it would be really great to be able to get even test builds right now that we can test while remaking our Excel Add-Ins.

I'm admittedly fresh to this particular space, but we're very motivated to spend time here making this happen and provide feedback and validation as we work on these projects.

I've cloned the latest dev/net6 repo to try building and installing locally with a new project, but wasn't sure if there were already accessible builds available anywhere I can test with.

Either way, would be great to be involved and contribute as much as possible while we move forward.

Thanks, Mickey

mgoldsworth commented 1 year ago

Mmm ... I was able to add all paths for exes in build.cmd and build successfully, but I'm not seeing any nupkg outputs, wondering if there is any guidance on correctly building the source to consume as a local package. It doesn't seem like an issue with signing, but it's the only thing I saw from build output that seem to have failed:

SignTool Error: No certificates were found that met all the given criteria.

I haven't worked with building/installing nuget packages locally much before, probably just something new I need to figure out, but if you have any guidance that would be great.

Thanks, Mickey

jozefizso commented 1 year ago

Hi @mgoldsworth, test assemblies compiled for .NET 6 are available here: https://github.com/NetOfficeFw/NetOffice/actions?query=branch%3Adev%2Fnet6

For development and local testing you can just build the project in Visual Studio.

bluebat-swiss commented 1 year ago

Hi I think if you could publish a pre-release nuget of the dev/net6 branch, this would be very helpful and appreciated surely by all developers. Getting code and recompile it is mostly a big barrier whereas getting a pre-release nuget is not. We would immediately start testing it in our app and give feedback. Thanks jaz

jozefizso commented 1 year ago

@bluebat-swiss do you use NetOffice to automate Office apps or to develop add-ins?

bluebat-swiss commented 1 year ago

@jozefizso we use it currently for shared addins in word, excel, powerpoint and outlook

robertmuehsig commented 1 year ago

@jozefizso A pre-release nuget package would be easy to test for us as well. We use NetOffice for Office addins in Word/PowerPoint/Excel/Outlook.

jozefizso commented 1 year ago

This .NET 6 will work for automating Office apps.

I tested hosting addins in .NET 6 and there is a lot more work to be done. The current code on https://github.com/NetOfficeFw/NetOffice/tree/dev/net6 branch does not work for addins yet.

kev-is-coding-for-adn commented 1 year ago

Hi, Very interesting in testing pre-release nuget package also. We're using NetOffice product only for automation on our side. Thanks for your work.

selvaesakkirajan commented 10 months ago

Hi @jskeet @jozefizso , Does 1.9.4 supports .Net 6.0 framework?

jozefizso commented 10 months ago

Hi @jskeet @jozefizso ,

Does 1.9.4 supports .Net 6.0 framework?

In general it doesn't support.NET 6.

ashishpCACTUS commented 8 months ago

@jozefizso - Can you provide build files that support .Net for now? The last shared ones are expired. Also just wanted to check if there is any timeline for the full release as well as you had mentioned that it may not be available for add-ins usage so any timeline for the same.

jozefizso commented 8 months ago

Hi @ashishpCACTUS, the code is in the branch mentioned above.

There is no timeline for releasing the .NET Core build.

jozefizso commented 5 months ago

You can start testing the NetOffice libraries targeting .NET Framework 4.6.2, .NET 6 and .NET 8 in the release 2.0.0-preview20:

https://www.nuget.org/packages/NetOfficeFw.Core/2.0.0-preview20

This release supports Office automation scenarios and also Office COM Add-ins. For the add-ins running on .NET 6 and 8 you must adopt the new tools for registering native comhost libraries.

A sample Word add-in for .NET 6 is at https://github.com/NetOfficeFw/NetOffice/tree/dev/dotnet/Examples/Word/WordAddinCore

asahicantu commented 4 months ago

Thank you for the support on this initiative. So fat I am trying to make it work with my legacy .NET Framework addins, but i cannot make it load a custom windowsForm UserControl into a CustomTaskPane, Whenever it is being called by the invoker (even if it gets successfully created) an error is generated by the COM Invoker, unfortunately I am not able to see the exception far from "Cannot create indicated ActiveX Control" Any idea, someone else has had a similar problem?

image

DoctorMarvin21 commented 4 months ago

There was an discussion and people were managed to resolve all issues win .NET 5: https://github.com/dotnet/winforms/issues/4370

Maybe it's a good idea to contact them, at least @arknu.

DoctorMarvin21 commented 4 months ago

UPD: I updated this project to use .NET 6 and everything worked in Excel and Outlook. It's could be used as a great example. I'm still not sure what exactly I missed in my project though.