PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : بسته شدن اتومات یک نرم افزار در ویندوز



ali215215
November 7th, 2017, 17:04
سلام
کسی ،نرم افزاری سراغ دارد تا در یک زمان مشخص بتواند ،یک نرم افزار دیگر را کلا و به اجبار ببندد
مثلا در ساعت 7 صبح ،نرم افزار اکسل را به اجبار ببندد و خود ویندوز و سایر نرم افزارها باز باشند
با تشکر

AtrafNet
November 7th, 2017, 18:44
سلام
تو ویندوز با ابزار Task Scheduler می تونید کار هایی رو که می خواین مثل Cronjob در هاست زمان بندی کنید.
اما برای انجام کار های مورد نظرتون حداقل باید استفاده از دستورات DOS در فایل های BAT. رو بلد باشید و آدرس همون فایل BAT. رو به این ابزار جهت اجرای زمان بندی شده بدید.
مثلاً برای بستن نرم افزار Excel در یه فایل BAT. میشه از دستور زیر استفاده کرد:



taskkill /f /im excel.exe


این دستور بالا رو تو cmd ویندوز هم بزنید نرم افزار Excel رو بدون هیچ پرسشی می بنده و به اصطلاح Kill Process انجام میده.
فایل های BAT. هم حتماً می دونید همون کار های داخل cmd رو میشه باهاشون کرد با این تفاوت که می تونن چندین دستور از قبل آماده داخل خودشون داشته باشن و با یه Notepad ساده هم میشه این فایل ها رو ساخت یا ویرایش کرد.
برای پیدا کردن نام فایل اصلی پروسه نرم افزار دیگه ای هم فقط تو Task Manager ویندوز روش راست کلیک کنید و Open File Location بزنید براحتی نام فایل اصلی EXE. نرم افزار که اجرا میشه رو پیدا میکنید و می تونید با این دستور ببندینش.
در آخر با همون ابزار Task Scheduler ویندوز این فایل رو به صورت زمان بندی شده مثلاً هر روز ساعت 7 صبح که خودتون گفتید می تونید برنامه ریزی کنید که خودکار اجرا بشه.


اما اگه دستورات CMD برای کار های شما کافی نیست می تونید از نرم افزار های Macro نویسی که صرفاً برای همین کار ساخته شدن استفاده کنید مثل نمونه های زیر:

https://soft98.ir/software/17171-JitBit-Macro-Recorder.html
https://soft98.ir/software/1759-macro-express-pro-4-2-1-1.html
https://soft98.ir/software/16643-vTask-Studio.html
و...

فقط من زیاد با این نرم افزار ها کار نکردم و نمی دونم کدومش بهتره خودتون باید تست کنید :)

ali215215
November 7th, 2017, 18:53
با تشکر
من هر چی دیدم همان ساخت فایل bat است
ولی زمان بندیش را نفهمیدم چطوری است
مثلا چطوری بگیم ساعت 4 اکسل را ببند؟

Raspberry PI
November 7th, 2017, 18:53
خود ویندوز چنین امکانی ولی برای اجرا برنامه نه بستن اون
شما میتونین از طریق خط فرمان با دستور tkill برنامه ها رو ببندین یا از کد زیر استفاده کنین و با schedule task ویندوز اون زمانبندی کنین



Get-Process | Where Name –Like “excel*” | Stop-Process

ali215215
November 7th, 2017, 18:56
خود ویندوز چنین امکانی ولی برای اجرا برنامه نه بستن اون
شما میتونین از طریق خط فرمان با دستور tkill برنامه ها رو ببندین یا از کد زیر استفاده کنین و با schedule task ویندوز اون زمانبندی کنین



Get-Process | Where Name –Like “excel*” | Stop-Process
من می خواهم یک پروفایل ساخته شده در مروگر را در ساعت مشخص ببندم- چی باید بزنم
مثلا برای فایر فاکس یک پروفایل ساختم به اسم ali -حالا میخواهم ان را ببندم و البته پروفایل مثلا دومی به اسم ali2 بسته نشه
با تشکر

AtrafNet
November 7th, 2017, 19:04
من می خواهم یک پروفایل ساخته شده در مروگر را در ساعت مشخص ببندم- چی باید بزنم
مثلا برای فایر فاکس یک پروفایل ساختم به اسم ali -حالا میخواهم ان را ببندم و البته پروفایل مثلا دومی به اسم ali2 بسته نشه
با تشکر

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

ببینید شما تست کنید ببینید با Task Manager خود ویندوز می تونید پروفایل های مختلف فایرفاکس رو بدون بسته شدن خود فایرفاکس ببندید یا نه؟ اگر Task Manager تونست یعنی راهی هست اما اگه نتونست به نظرم بهتره دو تا مرورگر رو جدا جدا باز بذارید و در همون 7 صبح که گفتید یکی از اونا رو ببندید.

اگه کلاً دو تا مرورگر متفاوت باشن که خیلی ساده تر میشه مثلاً یکیش فایرفاکس باشه یکی کروم.
یا حتی اگه فقط با فایرفاکس میشه انجامش داد می تونید Waterfox یا سایر مرورگر های مبتنی بر فایرفاکس که می تونید تو بخش مرورگر های سایت soft98.ir پیدا کنید رو نصب کنید اینطوری هم امکانات فایرفاکس رو دارید و هم دو تا مرورگر جدا که بشه به صورت مجزا پروسه هاشون رو بست.

برای زمان بندی کردن هم بالاتر توضیح دادم که ابزار Task Scheduler ویندوز رو تو منوی استارت سرچ کنید میاد وقتی اجراش کردید از منوی Action می تونید Create Basic Task رو انتخاب کنید و Wizard افزودن Task رو پیش ببرید و پس از تعیین زمان بندی و نوع اجرای Task آدرس فایل BAT. رو برای اجرا بهش بدین.

ali215215
November 7th, 2017, 19:08
فکر نکنم فایرفاکس برای هر پروفایل پروسه جدا بسازه و بشه جدا جدا توسط برنامه دیگه ای بسته شون.

ببینید شما تست کنید ببینید با Task Manager خود ویندوز می تونید پروفایل های مختلف فایرفاکس رو بدون بسته شدن خود فایرفاکس ببندید یا نه؟ اگر Task Manager تونست یعنی راهی هست اما اگه نتونست به نظرم بهتره دو تا مرورگر رو جدا جدا باز بذارید و در همون 7 صبح که گفتید یکی از اونا رو ببندید.

اگه کلاً دو تا مرورگر متفاوت باشن که خیلی ساده تر میشه مثلاً یکیش فایرفاکس باشه یکی کروم.
یا حتی اگه فقط با فایرفاکس میشه انجامش داد می تونید Waterfox یا سایر مرورگر های مبتنی بر فایرفاکس که می تونید تو بخش مرورگر های سایت soft98.ir پیدا کنید رو نصب کنید اینطوری هم امکانات فایرفاکس رو دارید و هم دو تا مرورگر جدا که بشه به صورت مجزا پروسه هاشون رو بست.

برای زمان بندی کردن هم بالاتر توضیح دادم که ابزار Task Scheduler ویندوز رو تو منوی استارت سرچ کنید میاد وقتی اجراش کردید از منوی Action می تونید Create Basic Task رو انتخاب کنید و Wizard افزودن Task رو پیش ببرید و پس از تعیین زمان بندی و نوع اجرای Task آدرس فایل BAT. رو برای اجرا بهش بدین.

------------------------
اره 2 تا می سازد ،ولی در تکست منیجیر ،هم اسم هستند-چون هر پروفایل کلا مستقل است با بقیه
توی دستور زمانی میشه بگیم هر روز اتومات این کار را بکند؟
ممنون

AtrafNet
November 7th, 2017, 19:26
------------------------
اره 2 تا می سازد ،ولی در تکست منیجیر ،هم اسم هستند-چون هر پروفایل کلا مستقل است با بقیه
توی دستور زمانی میشه بگیم هر روز اتومات این کار را بکند؟
ممنون


آره دیگه اون Task رو می تونید از نوع Daily که میشه روزانه تعیین کنید و بعدش تو مرحله بعد بهش ساعت بدید دقیق روزانه همون ساعت انجام میشه.

فقط اینکه گفتید فایرفاکس برای هر پروفایل پروسه جدا میسازه و گفتید اسماشون تو Task Manager متفاوته پس یعنی باید بر اساس عنوان (Title) پنجره همون اسمی که Task Manager نشون میده ببندیمشون.

برای همین من با کمی سرچ به این کد رسیدم که براحتی با ارائه تیکه ای از عنوان یه پنجره براتون پروسه اونو می بنده:



for /f "tokens=2 delims=," %%a in (
'tasklist /v /fo csv ^| findstr /i "Untitled"'
) do (
set "pid=%%~a"
)
taskkill /f /pid %pid%


این کد هم باید توی یه فایل BAT. ذخیره و اجرا بشه.
همچنین به جای Untitled که پر رنگ و قرمزش کردم باید اسم پروفایل فایرفاکس که گفتید تو Task Manager نشون میده رو بنویسید من اینجا چون داشتم با پروسه های مختلف Notepad تست میکردم نوشتم Untitled.

منبع کد (ترکیبی از این دو لینک):
https://stackoverflow.com/questions/44330587/getting-pid-from-running-bat-script
https://stackoverflow.com/questions/1982662/how-can-i-kill-child-process-using-taskkill-in-a-batch-script

ali215215
November 7th, 2017, 19:38
آره دیگه اون Task رو می تونید از نوع Daily که میشه روزانه تعیین کنید و بعدش تو مرحله بعد بهش ساعت بدید دقیق روزانه همون ساعت انجام میشه.

فقط اینکه گفتید فایرفاکس برای هر پروفایل پروسه جدا میسازه و گفتید اسماشون تو Task Manager متفاوته پس یعنی باید بر اساس عنوان (Title) پنجره همون اسمی که Task Manager نشون میده ببندیمشون.

برای همین من با کمی سرچ به این کد رسیدم که براحتی با ارائه تیکه ای از عنوان یه پنجره براتون پروسه اونو می بنده:



