الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية التعامل مع الملفات التالفة

بدأه moon3000 في 12 مارس 2008 · 8 رد · 3,267 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

من فضلكم ....

اريد معرفة كيفية التعامل مع الملفات التالفة...نسخ ....قص....حذف....حيث ان الطريقة التي استخدمها لا تستطيع نسخ او قص او حذف الملفات التالفة

#2

ملف تالف مالفائدة من نسخه ؟

ألا بذكر الله تطمئن القلوب

#3

اشكرك شكرا جزيلا يا استاذ المزمجر....

بالتأكيد ليس هناك فائدة من نسخ الملفات التالفة.....بس ا نا اقصد انه عندما اتعامل مع مجلدات و فيها على الاقل ملف واحد تالف .....فان عملية النسخ او النقل او الحذف تتوقف دون ان تتم على باقي الملفات السليمة التي تلي الملف التالف ....

أرجو ان اكون قد نجحت في توضيح ما اريده ..!!

فهل توجد طريقة يا استاذ لحل هذه المشكلة و تجاوز الملفات التالفة و اكمال التعامل (النسخ مثلا )مع باقي الملفات السليمة ......؟؟

#4

أخي الكريم ، فعلياً أنا وقعت في نفس هذه المشكلة من قبل ، ولكن هدفي هو نقل ملف فيديو يحتوي علي 3 ساعات من إسطوانة CD-ROM وهذا بسبب عند نسخة لم أحد يفكر في إجراء Scan Disk علي القرص الصلب حتي ولو سريعاً ، أو أن حدث تلف للإسطوانة نفسها ، المهم الملف الفيديو منها تقريباً 10 دقائق تالفة ، لكن عند عملية النسخ يرفض إكمال عملية النسخ فيعطي لي خطأ مما أدي الي إلغاء عملية النسخ الكامل للملف

لذلك كان لدي فكرة بسيطة جداً وهي أن أصنع برنامج بالفيجوال 6.0 يقوم بفتح الملف بصورة ثنائية ومن ثم أقرأها مجموعة مجموعة من الحروف بحيث أن أجلب الجزء السليم وعلي الفور أنسخ الجزء السليم علي مشغل السواقة الصلب ، أما الجزء الغير سليم يعطي لي خطأ فكنت أحاول أن أتلاشي هذا الجزء بجملة

On Error Resume Next

لكن إذا كنت ترغب في تلاشي الملف ككل فهنا يجب عليك عند عملية نقل الملفات ووجدت ملف تالف أحذف هذا الملف من المكان الذي نسختة فية ومن ثم أنتقل علي الفور للملف التالي .

لكن أخي تذكر أن الجزء التالف لا يمكنك قراءة هذا الجزء !!!!

ويارب أكون قد نجحت في إيصال الفكرة لك

شكراً

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#5

شكرا استاذي القدير على الرد السريع (الصاروخي )....

و انا ممتن لكم كثيرا وعاجز عن الشكر.....

الحمد لله الفكرة وصلت ...و جاري الطبيق ....شكرا استاذي ....

#6

عفوا استاذي القدير

ممكن تسمح لي طلب ارفاق مثال بسيط.....

لاني ظننت اني فهمت الفكرة و لكن لم افلح عند التطبيق......

فهل ممكن مساعدة مبتدئ مثلي

#7

أخي الكريم ، تحية طيبة وبعد ،

يمكننا فتح الملفات بثلاثة طرق ، إما تسلسلية أو عشوائية أو ثنائية ، المطلوب في الوضع الحالي هو فتح الملف بصورة ثنائثة كما يلي :

Open "C:\Data.dat" For Binary As #1
Close#1

ما بين Open و Close يتم إجراء Loop علي كافة البيانات المخزنة بملف البيانات كما يلي :

Dim strField As String * 1

For X = 1 To LOF(1)
	Get#1,X,strField
	Open "C:\Data_Copy.dat" For Binary As #2
	Put #2,X,strField
	Close#2
	DoEvents
Next

بهذه الطريقة نكون قد أخذنا بايت بايت ومن ثم تم التخزين بملف آخر بايت بايت

شكراً

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#9

اشكرك يا استاذي شكرا جزيـــــــــــــــــــلا..

الطريقة عملت جيدا اثناء الحذف ....

و لكن للاسف لم تعمل اثناء النقل كما اريدها ....

ارجو الافادة....

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…