2009-11-26 90 views
1

目前我正在試圖從一個服務器移動到另一個網站,ASP頁的一個包含了一些VB腳本,看起來像這樣:ASP網站與vbsript功能不同在不同的服務器

Dim oSearch 'AS Object 
    Dim strXML 'AS String 
    Dim strXSL 'AS String 
    Dim oRS 'AS ADODB.RecordSet 

    Set oSearch = Server.CreateObject("ETHERNET_PL.CETHERNET_PL") 
    strXSL = Server.MapPath("EthernetSearch.xsl") 
    strXML = oSearch.ServeSearch(strXSL,1,1000,0) 

    Set oSearch= Nothing 
    Set oRS=Nothing 

    Response.Write strXML 

我的知識這項技術非常有限,但我可以說「ETHERNET_PL.CETHERNET_PL」是兩臺服務器上的組件服務,確實有一種名爲ServeSearch的方法。此外,兩個服務器上都存在EthernetSearch.xsl文件。唯一的問題是,在新服務器上收到以下錯誤,當我試圖訪問該頁面:

MSXML3.DLL錯誤「8000000a」

的數據要完成此操作尚未公佈。

/EthernetSearch.asp 63行

其中第63行是:

strXML = oSearch.ServeSearch(strXSL,1,1000,0) 

有誰知道什麼是造成這兩個頁面在兩個不同的服務器不同的功能?

在此先感謝

+0

什麼是在XSL文件containt?例如導入其他XSL或XML文件,它們是否存在? – AnthonyWJones 2009-11-27 11:28:05

回答

1

似乎Microsoft XML找不到數據。問題可能出現在系統的很多領域。我會開始看:

  • ETHERNET_PL.CETHERNET_PL應用程序在機器上的配置文件 - 如果它有自己的配置 - 比較它們。這可能會揭示它如何使用MSXML。如果你有權訪問這個組件,可以單獨使用它來學習它的用法,如果可以的話,自己調試它。

那麼「常規」檢查一樣......

  • 文件系統,對XML數據文件的NTFS權限,在網站上,等
  • 確保所有已安裝的軟件版本是相同的(IIS,MSXML,ETHERNET_PL,VBScript及其他)
  • 跨機器檢查IIS設置 - 例如是在調試模式下運行的一臺服務器上的Web應用程序,但不是其他的?等
  • 對於已列出的任何軟件的Windows註冊表權限 - 如果存儲了任何設置(Windows註冊表在其節點上具有自己的一組ACL權限)。 REGEDIT.EXE

而且Google your error message運行。過濾這些結果非常耗時,但如果某人遇到問題,則可能使用較舊的技術,否則答案將在網上或大量建議,與上面列出的不同。很有可能通過這種方式解決問題。

如果需要,請在乾淨的機器上或虛擬機內重新設置所有內容,然後開始在發生問題的車載機器上回退步驟 - 這很耗時,但可能會導致您查看詳細信息否則你不會。

1

圍繞網絡進行的一些論壇討論表明,這種錯誤可能是由於MSXML沒有足夠快地加載數據(或者在加載數據時超時),當它試圖使用時導致錯誤它例如http://forums.devx.com/archive/index.php/t-100302.html

由於這個錯誤是從ETHERNET_PL.CETHERNET_PL組件來那麼這就是你說的XML文件都存在服務器上,但它同樣的文件,它的問題是內部使用MSXML

的,是在一個服務器給出的錯誤顯着更大,加載時間可能會成爲問題?

相關問題