I have an ASP.Net Framework 4 web application making an interop call to a 3rd party unmanaged dll written in C++.
The dll is stored in the bin directory of the web application and creates a file in another directory of the same web application.
The call works fine using Visual Studio 2010 (typically), but the individual process falls over when the call is made on IIS6.
The only logs of any problems is an entry in Event Viewer:
Application: w3wp.exe
Framework Version: v4.0.30319
Description: The process was terminated due to stack overflo开发者_开发问答w.
The Application Pool is running under the Network Service account, and this account has also been granted Modify access to the directory in question.
The 3rd Party confirmed that the problem was due to a problem in their memory allocation. The amount allocated on the stack not being sufficient.
The dll was suffering a stack overflow as a result and brought down w3wp.exe temporarily while IIS brought another process back up automatically.
精彩评论