Reputation: 3258
Okay so I have been having a lot of issues with debugging. I'm using VS2013 Pro and Windows 8.1. Both are up to date. The issue is, when I start debugging, half the time it throws this error:
An unhandled exception of type 'System.AccessViolationException' occurred in System.Windows.Forms.dll
Additional information: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Its not my code's fault either. I made a simple test as an example below. Note that I am not referencing System.Windows.Forms from this app.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
List<int> testing = new List<int>();
for(int i =0; i < 50; i++)
{
testing.Add(i);
}
for (int i = 0; i < 50; i++)
{
Console.WriteLine(testing[i].ToString());
}
Console.ReadLine();
}
}
}
I have no idea what's causing this. It will work if I click okay and run it again, most the time. Occasionally I have to do it twice.
Any ideas?
Stack trace:
Upvotes: 13
Views: 47206
Reputation: 372
In my case, such VS behavior was caused by Comodo Firewall.
The solution is adding VS Projects folder to Comodo HIPS exclusions list (even if the HIPS is turned off!).
Here is a related thread Comodo forum: https://forums.comodo.com/empty-t98149.0.html
Upvotes: 1
Reputation: 61
I also ran into this problem on windows10 using visual studio express2015. building to x86 did not fix my problem but the following workaround did the trick:
This issue is caused by the code which gathers return values. It is possible to work around the issue by disabling Managed return values.
Upvotes: 6
Reputation: 146
Changing the Platform Target to x86 works for me, It came to a point that stepping through the code was impossible without the forementioned Exception. I run Win 8.1 64-bit and Visual Studio 2013.
Upvotes: 9
Reputation: 968
I can confirm this problem. It occurs in a small (very trivial) WinForms program distributed with my own commercial app. It's never happened in any earlier version of VS going back to VS2005, including those run on the same machine. It only occurs in VS2013. My version of VS has no 3rd-party add-ins other than what's installed with VS itself. Problem occurs even when all code in "Main()" is commented out. I've tried rebooting, disabling virus checker, firewall, etc. Makes no difference which version of .NET my app targets either (2.0, 3.5, 4.0, whatever). It happens frequently but randomly. Sometimes it works, sometimes it doesn't. Go figure.
Upvotes: 1
Reputation: 51
http://veriworld.verivox.ads/docs/DOC-6011?et=watches.email.document_comment#comment-4629
Seems that in some cases VS/.net framework has memory trampling issues. I really wish people would stop saying 'it cant be' when someone says something breaks.
Upvotes: 4
Reputation: 6175
There is nothing that looks like it may cause issues.
Did you try enabling breaking on exception? This will cause your code to pause when it encounter an exception.
Upvotes: 1