I ran into this weird issue with one of my 3rd party software, running on Vista Business. I have a user that upon local log in with the user's credentials, anyone using that 3rd party software will get that error:

Error Report generated on 7/2/2012 9:46:57 AM

Product Version :
OS : Microsoft Windows NT 6.0.6002 Service Pack 2

Environment Variables :

Path : C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
TEMP : C:\Users\xxxxxx\AppData\Local\Temp
USERDOMAIN : xxxxxxxx
SystemDrive : C:
TRACE_FORMAT_SEARCH_PATH : \\NTREL202.ntdev.corp.microsoft.com\4F18C3A5-CA09-4DBD-B6FC-219FDD4C6BE0\TraceFormat
APPDATA : C:\Users\xxxxxxx\AppData\Roaming
windir : C:\Windows
LOCALAPPDATA : C:\Users\xxxxxxx\AppData\Local
TMP : C:\Users\xxxxx\AppData\Local\Temp
USERPROFILE : C:\Users\xxxxxx
ProgramFiles : C:\Program Files
COMPUTERNAME : xx-xxxx-x
HOMESHARE : \\server\home\xxxxxxxx
ProgramData : C:\ProgramData
PROCESSOR_IDENTIFIER : x86 Family 15 Model 127 Stepping 2, AuthenticAMD
USERNAME : xxxxxxx
SystemRoot : C:\Windows
ComSpec : C:\Windows\system32\cmd.exe
LOGONSERVER : \\server
CommonProgramFiles : C:\Program Files\Common Files
PUBLIC : C:\Users\Public
OS : Windows_NT

Machine Name : xx-xxxx-x
User Domain : xxxxxxxx
User : xxxxxxx
.NET Version : 2.0.50727.4016
Memory : 41291776

Error Details

Input string was not in a correct format.


Stack Trace

   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at Thermo.SampleManager.Client.ExplorerApplicationService.LoadSettings()
   at Thermo.SampleManager.Client.ExplorerApplicationService.Setup(IClientApplicationServiceSite site)
   at Thermo.Framework.Client.ClientApplicationServiceCache.AddService(String serviceName, Type serviceType, IClientApplicationService service)
   at Thermo.Framework.Client.ClientApplication.GetService(Type serviceType)
   at Thermo.Framework.Client.ClientApplication.HandleApplicationServiceMessage(ApplicationServiceMessage message)
   at Thermo.Framework.Client.ClientApplication.TransportMessageReceived(Object sender, MessageEventArgs e)
   at Thermo.Framework.Core.Transport.OnMessageReceived(Message message)
   at Thermo.Framework.Core.Transport.ConversationMessageReceived(Object sender, MessageEventArgs e)
   at Thermo.Framework.Core.Conversation.OnMessageReceived(Message message)
   at Thermo.Framework.Core.Conversation.HandleBundle(Bundle bundle)


Now, if I log in locally, to that same PC, I don't get that error and neither does that user. I should also mention I have admin rights.

Here is what I've done so far:

  1. Removed local profile and re-added it
  2. Uninstalled and reinstalled the software
  3. Tried to unregister and reregister mscorlib.dll in all .net related directories

As I said earlier, the client is running on Vista Business, the back end of the software resides on virtualized Windows Server 2003.

Any suggestions? Please help!


mscorlib is obviously not the problem, it's the core of .Net so most errors eventually trace back to it even though they actually originate in the third party's code. In this case it's explicitly telling you that the error is in Thermo.Framework, attempting to parse a string that can't be parsed into an int (possibly an empty string, if it's having trouble getting the proper values), without bothering with silly little things like error handling. They're way behind the times if they still live in a world where everyone is admin, and you need to tell them to fix their bugs.

I see you were also advised to do this in your previous question.

But there are some ways you can figure out where it's failing. Start with procmon and search for DENIED, half the time you'll see what you need to change permissions on. If that doesn't shed light on the problem, you can go even deeper with windbg (using gflags, part of windbg, to start with excel) to actually capture the exception as it happens and look at what's happening, but that's very complicated even for veterans.

Seriously, get them to fix their bugs, it'll save you a lot of time.

Not the answer you're looking for?Browse other questions tagged or ask your own question.