الدرس الرابع في دورة تعليم autoit

ناصر بعزيز

Administrator
طاقم الإدارة
إنضم
7 أغسطس 2018
المشاركات
646
مستوى التفاعل
666
النقاط
93
الإقامة
الجزائر
الموقع الالكتروني
mx-blind.com
الجنس
ذكر
نظام التشغيل
Windows10
قارئ الشاشة المستخدم
jaws
بسم الله الرحمان الرحيم
والصلاة والسلام على أشرف الخلق والمرسلين
أما بعد فأيها الكرام
زوار منتديات شؤون الكفيف العربي
السلام عليكم ورحمة الله تعالى وبركاته
أهلا وسهلا ومرحبا بكم في الدرس الرابع في الدورة الخاصة بتعليم لغة autoit
كنا قد تعرفنا على اللغىة من خلال المقدمة
ثم تعرفنا في الدرسين الأول والثاني على أهم أقسام وأساسيات هذه اللغة
وبعدها في الدرس الثالث تعرفنا على المتغيرات النظامية
وكنت قد قلت لكم أن هذا الدرس هو مهم جدا حيث سنعود إلى الأوامر الموجودة فيه في أغلب الدروس
والمتغيرات النظامية تعتبر شيء هام جدا جدا
حيث تغنينا عن كتابة أكواد كثيرة
ونحتاجها في أي برنامج نريد تصميمه تقريبا
فلذا عزيزي إن كنت لم تقرء الدرس الثالث فيُرجا التوجه إلى

الدرس الثالث في دورة تعلم autoit – مدونة شؤون الكفيف العربي

للعودة إلى الدرس الثالث

أما الآن فدعونا نبدء مع الدرس الرابع

صراحة كنت حائر من أي باب سندخل إلى هذه اللغة
وبعد تفكير طويل قررت أن أدخل من الباب المهم جدا
والذي هو إدارة الملفات والمجلدات
لأننا كلنا نحتاج لنقل ملفات أو حذفها أو إنشائها أو الكتابة على ملف …إلخ
ونفس الشيء بالنسبة للمجلدات
لاكن أيها القارء الكريم عليك أن تكن قد قرأت الدرس الأول والثاني حتى تفهم ما سنقوم به
لأن كل اللأوامر التي سنتعلمها مع بعضنا البعض من اليوم فصاعدا ستكن مرتبطة بالثلاث دروس الأولى
لذا أرجوك إن لم تكن قد قرأتها فيرجا الإضطلاع عليها.
وخاصة اليوم فسنعتمد على قسم الدوال
حيث كل أوامر الخاصة بإدارة الملفات والمجلدات هي عبارة عن دوال معرفة لدى اللغة.
والآن إليكم رابط الشرح الكامل من المدونة :
الدرس الرابع في دورة تعليم autoit – مدونة شؤون الكفيف العربي
إخواني الكرام أحب أن أذكر بأن من يملك إستفسار في هذه اللغة أو لم يفهم أي جزئية في الدروس فيمكنه التعليق في الموضوع كما يمكنه إنشاء موضوع جديد وطرح إشكاله فيه
ختاما أتمنا لكم تصفح ممتع ومفيد
تحياتي لكم أيها الكرام
 
السلام عليكم كل ما حاولت نقل ملف تظهر لي هذهي الرسالة
Line 1 (File "F:\user name.exe"):


Error: Error in expression.
 
السلام عليكم كل ما حاولت نقل ملف تظهر لي هذهي الرسالة
Line 1 (File "F:\user name.exe"):


Error: Error in expression.
أخي العزيز رجاءا أعطني الكود الذي إستخدمته كي أعطيك المشكلة أين تحياتي
 
هذا هو الكود filecopy ("f:\test.wave", "c:\test")
 
أخي العزيز إذا كنت تقصد تريد نقله إلى مجلد إسمه test فيجب أن يكن المجلد موجود أو تقم بإضافة الإشارة التالية
رقم 8 لإنشاء المجلد
ورقم 1 لإستبدال الملف إن كان موجود
أي تصبح هكذا
كود:
fileCopy("f:\test.wave", "c:\test", 1 + 8)

