2009-07-13 33 views
0

我們在ASP.NET應用程序中使用MapInfo MapX映射引擎。服務器(Windows Server 2003 SP2)重新安裝後,我們遇到了一個奇怪的問題 - 訪問ActiveX實例時,Web應用程序掛起。訪問ActiveX組件時ASP.NET應用程序掛起

例如:


MapXLib.Map _mapXMap = 
    (MapXLib.Map)HttpContext.Current.Server.CreateObject("MapX.Map.5"); 
_mapXMap.MapUnit = MapXLib.MapUnitConstants.miUnitKilometer; // application hangs here 

但是,代碼


MapXLib.Map _mapXMap = 
    (MapXLib.Map)Activator.CreateInstance(Type.GetTypeFromProgID("MapX.Map.5")); 
_mapXMap.MapUnit = MapXLib.MapUnitConstants.miUnitKilometer; 

一個標準的Windows應用程序中工作得很好。

我認爲這個問題與COM和ASP.NET有關,因爲應用程序在服務器重新安裝之前工作正常。

回答

0

問題已解決。也許這對別人會有幫助。

因此,我運行Process Monitor(sysinternals)並從我的應用程序運行時捕獲了w3wp.exe中的所有事件。 我注意到,當試圖從Windows註冊表中讀取某些內容時,w3wp.exe進程停止:HKEY_CLASSES_ROOT-> CLSID - > {xxx-xxx ...}。 打開註冊表 - 好吧,這個節點擁有關於MapX的一些信息。

在向該節點的'READ'准予添加到網絡服務帳戶(w3wp正在此上運行)之後,應用程序開始正常工作。

相關問題