[英]Out of Memory Error - Classic ASP & VPASP Shopping Cart
我有一台運行IIS 5的較舊的Windows 2000服務器。我在此服務器上安裝了許多網站,並且一個特定的客戶遇到了一個有趣的錯誤。 他正在使用VP-ASP購物車。
Microsoft VBScript runtime error '800a0007'
Out of memory
/cart/admin/admin$db.asp, line 558
該行附近的相關代碼:
'********************************************************************************
'all routines dealing with actual cart are here
'CartaddItem ()
'CartInit
'********************************************************************************
sub CartInit
dim ArrCart
dim MaxCartItems, CartAttributes
MaxCartItems=GetConfig("xMaxCartItems")
CartAttributes=cMaxCartAttributes
if MaxCartItems="" then exit sub
redim ArrCart(CartAttributes,MaxCartItems)
session("CartArray") = ArrCart
session("CartCount") = 0
end sub
問題是,當他開始出現此錯誤時,計算機僅使用了其內存的50%以上。 HDD上仍然有可用空間。
我能找到的最好建議是,我們應該更新.NET 1.1 SP1。 我似乎在.NET 1.1.4322上,據我所知是1.1的最新版本。
任何解決此問題的建議將不勝感激!
我可以看到很長一段時間以來,這個問題都沒有得到解答,您可能已經繼續前進,但是今天我遇到了這個問題,我已經解決了。 這是發生了什么...
雖然錯誤消息與您的錯誤消息相同,但行號指向的代碼像您的示例一樣使用redim
為數組重新分配了空間,但這只是指向程序最終耗盡內存的位置-並非導致錯誤的真正原因。額外的內存使用。
幸運的是,我記得最近我在一些古老的數據庫代碼中做了另一個實驗性更改:
Set dbProviderCon = Server.CreateObject("ADODB.Connection")
dbProviderCon.CursorLocation = adUseClient
我已經注釋掉了最后一行,以查看它將產生什么效果。 事實證明,效果快用完了。 重要的是,在我的代碼調整數組大小的那一行,它還獲取了RecordSet的RecordCount屬性。 這是關於該問題的另一討論 。 我希望這可以幫助別人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.