ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
26 visibility
موضوع: ویندوز توسط:
اگر تا به حال حدس نمی زدید، فایل های دسته ای می توانند به عنوان یک نوع ابتدایی زبان برنامه نویسی عمل کنند. یکی از مواردی که زبان های برنامه نویسی مدرن ارائه می دهند، توانایی ماژولار کردن کد به قطعات کوچک است تا در صورت تغییر یک قطعه، خطر تغییر تصادفی کدهای نامرتبط را نداشته باشید. می‌توانید یک فایل دسته‌ای بزرگ را با شکستن آن به فایل‌های کوچک‌تر و استفاده از دستور CALL برای فراخوانی ماژول‌های جداگانه در صورت نیاز مدولار کنید.
بیایید یک سیستم منو را در نظر بگیریم که به کاربر اجازه می دهد هر یک از تعدادی از عملکردها را فراخوانی کند. کاری که ما انجام خواهیم داد این است که هر یک از توابع را در فایل دسته ای خود قرار دهیم و از دستور CALL در فایل دسته ای منوی اصلی برای فراخوانی تابع انتخاب شده استفاده کنیم، که سپس به منو برمی گردد تا کاربر بتواند عملکرد دیگری را انتخاب کند.
Menu.bat ممکن است شبیه به این باشد:
@ECHO OFF :TOP CLS ECHO Welcome to the Main Menu! Here are your choices... ECHO. ECHO A) Perform Function A B) Perform Function B ECHO C) Perform Function C D) Perform Function D ECHO. ECHO Q) Quit ECHO. CHOICE /C ABCDQ GOTO %ERRORLEVEL% :5 GOTO :EOF :4 CALL FuncD.bat GOTO TOP :3 CALL FuncC.bat GOTO TOP :2 CALL FuncB.bat GOTO TOP :1 CALL FuncA.bat GOTO TOP
و در اینجا چیزی است که FuncA.bat ممکن است شبیه باشد:
ECHO This is Function A PAUSE
با وجود این واقعیت که هیچ چیز جالبی در اینجا اتفاق نمی افتد، این شروع یک چارچوب مناسب برای یک سیستم منوی مبتنی بر دستور است. و چند مورد وجود دارد که باید مورد توجه قرار گیرد. با کار از بالا به پایین، اولین دستور جدیدی که با آن مواجه می شویم دستور CLS است. این دستور ساده فقط صفحه را پاک می کند تا منوی ما همیشه به خودی خود خوب ظاهر شود. چشم فهیم همچنین متوجه برخی از جملات ECHO می شود که بلافاصله پس از آن یک نقطه می آید. به این صورت یک خط خالی تولید می کنید. یکی دیگر از موارد جدید برچسب داخلی:EOF است. این امر نیاز به اعلام برچسب خود را که به عنوان آخرین خط فایل وجود دارد (مانند برچسب ":Done" من که در سایر نکات استفاده می شود) را برطرف می کند.
این ما را به بیانیه های CALL می برد. پارامتر مشخص شده با CALL نام فایل دسته ای است که قرار است بعدا فراخوانی شود. بنابراین، برای مثال، اگر کاربر گزینه A را از منو انتخاب کند، فایل دسته ای بلافاصله به برچسب :1 می رود که باعث می شود FuncA.bat در مرحله بعدی فراخوانی شود. فایل FuncA.bat من به سادگی یک خط را ECHO می کند و یک PAUSE را انجام می دهد. دستور PAUSE باعث می شود یک خط خروجی ایجاد شود که می گوید "برای ادامه هر کلید را فشار دهید...". سپس اجرای فایل دسته ای را تا زمانی که کاربر کلیدی را فشار دهد به حالت تعلیق در می آورد. هنگامی که یک کلید فشار داده می شود، فایل دسته ای ادامه می یابد، که در این مورد به این معنی است که FuncA.bat پایان می یابد و کنترل مجدداً در فایل دسته ای منوی اصلی در خط بلافاصله پس از تماس با FuncA.bat از سر گرفته می شود. بنابراین اتفاق بعدی GOTO TOP است که همه چیز را از نو شروع می کند.
توجه داشته باشید که لازم نیست «@ECHO OFF» دیگری را در بالای FuncA.bat قرار دهید زیرا حالت ECHO هنگام فراخوانی FuncA.bat حفظ می‌شود.
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوال مشابهی یافت نشد

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما

23.2k سوال

8.5k پاسخ

613 دیدگاه

10.5k کاربر

117 نفر آنلاین
0 عضو و 117 مهمان در سایت حاضرند
بازدید امروز: 4466
بازدید دیروز: 12869
بازدید کل: 18874937
...