Related
This is the current debugger I'm using in vscode. How can I change this to the unity debugger that I downloaded? Thanks.
Very oddly (as per usual Unity tech...) The official debugger is not being maintained and has been flagged by VSCode as 'Deprecated' (see: https://github.com/Unity-Technologies/vscode-unity-debug/issues/206)
First off, since you did what I did and tried another debugger (as per your screenshot) you'll need to delete the Launch.json that created (it's in the root of your Project in the .vscode folder)
Now search for Unity Debugger in VSCode's Extensions. The official one is greyed out and shows as crossed out. I first tried that one but it didn't seem to work. 'Unity' wasn't shown in the list of available debuggers. (even after a VSCode restart). You could try it if you want, you might have better luck.
Instead, I then used an unofficial one by 'deitry' which shows as 'in Preview' (https://marketplace.visualstudio.com/items?itemName=deitry.unity-debug)
That worked great for me. When you then go into the Debug tab, 'Unity Editor' now shows as an option. Debugging (breakpoints, stacktrace etc.) all seems to work
I use Visual Studio 2017 (15.6.6). When debugging, I try to evaluate simple expressions like int a = 2; in the immediate window. An error
Internal error in the C# compiler
is thrown.
I tried to enable Use Managed Compatibility Mode as hinted at in this question but it didn't help.
Thanks for any help.
Searching further I found this issue on GitHub where an answer recommends to also check Use the legacy C# and VB expression evaluators. Visual Studio gives me a warning about checking this option, but turning this on I can evaluate expressions in the immediate window again.
It is even possible to turn off the Use Managed Compatibility Mode again.
Update: Notice though that using the legacy expression evaluators prevents me from inspecting local variables at debug time, so I wouldn't call it a solution.
In my case, the problem was occurring in a particular assembly. When we looked at the assembly information, (from the Solution Explorer, right click on project, select Properties, then click on Assemble Information), it was all blank.
So we gave it a Guid, then re-built and it worked.
I had the same issue. Don't know if it's your option but for me it was the next issue: instead of "Debug" version the "Release" was turned on. So as soon as I switched back to debug I got rid of this error.
I've got the same error when deal with own NuGet package.
In my case VS resolve a path to the copy of my assembly in "%userprofile%.nuget" folder instead of build output folder.
Currently, I don't known how to prevent this miss-resolving for new project types, where no hint is specified for references, but there's simple workaround: just remove unpacked copy of package from %userprofile%\.nuget\packages\%yourpackage% before debug.
It is happening in Visual Studio 2022 17.3.2 too and it can be found "Closed, not enough info" on feedback hub. As always, incompetent outsourced india strikes again.
Anyway stopping debugging and rebuilding solution works. It have something to do with completely f****d and useless Hot Reload.
Clearing the directory C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files solved the issue for me. I'll try to build a repo if the issue appears again...
I have a c# Azure project that is just a web api, and wanted to remove some of the non-API default components (welcome page, help, etc). After doing so, when launching the application, I get an error message "Object reference not set to an instance of an object." I've seen this before when doing things in Azure, and somehow got around them each time. My question really is: how can I debug this error on my own? This error description is woefully lacking in detail (there's no call stack or anything, as if the app hasn't yet launched, and the dialog is modal so I can't click on anything within VS)
Extra notes:
it's an ASP .NET project.
it works once I publish to Azure.
after copying the project entirely and rebuilding, it seemed to work. then when mucking with NuGet dependencies, we're back to it not working (i've tried deleting my packages folder and having NuGet recreate - no luck; no idea if related to NuGet at all)
I re-copied the project, so just 'MySolutionFolder' -> 'MySolutionFolder - Copy', reopened with same version of VS, runs fine. This is an amazingly sloppy solution obviously, so looking for something better.
As described in a comment, the issue presumably dealt with access rights to various files, most likely NuGet related but possibly Azure as well, which explains why copying to a new solution directory 'fixed' the issue. I would love to see better error info, such as "Error: Visual Studio couldn't write to 'packages.config'", so I know actually where to fix this sort of issue. As it stands now, it's like a compilation error that says "Syntax error in code. Somewhere. Good luck finding it".
Unfortunately, I never did discover a way to debug issues of this sort in a more general way. I eventually worked around the problem, and then saw it pop up again; following advice someone else tried on another forum, I deleted my packages folder, and had NuGet recreate it, which for whatever reason corrected the issue.
Another time, a solution from this question worked (remove and re-add all roles); sometimes this seemed to require an Azure SDK reinstall and computer restart as well.
EDIT
Finally, the best solution I could find was here: delete SUO files and restart VS.
Hopefully this solution will help someone with a similar problem in the future!
tick Debug > Exceptions > Common Language Runtime Exceptions > System > NullReferenceException and run your app
You can enable Intellitrace and remote debug your azure services:
http://blogs.msdn.com/b/webdev/archive/2013/11/05/remote-debugging-a-window-azure-web-site-with-visual-studio-2013.aspx
I've seen similar symptoms when something goes wrong very early in the asp.net app start-up cycle (before the debugger has attached).
One workaround I have used before:
Make sure you are debugging with a local IIS instance and not IIS Express (right click project properties -> Web -> Servers dropdown -> Local IIS
Hit F5 and get your error dialog. (Just to make sure the IIS process has started). Close the error dialog.
Debug -> Attach to Process -> attach to w3wp.exe (iis process). If it's not there make sure 'show processes from all users/sessions' are both checked.
Force a restart of your app by changing the web.config file.
The restart will now occur with the debugger attached to the process from the very start. If that doesn't give any more useful info, then look at turning off 'Just My Code' debugging exception/breakpoint handling and repeating.
For Visual Studio 2019, click on menu "Debug > Windows > Exception Settings".
Under Common Language Runtime Exceptions, tick on System.NullReferenceException. Debugger will break at the point where this exception is caught.
You can setup a local Azure emulator, this is how I've always debugged my cloud apps.
http://msdn.microsoft.com/en-us/library/windowsazure/hh403990.aspx
And maybe do some reading!
http://msdn.microsoft.com/en-us/library/windowsazure/ff683670.aspx
http://msdn.microsoft.com/en-us/library/windowsazure/hh694035.aspx
Inside global.asax:
protected void Application_Error(object sender, EventArgs e)
{
var error = Server.GetLastError();
string message = error.Message;
string callStack = error.StackTrace();
//Write message and callStack to file
...
}
I don't think debugging will help in this case.
However, unloading/reloading your Azure project by right-clicking on it might fix. I'd tried a LOT of things before discovering this one.
As mentioned here.
I also had the "Object reference not set" issue starting Compute Emulator. I found running VS as administrator resolved this.
Changing project target to 4.6.1. seems to have worked for me.
You can debug through logs. Like you can check through diagnostic logs. Enable them through code. There are some configuration for it. I also faced this type of issue and that was very difficult for me to trace. So i enabled the diagnostic logs and write on logs on my custom check point.
When I try to build my solution, I get the following error:
Visual Studio cannot start debugging because the debug target 'c:\target' is missing. Please >build the project and retry, or set the OutputPath and AssemblyName properties appropriately >to point at the correct location for the target assembly.
My output path is set correctly to bin\Debug, but the exe is never created in that folder. Instead, all I get are the exe.config, vshost.exe, and vshost.exe.config files.
Any idea what's going on?
Make sure that output path of project is correct (Project > Properties > Build > Output path)
Go in menu to Build > Configuration Manager, and check if your main/entry project has checked Build. If not, check it.
Go to properties > Application , and select the output type of your project
I've had the same problem;
Here are solutions that didn't work for me:
Building/rebuilding entire solution
Making sure the output path was correct (MyProject > Properties > Build > Output > Output path)
Here's the solution that did work for me:
Rebuilding just the project
You could open the project file with a text editor and replace 'c:\target' by 'bin\Debug'
EDIT
There are other more helpful answers but I can't delete mine since it's the accepted one.
#CZFox Answer
#Yehuda Shapira Answer
steps for changing target path is
Go to Properties
Then go to Debug
Browse the Start external program and select the bin/Debug/.exe file
I have solve this type of problem follow this step
1.VS2010 right click on the solution explorer and select the Build.
Again press Ctrl+F5 or F5
You can try the following steps to resolve the problem.
Step 1:
Right click on the solution and select the property
Step 2:
In Configureation property select the Build option button
I just stumbled across this problem, but I'm using Visual Web Developer Express 2010 and couldn't find any wrong path either within IDE or in the project file. Rebuilding or deleting build folders didn't help.
But after examining the projects .user file, which I've never done before, I discovered that the bad path was in there. Very simple if one knows where to look.
I had the same problem and the real solution was embarrassingly easy:
If, in your project, Visual Studio has never successfully compiled the program (before finding the first bug), you will get this error. What I did was remove all offending code (in my case, leaving just a simple button1_Click with no code). Run/Compile the code one time; exit the running program, and this message goes away.
The Compiler builds various directories and files on a first successful compile and these are used by the debugger. I am now recommending with all new projects, define the form, compile, close, and then begin coding.
I've found that this can happen if all the files are deleted from the bin folder. ReBuild the app to force a full build: right click on the project in solution explorer and select ReBuild.
Please follow the below steps to overcome this problem:
If you are working with VS2010, change platform target to x64
Select .net framework as 3.5
If you are using any custom code for Sharepoint and like to debug or deploy the use the above....and my bad sake i dont abt the .net applications
I had this error too (in VS2010), and in my case (two projects in one solution, with one being for unit tests) the answer was to go into the solution's (not the project's) properties and set a single startup project. I would've thought it also necessary, in that project's settings, under Application, to specify the "Startup Object", but it's working for me with or without that.
Although this has already been answered, I found that my own solution was none of the above. Admittedly a rookie mistake, within my solution I had multiple projects, and thus when trying to run solution, the wrong project was set as the Startup Project.
So in my own case, not to say others, the solution was to right click the project and select Set as Startup Project
I tried everything mentioned in this thread but none worked.
Then, i tried the simplest thing and it worked.
Close visual studio and open it back up again.
This was a really annoying error!
I kept trying to start a debug instance but it just wouldn't make an exe! Though there were errors in my ConnectionString (while trying to make an SQL connection). There were two backslashes that were supposed to be a part of a path and the tutorial I was following told me to ignore it.
Well, turns out that was the error. A backslash marks the beginning of some escaping that you want to do, and the way to have a backslash displayed is \\ instead of \.
Got rid of that, and it worked for me.
EDIT: It would seem that you have to get rid of the tiny errors that you have made while writing your code to let it compile properly.
I have solved this problem by changing the Platform Target to "any CPU".
If the above explanation does not help you, then you could have error in the program. I have the same issue and I solved it as I cut the functions used in the same class and one of the functions were the cause of it.
I had a very very similar problem, but almost non of the solutions worked for me, finally when i reset the VS setting, it fixed...
To reset settings:
Tools Menu >
Import and Export Settings >
Select Reset all settings radio >
Next >
Next (You can backup your current settings in this step) >
Finish
Problem:
The problem was I had bad nuget source configuration, so the solution could not start properly despite the fact it was build correctly because it still saw old dll references.
Solution:
It was not enough to change nugget source url, I just had to remove entire nugget source and add it again with proper url.
Clean solution and rebuild it.
There are many issues that can lead to this problem, after losing 2 days to this issue I think I have the root cause of this issue and also the problem of the Form Designer throwing an error when switching to the Design view (also seems to effect the DataSet Designer):
A language syntax error that Intellisense doesn't catch.
Once I went through my code with a fine tooth comb I found a couple of really boneheaded mistakes that I kept overlooking, once those were resolved the solution compiled just fine and the output was in the correct place.
Here is the solution for this problem, no need to change anything for this problem.
You all know C# is case sensitive language and we have to write all methods and statements in correct case.
We all are just missing this thing and we just have to change method 'main() --> Main()'
This thing solved my problem please let me know if you still find any :-)
When I try to build my solution, I get the following error:
Visual Studio cannot start debugging because the debug target 'c:\target' is missing. Please >build the project and retry, or set the OutputPath and AssemblyName properties appropriately >to point at the correct location for the target assembly.
My output path is set correctly to bin\Debug, but the exe is never created in that folder. Instead, all I get are the exe.config, vshost.exe, and vshost.exe.config files.
Any idea what's going on?
Make sure that output path of project is correct (Project > Properties > Build > Output path)
Go in menu to Build > Configuration Manager, and check if your main/entry project has checked Build. If not, check it.
Go to properties > Application , and select the output type of your project
I've had the same problem;
Here are solutions that didn't work for me:
Building/rebuilding entire solution
Making sure the output path was correct (MyProject > Properties > Build > Output > Output path)
Here's the solution that did work for me:
Rebuilding just the project
You could open the project file with a text editor and replace 'c:\target' by 'bin\Debug'
EDIT
There are other more helpful answers but I can't delete mine since it's the accepted one.
#CZFox Answer
#Yehuda Shapira Answer
steps for changing target path is
Go to Properties
Then go to Debug
Browse the Start external program and select the bin/Debug/.exe file
I have solve this type of problem follow this step
1.VS2010 right click on the solution explorer and select the Build.
Again press Ctrl+F5 or F5
You can try the following steps to resolve the problem.
Step 1:
Right click on the solution and select the property
Step 2:
In Configureation property select the Build option button
I just stumbled across this problem, but I'm using Visual Web Developer Express 2010 and couldn't find any wrong path either within IDE or in the project file. Rebuilding or deleting build folders didn't help.
But after examining the projects .user file, which I've never done before, I discovered that the bad path was in there. Very simple if one knows where to look.
I had the same problem and the real solution was embarrassingly easy:
If, in your project, Visual Studio has never successfully compiled the program (before finding the first bug), you will get this error. What I did was remove all offending code (in my case, leaving just a simple button1_Click with no code). Run/Compile the code one time; exit the running program, and this message goes away.
The Compiler builds various directories and files on a first successful compile and these are used by the debugger. I am now recommending with all new projects, define the form, compile, close, and then begin coding.
I've found that this can happen if all the files are deleted from the bin folder. ReBuild the app to force a full build: right click on the project in solution explorer and select ReBuild.
Please follow the below steps to overcome this problem:
If you are working with VS2010, change platform target to x64
Select .net framework as 3.5
If you are using any custom code for Sharepoint and like to debug or deploy the use the above....and my bad sake i dont abt the .net applications
I had this error too (in VS2010), and in my case (two projects in one solution, with one being for unit tests) the answer was to go into the solution's (not the project's) properties and set a single startup project. I would've thought it also necessary, in that project's settings, under Application, to specify the "Startup Object", but it's working for me with or without that.
Although this has already been answered, I found that my own solution was none of the above. Admittedly a rookie mistake, within my solution I had multiple projects, and thus when trying to run solution, the wrong project was set as the Startup Project.
So in my own case, not to say others, the solution was to right click the project and select Set as Startup Project
I tried everything mentioned in this thread but none worked.
Then, i tried the simplest thing and it worked.
Close visual studio and open it back up again.
This was a really annoying error!
I kept trying to start a debug instance but it just wouldn't make an exe! Though there were errors in my ConnectionString (while trying to make an SQL connection). There were two backslashes that were supposed to be a part of a path and the tutorial I was following told me to ignore it.
Well, turns out that was the error. A backslash marks the beginning of some escaping that you want to do, and the way to have a backslash displayed is \\ instead of \.
Got rid of that, and it worked for me.
EDIT: It would seem that you have to get rid of the tiny errors that you have made while writing your code to let it compile properly.
I have solved this problem by changing the Platform Target to "any CPU".
If the above explanation does not help you, then you could have error in the program. I have the same issue and I solved it as I cut the functions used in the same class and one of the functions were the cause of it.
I had a very very similar problem, but almost non of the solutions worked for me, finally when i reset the VS setting, it fixed...
To reset settings:
Tools Menu >
Import and Export Settings >
Select Reset all settings radio >
Next >
Next (You can backup your current settings in this step) >
Finish
Problem:
The problem was I had bad nuget source configuration, so the solution could not start properly despite the fact it was build correctly because it still saw old dll references.
Solution:
It was not enough to change nugget source url, I just had to remove entire nugget source and add it again with proper url.
Clean solution and rebuild it.
There are many issues that can lead to this problem, after losing 2 days to this issue I think I have the root cause of this issue and also the problem of the Form Designer throwing an error when switching to the Design view (also seems to effect the DataSet Designer):
A language syntax error that Intellisense doesn't catch.
Once I went through my code with a fine tooth comb I found a couple of really boneheaded mistakes that I kept overlooking, once those were resolved the solution compiled just fine and the output was in the correct place.
Here is the solution for this problem, no need to change anything for this problem.
You all know C# is case sensitive language and we have to write all methods and statements in correct case.
We all are just missing this thing and we just have to change method 'main() --> Main()'
This thing solved my problem please let me know if you still find any :-)