-
Notifications
You must be signed in to change notification settings - Fork 289
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
Unable to properly debug duality when using a netstandard project #668
Comments
Good call 👍 Let's see what comes out of this. I have the feeling that this should work, and that there might be some insider info that could help us understand what's going on here. |
The issue was moved to dotnet/project-system#3690 since its a tooling issue |
Seems this is finally getting fixed in VS16.0 (so 2019) |
Well seems its not fixed in VS16.1. Unclear when it will get fixed but the milestone says its somewhere in 16.x... |
Can confirm it's not fixed in the latest VS 2019. It does seem to work when the executed / launcher project itself is a .NET Core project though - can anyone else confirm this? Assuming I didn't overlook something, it means if there was any way we could move to .NET Core and .NET Standard as part of issue #573, entirely removing the .NET Framework, we would work around this issue. That does increase the scope of #573 even more though, and I'm not even sure .NET Core is anywhere near production ready or "battle tested" for desktop applications. Not sure that would be wise right now, but it's an option that exists. |
Yes moving to dotnetcore will workaround this issue. |
I also believe that starting the app from a netframework project will probably work as well. One possible workaround is to introduce a 'duality' project which is a netframework project and is used to house stuff that does not fit in a plugin but can also be used to start duality. I know this is a more drastic change but might be something to consider since it may have other benefits as well. |
Tested it, and works just fine. Added a simple I'll take care of providing an updated project template when we get back to this issue after #574, so we are no longer blocked here.
Do you have specific things in mind? Right now, the project is empty and everything it contains is insignificant as long as it compiles. Of course there's a lot of crazy stuff we could do, like
Any thoughts? |
No must have's but I do think it can streamline the whole process of developing a game with duality and make it easier to quickly setup a new project or move things around. |
Progress
ToDo
|
Progress
ToDo
|
Will check this branch this weekend 👍 |
Yup this is exactly what I as thinking in its most basic form. Also good call with the There some more things we could do with this project such as moving all build logic to the csproj of the GameDebugger or making it a fully customizable launcher. These could be done in future PR's though and might also need more designing work. |
Merged and triggered a binary release. |
Summary
When you debug your plugin in VS it actually starts the Launcher.exe since the library itself is not runnable. This works fine for net portable projects but when doing this in a netstandard project things go wrong. Your game will run fine but you are unable to stop execution or step through your code.
While this 'bug' is not strictly related to duality as I can reproduce this easily outside of duality it does affect duality. This issue is mostly for aggregating info together in the hope to find a suitable workaround or fix.
Made a issue about this on the netstandard repo here
How to reproduce
ClassLibrary1
. This will actually start the exe generated byNetStandardDebugTest
. Note that it will run properly.Workaround
Attachments
The text was updated successfully, but these errors were encountered: