用delphi7写了一个COM,再本机模拟服务端时的开发环境下没有任何问题,但部署到服务器时出现 com surrogate 错误,查看事件记录如下:系统调用了一个自定义组件,此组件已失败并产生了一个异常。这说明自定义组件有问题。请通知此组件的开发人员并提供他们下列信息。
组件进程 ID: 
服务器应用程序 ID: {BF4AFD59-4F16-4B0C-AF9F-6D9B7CED1139}
服务器应用程序实例 ID:
{0BD565A2-1B3F-4E23-AF6E-9041A61E8A00}
服务器应用程序名: MTSLogic
此错误的严重性已导致进程终止。
异常: C0000005
地址: 0x7C95A36B
调用堆栈: 
ntdll!RtlRestoreLastWin32Error + 0x235
ole32!CoFreeUnusedLibrariesEx + 0x30d
ole32!CoCreateObjectInContext + 0x1807
COMSVCS!DispManGetContext + 0xb21c
COMSVCS!DispManGetContext + 0xbc23
ole32!CoInitializeSecurity + 0x3a2b
ole32!CoInstall + 0x6ed
ole32!CoQueryAuthenticationServices + 0x21bf
ole32!CoQueryAuthenticationServices + 0x2c6b
ole32!CoGetContextToken + 0xd431
ole32!CreateStreamOnHGlobal + 0x1b7c
ole32!CoCreateObjectInContext + 0xd9f
ole32!CoInstall + 0x903
ole32!CoGetContextToken + 0x12eff
RPCRT4!NdrServerInitialize + 0x1fa
RPCRT4!NdrStubCall2 + 0x217
RPCRT4!CStdStubBuffer_Invoke + 0x82
ole32!StgGetIFillLockBytesOnFile + 0x13d32
ole32!StgGetIFillLockBytesOnFile + 0x13cdf
ole32!DcomChannelSetHResult + 0xaab
ole32!DcomChannelSetHResult + 0x495
ole32!CoFreeUnusedLibrariesEx + 0xb06
ole32!StgGetIFillLockBytesOnFile + 0x13bec
ole32!StgGetIFillLockBytesOnFile + 0x13a7d
ole32!StgGetIFillLockBytesOnFile + 0x12f64
ole32!CoFreeUnusedLibrariesEx + 0x9f5
ole32!CoFreeUnusedLibrariesEx + 0x9c0
USER32!LoadCursorW + 0x4cf5
USER32!LoadCursorW + 0x4e86
USER32!TranslateMessageEx + 0x10d
USER32!DispatchMessageW + 0xf
COMSVCS!DllUnregisterServer + 0x270
COMSVCS!DllUnregisterServer + 0x180
COMSVCS!DllUnregisterServer + 0xc6c
COMSVCS!DllUnregisterServer + 0xf4d
msvcrt!_endthreadex + 0xa3
kernel32!GetModuleHandleA + 0xdf
有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持