فایل Batchی که قصد نوشتن آن را داریم از دستور Start برای اجرای فایلهای Setup کمک میگیرد؛ اما همانطور که میدانید در فایلهای Batch، دستورات پشت سر هم اجرا میشوند لذا با استفادهی مستقیم از دستور Start تمامی فایلهای نصبی با هم اجرا میشوند که چنین چیزی نه تنها راهحل نیست بلکه مشکل جدیدی برای ما میسازد!
راهحلی که ما پیش روی شما میگذاریم استفاده از سوییچ w/ به همراه دستور Start میباشد. این سوییچ، تا اتمام برنامهی اجرا شده به وسیلهی دستور Start صبر خواهد کرد و پس از آن دستور بعدی اجرا خواهد شد.
برای این کار:
دکمههای Win+R را فشرده (ترفندستان) و سپس عبارت Notepad را تایپ نمایید. با فشردن دکمهی Enter، ویرایشگر Notepad باز خواهد شد.
حال کد زیر را عیناً Copy کرده و در محیط Paste،Notepad نمایید:@echo off
start /w D:SoftwareSetup1.exe
start /w D:SoftwareSetup2.exe
start /w D:SoftwareSetup3.exe
دقت داشته باشید که مسیر فایلهای نصبی مدنظرتان را در کد بالا تغییر دهید.
پس از کپی کردن کد، از منوی File بر روی Save as کلیک کنید. سپس فایل را با نام دلخواه و پسوند bat. و در محلی به دلخواه خود ذخیره نمایید (به عنوان مثال نام آن را Tarfandestan.bat قرار دهید).
با اجرای فایل Batch فوق، فایل نصبی برنامهی اول اجرا شده و پس از اتمام نصب، فایل Setup دوم اجرا میشود و به همین ترتیب ادامه مییابد.
برای نوشتن این Batch File، روش حرفهایتری نیز میتوانیم پیش بگیریم؛ به این صورت که مسیر تمامی فایلهای نصبی را در یک فایل متنی ذخیره کرده و سپس با کدنویسی و استفاده از حلقهی FOR، فایل Batch را مجبور به خواندن خط به خط فایل متنی میکنیم.
با این کار، برای اضافه نمودن برنامه جدید کافی است (ترفندستان) مسیر فایل جدید را به فایل متنی اضافه کنید و دیگر نیازی به ویرایش فایل Batch ندارید.
برای این کار:
Notepad را باز کرده و در هر خط، مسیر فایل Setup را بنویسید و آن را با پسوند TXT و نام دلخواه ذخیره نمایید. به عنوان مثال با محتوای زیر و با نام Install.txt:
D:SoftwareSetup1.exe
D:SoftwareSetup2.exe
D:SoftwareSetup3.exe
سپس فایل Batch خود را در کنار فایل متنی و با محتویات زیر ذخیره کنید:
@echo off
setlocal enabledelayedexpansion
for /F "delims=" %%a in (Install.txt) do (
set /A count+=1
set "array[!count!]=%%a"
)
for /L %%i in (1,1,%count%) do start /w !array[%%i]!
با اجرای این این اسکریپت، مشابه اسکریپت قبلی فایل نصبی برنامهی اول اجرا شده و پس از اتمام نصب، فایل Setup دوم اجرا میشود و به همین ترتیب ادامه مییابد.