When using Microsoft Internet Information Services a result code of 500 usually indicates a failure an object call. This can be similar to an improperly handled cgi-bin call under other web servers. Several items to check are:

  • Security Context - what user is the web instance running under and does that user have access to the specified resource
  • Object activation - does the web page call a valid object located on the machine.
  • In addition to checking the web logs check the event log to see if there are any Security, System or Application errors resulting from the call
To avoid this errors when using IIS a few suggestions are in order
  • As always make sure that your code contains the appropriate error handling routines
  • Log your errors in the event log or some other data store
  • Understand how COM objects work in relation to Microsoft Transaction Server