Makale numarası: 273482 - Son Gözden Geçirme: 20 Mayıs 2003 Salı - Gözden geçirme: 2.0

SORUN: Hata "Request nesnesi, ASP 0107 (0x80004005)" ne zaman, bir formu deftere naklet

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.
Hepsini aç | Hepsini kapa

Belirtiler

Microsoft ınternet ınformation Services 5.0, büyük bir form alanı deftere nakil yaptığınızda, aşağıdaki hata iletisini alabilirsiniz:
Hata türü:
Nesne, ASP 0107 (0x80004005) iste
Işlenmekte olan izin verilen sınırın veridir.
Microsoft ınternet ınformation Server 4.0, büyük bir form alanı deftere nakil yaptığınızda, aşağıdaki hata iletisini alabilirsiniz:
Nesne hata 'ASP 0107: 80004005' iste
Yığın Taşması
/projectName/Page.asp, <a1>Satır</a1> XX
Işlenmekte olan izin verilen sınırın veridir.

Neden

Istek nesnesinde alınan her form alanı boyutu sınırı 102,399 bayttır. Bu sınırı aştığında, hata oluşur.

Çözüm

Bu sorunu gidermek için aşağıdaki yöntemlerden birini kullanın:
  • Form, Request.Form koleksiyonu ile değişken değerleri okuma, yerine Request.BinaryRead (Request.TotalBytes) kullanın ve form değerleri Request.BinaryRead çıkışını ayrıştırmak.
  • Karşıya dosya yükleme, bir düzeni Microsoft deftere nakil Acceptor gibi kullanın.
  • Formu göndermeden önce HTML form değişkenleri birden çok form değişkenleri bölün. Sağlayabilirsiniz; böylece 102,399 bayt sınırını her form için birden çok form değişkenleri 102,399 karakter veya daha az değişkendir. Aşağıdaki örnek kodu olarak bunu göstermektedir: UYARı: ANY USE BY SIZE OF KOD SAğLANAN IN BU MAKALEYI IS AT BILGINIZI OWN RISKI. Microsoft, hiçbir garanti, ya da veya zımni, dahil ancak bunlarla sınırlı olmamak satılabilirlik ve/veya belirli bir amaca uygunluk zımni hiçbir garanti olmadan "olduğu gibi", bu kodu sağlar.
    <FORM method=post action=LargePost.asp name=theForm onsubmit="BreakItUp()">
    <Textarea rows=3 cols=100 name=BigTextArea>A bunch of text...</Textarea>
    <input type=submit value=go>
    </form>
    
    <SCRIPT Language=JavaScript>
    function BreakItUp()
    {
      //Set the limit for field size.
      var FormLimit = 102399
    
      //Get the value of the large input object.
      var TempVar = new String
      TempVar = document.theForm.BigTextArea.value
    
      //If the length of the object is greater than the limit, break it
      //into multiple objects.
      if (TempVar.length > FormLimit)
      {
        document.theForm.BigTextArea.value = TempVar.substr(0, FormLimit)
        TempVar = TempVar.substr(FormLimit)
    
        while (TempVar.length > 0)
        {
          var objTEXTAREA = document.createElement("TEXTAREA")
          objTEXTAREA.name = "BigTextArea"
          objTEXTAREA.value = TempVar.substr(0, FormLimit)
          document.theForm.appendChild(objTEXTAREA)
          
          TempVar = TempVar.substr(FormLimit)
        }
      }
    }
    </SCRIPT>
    						
    Değişken alan Active Server Page (ASP) sayfası reconstructs:
    <%
    Dim BigTextArea
    
    For I = 1 To Request.Form("BigTextArea").Count 
      BigTextArea = BigTextArea & Request.Form("BigTextArea")(I)
    Next
    %>
    						

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Active Server Pages 4.0
Anahtar Kelimeler: 
kbmt kberrmsg kbprb KB273482 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:273482  (http://support.microsoft.com/kb/273482/en-us/ )
Retired KB ArticleKullanım Dışı Bilgi Bankası İçeriği Yasal Uyarı
Bu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.