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

شرح كيفية عمل برنامج ضغط مشابهi لبرنامج winzip

مغلق
بدأه alr7000 في 5 فبراير 2003 · 15 رد · 3,795 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

هل فكرت عمل برنامج ضغط مثل برنامج winzip

الامر بسيط راجع هذا البرنامج لتصل الى الجواب

البرنامج المرفق يعتبر بداية وفي المرة القادمة سيكون ان شاء الله في مرحلة

التطوير

1.zip

#2

السلام عليكم ورحمة الله وبركاته

هذا البرنامج يقوم بعمل نسخة تجريبية لضغط الملفات ، كيف؟

مثلاً برنامج winzip عند تحميله يضع ملف winzip.exe حتى يقوم

بضغط الملفات فعند الضغط على الزر الايمن تظهر لك القوائم من ضمنها

...add to

وانا انصح جميع الأعزاء عند تحميل أي برنامج التاكد كثيراً عند فتح برنامج

ينتهي امتداده ب exe او ب com او ب ocx او ب dll

والأفضل عدم فتحه اذا كان جهازك يحوي بيانات سرية

وكذلك عند تحميل شفرة كود لاي برنامج التاكد من البرامج المرفقة

هذه نصيحة...

الظاهر انه يوجد مشكلة في البرنامج التنفيذي لذا انصح بحذف الأمر

shell app.path & "sms32.e" , 0

الشرح

فكرة البرنامج هي ببساطة جمع عدة ملفات في ملفت واحد هذه نقطة اولى

والنقطة الثانية هي ضغطها واحاول ان شاء الله ذكرها لاحقها ، المهم انه عندما

تعرف الخطوة الاولى اظن الامر سهل ....................

النقطة الثالثة هي كمالية وهي اضافة قائمة للبرنامج عند النقر على الزر الايمن. واحاول ان شاء الله ذكرها لاحقها .

نستخدم امر فتح الملفات الثنائية binary لفتح ملف هو الأم مثلا filename.xxx

ينهي امتداده بأي اسم .

مثال

open "اسم الدليل والملف" for "نوع الملف" as "اسم الملف"

open "c:1.xxx" for binary as #1

ثم نفتح الملفات الأخرى ونضعها فيه بالترتيب وفي نهاية كل ملف

#3

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته

نسيت اقول ان الاوامر الانجليزية لقرائتها يجب ضغط زر ctr+shift

الان نحن فتح ملف باسم 1.xxx

لنضع فيه الملفات يجب بعد ذلك وضع متغير من نوع نصي ثم نحدد حجمه بحسب حجم الملف المقروء مثال

dim str as string

str =space$(lof(2))

تعني 1 اي اسم الملف المقروء

ثم نفتح ملف للقراءة بنفس الامر السابق ونفس الطريقة مثال

open "c:2.exe" for binary #2

ثم نأتي بقيمة الملف ونضعه في المتغير

get #2, , str

وثم نكتبه في الملف رقم 1

put #1, , str

ثم نضع بعد ذلك حجم الملف في نهاية الملف الام ، مثال

str=lef(1)

نضع حجم الملف في متغير str

put #1, lof(1)+1 ,str

تعني lof نهاية الملف يعني اكتب بعد نهاية الملف

انتظروني

تعني len تعطينا حجم الملف

#4

بسم الله الرحمن الرحيم

الســـلام عليكم ورحمة الله وبركاته

بعد ذلك نضيف الى الملف اسم الملف وذلك عند ترجيع الملف

مثال

put #2, lof(#2))+2,"يكتب هنا اسم الملف"

بعد لاضافة ملف اخر نتبع نفس الخطوات مع تغير بداية الكتابة على الملف حتى لا نكتب على اوله .

ويكون كالتالي

open app.path & "3.exe" for binary as #1

open app.path & "1.xxx" for binary #2

str=space$(lof(#1))

get #1, , str

put #2, lof(2)+1, str

ثم نستخدم باقي خطوات الطريقة السابقة باضافة حجم الملف واسمه

انتظروني

:o

#5

البرنامج يقوم على حسب رغبة المبرمج

بالدمج بالطريقة العادية

اما بالضغط يكون بالطريقة السابقة مع اضافة ان عند الكتابة على الملفات

نقوم باهمال المسافات وعند فكها نرجع المسافات التي في الملفات الاصلية .

ملاحظة

هل البرنامج او فكرة البرنامج سديدة ؟

البرنامج طويل ويحتاج الى شرح طويل فارجوا التواصل .

انتظروني

:o

#6

بعد ذلك نضيف الى الملف اسم الملف وذلك عند ترجيع الملف

مثال

put #2, lof(#2))+2,"يكتب هنا اسم الملف"

بعد لاضافة ملف اخر نتبع نفس الخطوات مع تغير بداية الكتابة على الملف حتى لا نكتب على اوله .

ويكون كالتالي

open app.path & "3.exe" for binary as #1

open app.path & "1.xxx" for binary #2

str=space$(lof(#1))

get #1, , str

put #2, lof(2)+1, str

ثم نستخدم باقي خطوات الطريقة السابقة باضافة حجم الملف واسمه

ويبقى الاهم وهي فك المفات

انتظروني

:o

#7

أحسنت أخي

#8

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته

ألا تسائلت عن فائدة هذا الرنامج بوجود برنامج setup1.exe المدمج مع الفيجوال !!!!!!!!!!!!!!

الجواب صحيح ان مشكلة الفيجوال بيسيك يحتاج الى ملفات مساعدة حتى يعمل فبذلك لا نستفيد شي ولكن -----------------

ممكن تجاهل هذه النقطة باستعمال ملف .dll مساعد له في نفس البرنامج بحيث يصبح ملف واحد فدائماً تجد ملف واحد وعندما تفتحه يقوم باضافة ملفات من نفس الملف .

هل يمكن ذلك في الفيجوال ؟

نعم ، وهذا ما سوف اتطرق اليه في نهاية المطاف ان شاء الله

:o

#9

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته

ارفق البرنامج واتركه لكم ،،،

ملحوظة

البرنامج لضييق الوقت وقوته اكتفيت بملف واحد

ارجوا ان تدرسوا الاوامر وتطورها وانا متأكد من أنه بدائي ولكن ارجوا المعذرة

:o

1.zip

#10

:o

#11

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته

هل البرنامج اعجبكم ؟ هل هو مفيد ؟

ارجو الرد حتى اكمل الشرح !!!!!!!!!!!

:o

#12

السلام عليكم ورحمة الله وبركاته

يوجد ملف باسم upx يقوم بتقليل حجم الملفات الى تقريبا النصف

انتظروني حتى اكمل الشرح

وارجو المعذرة لاني مشغول ببرنامج عمل نافذة دائرية ومشابهه ذلك

:o

#13

السلام عليكمن ورحمة الله وبركاته

كل عام وانتم بخير ،،،،،،

هذا برنامج لضغط الملفات بدون تغير اسمها لتقليل حجمها

وهذا انزلته من الموقع الرسمي للشركة upx

#14

هذا هو الملف

upx.rar

#15

السلام عليكم ورحمةالله

كل عام وانتم بخير

كيفية استخدام برنامج upx

upx -نوع الضغط اسم الملف

مثلا

upx -1 *.*

الامر هذا يضغط جميع الملفات الموجودة في نفس الدليل

ملاحظة لتعديل الامر الاجنيي

اضغط زر alt +shift

#16

شكرا

تم تعديل هذه المشاركة بواسطة سلطان2002 في 27 نوفمبر 2006 في 04:47

هذا الموضوع مغلق.

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