Today I started getting a strange exception every time I try to enter a character in a textbox:
Attempting managed execution inside OS Loader lock. Do not attempt to run managed code inside a DllMain or image initialization function since doing so can cause the application to hang.
But I was just typing a character in a test application with only a textbox, not doing anything so exotic.
After banging my head against the wall for a few hours I found on MSDN forum a strange compatibility issue between Visual Studio 2005 and iTunes 7.1: LoaderLock detected, only when iTunes running...
Microsoft did a research on the issue and here is the result:
We are sorry that you are experiencing problems when running iTunes 7.1 and VS 2005. Here is the results of our research:
We noticed that iTunesKeyboardCompatibility.dll is causing the LoaderLock MDA to fire. The most likely reason is that the DLL entry point for this DLL is doing some non-trivial work which causes managed code to run. There are serious limits on what a DLL can do in the DLL entry point (i.e. DllMain()). For more information, you can refer to http://msdn2.microsoft.com/en-us/library/ms682583.aspx.
This will need to be resolved by iTunes.
So only two possible solutions:
- move to WinAmp, or install iTunes 6.x
- disable the LoaderLock MDA from the Debug>Exception>Managed Debugging Assistant
Since I listen to music while working, I think I'll disable the MDA
Actually the problem happens only when the iTunesHelper process is running, not with the main iTunes process.