طريقة تحميل ملفات الأنترنت عن طريق برنامجك هي كالتالي:
1- أولاً عليك معرفة حالة الأتصال مع الأنترنت و ذالك عن طريق الدالة ( IsAvailable) و الموجودة في الأداة My الجديدة والخاصة بــ VB 2005.Net .
الكود الكامل هو:
My.Computer.Network.IsAvailable ونوع البيانات الذي يعيده هذا الكود هو
Boolean أي True (أنت متصل عبر ألإنترنت) أو False (أنت غير متصل بالإنترنت)
كود PHP:
if My.Computer.Network.IsAvailable = True then
Msgbox("Connected")
else
Msgbox("Not Connected")
end if
2- بعد التأكد من حالة الإتصال مع الإنترنت يأتي دور تحميل الملفات من الإنترنت و الكود هو بالشكل التالي:
كود PHP:
My.Computer.Network.DownloadFile("http://www.arab-vb.net/filename.zip", "C:\DestinationFileName.pdf")
هذه الطريقة سريعة وفعالة مع الملفات الصغيرة حيث لا يتأثر البرنامج
أما في حالة الملفات الكبيرة تكون هناك مشكلة تعليق البرنامج لفترة زمنية تطول بكبر الملف و العكس صحيح. قمت بتنزيل ملف حجمة 91 Kbyte إستغرق البرنامج زمن قدرة 5 ثواناً تقريباً عن عدم الإستجابة مع خط كنت أعمل علية بسرعة ( حقيقية ) 2.7 Kbyte / s .
لذالك تستخدم برامج تنزيل الملفات طريقة أخرى و هي FileStream Reader
حيث يقوم البرنامج بقراة قطاعات من الملف المراد تحميلة بشكل متتالي. ويتم تحديد قيمة القطاع المقرؤ (طبعاً اقصد بالقطاع كمية البيانات بالــ Byte ) بسرعة الخط الموجود لدى المستخدم لذالك تطول في فترات بطئ خط الإنترنت و العكس صحيح.طبعاً من المهم الأخذ في الإعتبار تحديد سرعة تناقل البيانات من الإنترنت وذالك تفادياً لمشكلة عدم الأستجابة للبرنامج من جهة وأخذ كافة الموارد المتاحة لبقية صفحات الإنترنت التي تعمل مع البرنامج من جهة أخرى.
أما عن ميزة Resume Support فتأتي من إمكانية عمل Seek للملف الذي يتم تنزيلة من الإنترنت. حيث يقوم البرنامج بمعرفة أخر Position وقف عندة أثنا التنزيل ثم يقوم بالمتابعة.
أقصد بالــ Position هو مكان أخر حرف تم قرأتة من الملف ويتم ذالك عن طريق أيجاد طول الملف length ثم يتم طرح منة الطول الذي تم نسخة.