Iis 试图在System.Web.Hosting.UnsafeisMethods.MgdGetSiteNameFromId处读取或写入受保护内存

Iis 试图在System.Web.Hosting.UnsafeisMethods.MgdGetSiteNameFromId处读取或写入受保护内存,iis,iis-7,interop,Iis,Iis 7,Interop,当我点击一个COM互操作ASP页面(调用托管.NET代码)时,我得到了一个AV。感觉这与IIS 7/Windows 2008有关 谷歌无法理解这一点。有什么想法吗 试图读取或写入受保护的内存。这通常表示其他内存已损坏 at System.Web.Hosting.UnsafeIISMethods.MgdGetSiteNameFromId(UInt32 siteId, IntPtr& bstrSiteName, Int32& cchSiteName) at System.

当我点击一个COM互操作ASP页面(调用托管.NET代码)时,我得到了一个AV。感觉这与IIS 7/Windows 2008有关

谷歌无法理解这一点。有什么想法吗

试图读取或写入受保护的内存。这通常表示其他内存已损坏

   at System.Web.Hosting.UnsafeIISMethods.MgdGetSiteNameFromId(UInt32 siteId, IntPtr& bstrSiteName, Int32& cchSiteName)
   at System.Web.Configuration.ProcessHostConfigUtils.GetSiteNameFromId(UInt32 siteId)
   at System.Web.Configuration.ProcessHostServerConfig..ctor()
   at System.Web.Configuration.ProcessHostServerConfig.GetInstance()
   at System.Web.Configuration.ServerConfig.GetInstance()
   at System.Web.Caching.CacheMemoryPrivateBytesPressure.ReadConfig(CacheSection cacheSection)
   at System.Web.Caching.CacheMemoryStats.ReadConfig(CacheSection cacheSection)
   at System.Web.Caching.CacheCommon.ReadCacheInternalConfig(CacheSection cacheSection)
   at System.Web.HttpRuntime.get_Cache()

这不是一个答案,但只是说我的商店在WindowsVista(x64)和WindowsServer2008(x64)上看到了相同的东西。当应用程序池配置为以64位模式运行时,来自ASP的第一个COM调用将生成类似的堆栈跟踪

对我们来说,最奇怪的是它会在第二次和以后的通话中消失。因此,在应用程序池回收后,这种情况只会发生一次,然后看起来效果很好


我们也无法解决此问题。

这不是答案,只是说我的商店在Windows Vista(x64)和Windows Server 2008(x64)上看到了相同的问题。当应用程序池配置为以64位模式运行时,来自ASP的第一个COM调用将生成类似的堆栈跟踪

对我们来说,最奇怪的是它会在第二次和以后的通话中消失。因此,在应用程序池回收后,这种情况只会发生一次,然后看起来效果很好


我们也无法解决此问题。

在升级到Windows 7(和IIS7)后,我遇到了相同的问题。以前正常工作的WCF服务开始出现此错误


为了解决这个问题,我进入了项目的构建属性(Project/properties/Build选项卡),并将平台目标更改为“x86”。然后问题就消失了。

在升级到Windows 7(和IIS7)后,我遇到了相同的问题。以前正常工作的WCF服务开始出现此错误

为了解决这个问题,我进入了项目的构建属性(Project/properties/Build选项卡),并将平台目标更改为“x86”。然后问题就解决了