for /f "tokens=2 delims=," %%a in (
'tasklist /v /fo csv ^| findstr /i "Untitled"'
) do (
set "pid=%%~a"
)
taskkill /f /pid %pid%


این کد هم باید توی یه فایل BAT. ذخیره و اجرا بشه.
همچنین به جای Untitled که پر رنگ و قرمزش کردم باید اسم پروفایل فایرفاکس که گفتید تو Task Manager نشون میده رو بنویسید من اینجا چون داشتم با پروسه های مختلف Notepad تست میکردم نوشتم Untitled.

منبع کد (ترکیبی از این دو لینک):
https://stackoverflow.com/questions/44330587/getting-pid-from-running-bat-script
https://stackoverflow.com/questions/1982662/how-can-i-kill-child-process-using-taskkill-in-a-batch-script
با تشکر درست شد
فقط باید جای پروفایل ها را عوض کنم

ali215215
November 7th, 2017, 21:15
الان یک سوال؟
کلا افزونه ای توی فایر فاکس سراغ ندارید تا بتونه ،سر یک ساعت مشخص تب ها را اتومات ببند یا کلا مرورگر را ببنده- اگر همچین افزونه ای باشدخیل بهتر است برای کار من
با تشکر

AtrafNet
November 8th, 2017, 09:24
الان یک سوال؟
کلا افزونه ای توی فایر فاکس سراغ ندارید تا بتونه ،سر یک ساعت مشخص تب ها را اتومات ببند یا کلا مرورگر را ببنده- اگر همچین افزونه ای باشدخیل بهتر است برای کار من
با تشکر

من گشتم متاسفانه چنین افزونه ای برای فایرفاکس نیست.
افزونه هایی که تب ها رو می بندن معمولاً بر اساس تایم بی کاری و استفاده نشدن اون تب ها می بندنشون مثلاً این https://addons.mozilla.org/en-US/firefox/addon/dustman میشه تو تنظیماتش تنظیم کرد اگه هر تب فلان دقیقه استفاده نشد بسته بشه.
اما بازم اون طوری که شما می خواین سر یه ساعت خاص پیدا نکردم برعکس هست که با افزونه https://addons.mozilla.org/en-US/firefox/addon/my-weekly-browsing-schedule میشه زمان بندی کرد یه سری تب ها براتون باز بشن اما برای بسته شدن کاری نمی تونه کنه.

به نظرم فعلاً تنها راهش همین راه قبلیه که با فایل BAT. بود.

ShirazSoft.com
November 18th, 2017, 08:08
سلام
از Robo Task و نرم افزار AutoIT استفاده کنید من قبلا این کار را انجام دادم و جواب کارم را داد.

ali215215
May 20th, 2018, 03:08
سلام
تو ویندوز با ابزار Task Scheduler می تونید کار هایی رو که می خواین مثل Cronjob در هاست زمان بندی کنید.
اما برای انجام کار های مورد نظرتون حداقل باید استفاده از دستورات DOS در فایل های BAT. رو بلد باشید و آدرس همون فایل BAT. رو به این ابزار جهت اجرای زمان بندی شده بدید.
مثلاً برای بستن نرم افزار Excel در یه فایل BAT. میشه از دستور زیر استفاده کرد:



taskkill /f /im excel.exe


این دستور بالا رو تو cmd ویندوز هم بزنید نرم افزار Excel رو بدون هیچ پرسشی می بنده و به اصطلاح Kill Process انجام میده.
فایل های BAT. هم حتماً می دونید همون کار های داخل cmd رو میشه باهاشون کرد با این تفاوت که می تونن چندین دستور از قبل آماده داخل خودشون داشته باشن و با یه Notepad ساده هم میشه این فایل ها رو ساخت یا ویرایش کرد.
برای پیدا کردن نام فایل اصلی پروسه نرم افزار دیگه ای هم فقط تو Task Manager ویندوز روش راست کلیک کنید و Open File Location بزنید براحتی نام فایل اصلی EXE. نرم افزار که اجرا میشه رو پیدا میکنید و می تونید با این دستور ببندینش.
در آخر با همون ابزار Task Scheduler ویندوز این فایل رو به صورت زمان بندی شده مثلاً هر روز ساعت 7 صبح که خودتون گفتید می تونید برنامه ریزی کنید که خودکار اجرا بشه.


اما اگه دستورات CMD برای کار های شما کافی نیست می تونید از نرم افزار های Macro نویسی که صرفاً برای همین کار ساخته شدن استفاده کنید مثل نمونه های زیر:

https://soft98.ir/software/17171-JitBit-Macro-Recorder.html
https://soft98.ir/software/1759-macro-express-pro-4-2-1-1.html
https://soft98.ir/software/16643-vTask-Studio.html
و...

فقط من زیاد با این نرم افزار ها کار نکردم و نمی دونم کدومش بهتره خودتون باید تست کنید :)
---------------------
بخواهیم به جای بستن ، ری استارت مروگر اتفاق بیافتد باید چکار کرد؟
ری استارت یعنی با داس بسته بشه و مروگر دورباه باز بشه
ممنون