وإذا أردت أن تضعه في C مباشرة فعليك بإعطاء الملف صيغة أو عدم كتابة الإسم أصلا إذا كنت تريد أن يبقى بنفس الإسم
ها هنا سأكتب لك المثالان
كود:
fileCopy("f:\test.wave", "c:\test.wav", 1)
و
كود:
fileCopy("f:\test.wave", "c:\", 1)

تحياتي إليك أخي
 
التعديل الأخير بواسطة المشرف:
أستاذي... أشكرك على هذا الطرح الجميل
ولكن: ماذا لو أردت حذف محتويات مجلد معين يحتوي على مجموعة عناصر , هذه العناصر عبارة عن خليط بين ملفات ومجلدات , أريد حذف هذه العناصر مع الإبقاء على المجلد الأساسي
وكذلك لو أردت نسخ محتويات مجلد معين إلى مجلد آخر , كيف لي أن أستبدل المجلدات والملفات معًا
حيث لاحظت بأن اللغة تتعامل في عملية النسخ والاستبدال مع الملفات فقط
 
أستاذي... أشكرك على هذا الطرح الجميل
ولكن: ماذا لو أردت حذف محتويات مجلد معين يحتوي على مجموعة عناصر , هذه العناصر عبارة عن خليط بين ملفات ومجلدات , أريد حذف هذه العناصر مع الإبقاء على المجلد الأساسي
وكذلك لو أردت نسخ محتويات مجلد معين إلى مجلد آخر , كيف لي أن أستبدل المجلدات والملفات معًا
حيث لاحظت بأن اللغة تتعامل في عملية النسخ والاستبدال مع الملفات فقط
أخي العزيز
أولا أشكرك على متابعتك للدورة
ثانيا أخي لحذف مجلد يكفي كتابة DirRemove
وفي المسار تضيف \
وإذا أردت نسخ محتوى مجلد فيمكنك إستخدام DirCopy
أتمنا أن أكن قد فهمت طلبك ولبيت لك ما تريد
وإلا فيرجى إبلاغي بذالك
تحياتي
 
أخي العزيز
أولا أشكرك على متابعتك للدورة
ثانيا أخي لحذف مجلد يكفي كتابة DirRemove
وفي المسار تضيف \
وإذا أردت نسخ محتوى مجلد فيمكنك إستخدام DirCopy
أتمنا أن أكن قد فهمت طلبك ولبيت لك ما تريد
وإلا فيرجى إبلاغي بذالك
تحياتي
جزيل الشكر لك أستاذي على سرعة التجاوب.
حقيقة أنا جربت إضافة علامة \ قبل طرح السؤال , لكن للأسف يقوم السكريبت بحذف المجلد كاملًا
وأنا أريده أن يحذف المجلدات التي بداخل المجلد نفسه
اسمحلي بسؤال آخر؟
كما تعلم أنه في ويندوز 64 بت هنالك مجلدين program files
الآن أنا أريد العمل على مجلد program files x86 وأريد أن يعمل السكريبت أيضًا على أجهزة 32 بت
فالآن عندما أستخدم المتغير الخاص بمسار مجلد program files فإنه ينتقل مباشرة إلى مجلد program files في نظام 64 بت
السؤال كيف أستطيع الدخول على program files x86 وفي نفس الوقت يعمل السكريبت على أجهزة 32 بت
أتمنى أن يكون السؤال واضح
 
جزيل الشكر لك أستاذي على سرعة التجاوب.
حقيقة أنا جربت إضافة علامة \ قبل طرح السؤال , لكن للأسف يقوم السكريبت بحذف المجلد كاملًا
وأنا أريده أن يحذف المجلدات التي بداخل المجلد نفسه
اسمحلي بسؤال آخر؟
كما تعلم أنه في ويندوز 64 بت هنالك مجلدين program files
الآن أنا أريد العمل على مجلد program files x86 وأريد أن يعمل السكريبت أيضًا على أجهزة 32 بت
فالآن عندما أستخدم المتغير الخاص بمسار مجلد program files فإنه ينتقل مباشرة إلى مجلد program files في نظام 64 بت
السؤال كيف أستطيع الدخول على program files x86 وفي نفس الوقت يعمل السكريبت على أجهزة 32 بت
أتمنى أن يكون السؤال واضح
أخي الفاضل أهلا
بك
أولا عندي اقتراح بالنسبة لحذف المجلد
أخي بإمكانك أن تحذفه ثم تعيد إنشائه عادي وبدون أي مشاكل
ثانيا بخصوص المسار
أخي أنت بحاجة إلى عمل دالة شرطية لتنفيذ هذه المهمة
وهي كما يلي
كود:
if @OSArch = "x86" then
dirCopy("test", @ProgramFilesDir & "\test")
else
dirCopy("test", @SystemDrive & "\Program Files (x86)\test")
endIf
حيث
@OSArch
هو المتغير الذي يدل على نوت النظام
ويمكن أن يكن
x64 أو x86
ومتغير @SystemDrive هو الذي يدل على القرص الذي مثبت فيه النظام
أما @ProgramFilesDir
فهو الخاص بمسار program files
أتمنا أن يكن الأمر واضح
أنا تحت خدمتك
 
السلام عليكم ورحمة الله وبركاته
أشكرك أخي الكريم
لطفا كان لدي سؤال في هذا الدرس
مثلا أريد نقل ملف سواء صوتي أو نصي
من أحد الأقراص وليكن القرص C
إلى سطح المكتب
فكيف تكون العبارة
ولدي تدخل حول الاشارتين 1 & 8
هما يمكننا جمعهما في رقم تسعة وسنحصل على نفس النتيجة ان شاء الله
أكرر شكري لك أخي الكريم
 
عودة
أعلى