Ö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.
Şu senaryoyu inceleyin. Microsoft Visual C++ 2005, Visual C++ .NET 2003 veya Visual C++ .NET 2002'de, bir ağ sürücüsünde bulunan bir dosyayı açmaya fopen işlevini kullanın. Işlev çağrısında, mod parametre olarak arma (yazma ve ikili) erişim türünü kullanın. Sonra 67,076,095 bayttan büyük bir arabelleğe yazma fwrite işlevini çağırırsanız, işlev çağrısı başarısız.
Not 67,076,095 bayt yaklaşık 64 megabayt (MB) bağlıdır.
Neden
Sorun, işletim sisteminin bir sınırlama nedeniyle oluşur.
Pratik Çözüm
Bu soruna geçici bir çözüm için aşağıdaki yöntemlerden birini kullanın:
Bir dosyayı açtığınızda, w + b (okuma ve yazma) erişim türünü mod parametre olarak kullanın.
Daha küçük bir arabellek kullanın. Sonra dosya için istediğiniz bayt yazma kadar fwrite işlevi bir döngüde arayın.
Referanslar
Fopen ve fwrite işlevleri hakkında daha fazla bilgi için ziyaret edin, aşağıdaki Microsoft Developer Network (MSDN) Web sitesi: