Затримка запуску програм Windows під час завантаження?


15

У Windows XP я використовую 18 програм. У запуску це потрібно 2-3 хвилини, щоб завантажити їх усі. Антивірус, перекладач, розблокувальник, індексний файл, менеджер завантажень, миттєвий месенджер тощо.

Мені потрібні всі вони, і вони знаходяться на системному треї Windows, чекаючи мене. Тому я не можу видалити одну з них, оскільки я їх часто використовую. 5-6 разів на день.

Але вони мені не потрібні у запуску. Тож як я можу затримати завантаження цих програм.

Наприклад: - Антивірус, індекс-індекс: при запуску - Перекладач, менеджер завантажень, розблокувальник: через 5 хвилин після запуску тощо.

Які рішення ви рекомендуєте?

Відповіді:


11

Запуск Delayer виконує завдання: http://www.r2.com.au/page/products/show/startdelay


Спасибі. Відмінна програма з прекрасним інтерфейсом. Зауважте, що це працює лише для програм, які запускаються, а не речей, доданих до оболонки: запуску, я вважаю. Для цього також потрібні права адміністратора, і сама програма повинна запускатися при запуску. Здається, безкоштовної версії для мене більш ніж достатньо.
Сануо

6

Замість команди ping, яку запропонував Джеффі раніше в Windows XP / Vista / 2008, я використовую команду timeout у пакетному файлі.

Синтаксис: timeout /t seconds

@echo off

rem for 5mins delay..

timeout /t 300

rem starting delayed start programs

start cmd /C "C:\Some\Path\To\A\Program.exe"

start cmd /C "C:\Some\Path\To\A\Shortcut.lnk"

start notepad

PS Якщо ви не хочете бачити зворотний відлік, ви можете відкинути вихід таким чином: timeout /t 300 > nul


1
Було б добре, якби це не було, тому що timeoutвін не доступний у Windows XP ...
Пер

3
  1. Створіть пакетний файл під назвою "5minsdelayStart":

    @echo off
    рема спить протягом 300000 мілісекунд (5 хвилин)
    ping -n 1 -w 300000 -4 10.0.0.0> NUL
    
    rem запуск програм із затримкою запуску
    start cmd / C "C: \ Some \ Path \ To \ A \ Program.exe"
    start cmd / C "C: \ Some \ Path \ To \ A \ Shortcut.lnk"
    
  2. Замініть команди внизу на те, що потрібно запустити після затримки на 5 хвилин.

  3. Додати цей пакетний файл у вашу папку запуску.

Примітка . Ви можете замість цього створити ярлик до пакетного файлу, а потім встановити параметри запуску, щоб запустити пакетний файл мінімізованим. Ви будете мати командний рядок у фоновому режимі в будь-якому випадку, але принаймні, якщо його мінімізувати, це не буде занадто великим вторгненням!

Крім того, якщо з якоїсь причини у вашій мережі 10.0.0.0 насправді переходить на щось дійсне, ви повинні змінити цю IP-адресу на щось інше (до якого немає маршруту).


Я не можу ніде в документах знайти, що означає 3-й параметр (-4), але він, безумовно, робить щось, як команда працює належним чином, і не видає помилки. Чи не могли б ви нам підказати?
Пер

2

Власне, обидві відповіді мають свої достоїнства. Встановлення фіксованої затримки в часі може не відповідати вашим інтересам, оскільки потреби змінюються з часом. Будь-яка встановлена ​​затримка, щоб ініціювати решту завантаження відразу, може бути навіть незручнішою, ніж запускати їх у той час, коли ви робите звичайне "Зачекайте Windows".

Я б подумав додати аргумент "продовжувати чекати? Y / N" до партії, якщо у вас є багато елементів. Або ви можете дозволити це автоматичне розширення з тимчасовим часом на основі активності. (тобто зачекайте, поки не продовжуватиметься дія клавіатури). У будь-якому випадку, якщо ви не зробите це на всій партії (кожна як окрема приурочена дія), ви можете виявити, що запустити це все 5 хвилин після завантаження буде таким же поганим або навіть гіршим, ніж запустити його до початку роботи.

Я думаю, що якщо все це абсолютно необхідно, можливо, найкраще розмістити їх у послідовності з 1 за часом, кожен з яких перевіряється, щоб перевірити, чи немає активності, а потім наступний. Звичайно, ви тільки знаєте, які потрібні при запуску. Деякі можуть не знадобитися взагалі для певних швидких епізодів включення / вимкнення. Якщо розмістити їх у правильному порядку, вони ніколи не будуть досягнуті до вимкнення живлення.

Інша можливість - прив’язати навантаження до необхідності того, що завантажено. Якщо ви не збираєтеся в Інтернеті або не користуєтеся електронною поштою або іншою діяльністю "з високим ризиком", ви можете не завантажувати AV-програмне забезпечення. Додавання команди "Запустити це першим, якщо вже не запущено" до цих заходів може призвести до значного збільшення швидкості для локальних ігор чи чогось іншого, що не потрібно було перевіряти та перевіряти для кожного ходу. Просто прив’яжіть запуск до програми, яка її потребує.

Іншим варіантом, який слід врахувати, було б встановити стільки, скільки можна зробити, щоб "запустити послугу", оскільки для активізації зазвичай потрібно менше часу, ніж виконання звичайної послідовності "запустити програму".

FYI є дуже корисна утиліта, яку я використовував і давав багатьом людям протягом багатьох років під назвою "StartMan". Він працює з кожною версією Windows, яку я коли-небудь пробував від Win98 до Win7. Це дозволить вам набагато більше контролювати свої програми запуску без необхідності вносити постійні зміни в конфігурацію запуску і легко скасувати ті, які не є продуктивними.


1

Спочатку видаліть їх із запуску при запуску.
Потім складіть пакетну програму, щоб запустити їх усі.
Отже, після завантаження комп'ютера, перше, що потрібно зробити, це запустити свою пакетну програму, щоб завантажити все це.


дякую, але в цій ситуації я повинен запустити пакетний файл вручну. чого я не віддаю перевагу.

0

Замість скрипта команди можна використовувати сценарій Windows. Він має метод Sleep (), який слід підтримувати в Windows XP. Вона працює без видимого вікна і дозволяє налаштувати видимість виконаного вікна програми - приховане, нормальне або мінімізоване.

Перед використанням системи Windows Script слід перевірити, чи вона налаштована на виконання * .vbs файлів.

Нижче наведено зразок скрипту, який повинен бути розміщений у файлі з розширенням "VBS", наприклад "DelayedStart.vbs" та розміщений у папці "Пуск" меню "Пуск":

Set Shell = WScript.CreateObject("Wscript.Shell")

WScript.Sleep(5000)
Shell.Run """C:\Program Files\Debug\MemInfo\meminfo.exe""", 2, False
Shell.Run """C:\Windows\System32\taskmgr.exe""", 2, False

rem True=wait until exits
rem Window: 0=hidden, 1=normal, 2=minimized
rem Shell.Run """notepad.exe"" ""argument with space""", 1, False
rem Shell.Run "notepad.exe """ & WScript.Arguments.Item(0) & """", 1, True

0

Для всіх тих, хто говорить " First remove them from run at startup." я повинен сказати:

Не всі програми працюватимуть. Деякі повторно додають їх до реєстру під час запуску.

Отже, видалення ключа реєстру запуску не є рішенням для його запуску при наступному завантаженні, якщо тільки ключ не буде видалено після вбивства програми.

Найгірший випадок, який я знайшов (відсканований драйвер) - це запуск під час завантаження програми, такий додаток не має графічного інтерфейсу, але він блокує себе за допомогою "системного" процесу, тому його не можна вбивати, якщо ви не вб'єте "систему" (попереджаючи це робити = BSOD), також якщо реєстр блокує / зачіпає зміни реєстру, тому після вилучення ключа він знову з’являється тощо. Оскільки додаток неможливо вбити, ви не зможете уникнути його запуску при наступному завантаженні. Тільки SOLUTION робота (без форматування): Почніть з Linux і видаліть таку програму, ніколи більше не встановлюйте її знову ... але, оскільки це "драйвер", він встановлюється знову, як тільки USB працює (також із пристроєм, який не підключений) ), тому вам потрібно видалити всі записи USB, драйвер, файли тощо, перезавантажити в Linux та видалити додаток.

Я розумію, що для "звичайних" додатків, це дуже просто ... просто видаліть ключ реєстру lauch і поставте таку команду на файл .lnk (ярлик), потім із сценарію запустіть цей .lnk, який ви хочете робити між ними. .. або дехто на 1 хвилину відрізняється, інші - на 5 хвилин і т. д. ... розробляють сценарії та викликають всі сценарії паралельно, тому кожен може чекати іншого часу, бла-бла-бла ...

Але що робити з тими (Java Updater тощо), які перечитують їх до реєстру, як тільки вони запущені, або коли вони закриті, або найгірше ... під час запуску, як тільки вони виявлять пропущений ключ у реєстрі тощо.

Деякі мають можливість не автозапустити, а інші - не мають.

Для "нормалів" це дуже добре і чудово працює ... для таких, скажімо, "потворних", тих, що можна зробити? Нічого, крім видалення ключа реєстру після відключення після вбивства / виходу програми.

Я не бачив жодної програми, яка дозволила б вам налаштувати ключі реєстру кай, які ви хочете видалити на останньому етапі відключення, я бачу когось, що робиться на ранніх стадіях відключення ... але не можу контролювати, чи інші програми все ще працюють (може не встановлено порядок вимкнення), тому, якщо хтось все ще працює, як тільки видалений ключ клавіші reg, такий запущений повторно додасть його.

Я отримав своє власне рішення (дуже неприємно, я мушу визнати): я блокую такі ключі реєстру без прав адміністратора, лише з конкретним користувачем, я користуюсь правами, так що будь-яке додаток (не працює як спеціальний користувач системи) вірно з правами адміністратора тощо. не вдається змінити його ... попереджаючи, що в деяких програмах вони відмовляться продовжувати працювати при запуску, оскільки вони не змінять такий ключ реєстру, тому для запуску ви повинні запустити 4-ступінковий сценарій ... встановити права, щоб дозволити, запустити додаток і трохи почекайте, встановіть права не дозволяти (адміністратор), але дозвольте конкретному користувачеві, видаліть ключ (оскільки права сценарію - це права користувача, це буде дозволено) ... і коли додаток знову спробує повторно додати він не зможе, якщо пощастить, додаток не буде різко вийти, інакше ... ви повинні дозволити реєстру там до вимкнення ... для такого випадку додайте завдання розкладу, щоб видалити ключ реєстру ...пам'ятайте, що ключі реєстру можна також видалити, запустивши .reg з інструкціями для цього ... не потрібно створювати додаток для цього.

І т. Д., Я б хотів, щоб у деяких безкоштовних інструментах були реалізовані такі речі, але я все одно не знайшов нікого, ні платного.


Це справді коментар, а не відповідь на початкове запитання. Ви завжди можете коментувати свої власні публікації, і як тільки у вас буде достатня репутація, ви зможете коментувати будь-яку публікацію . Будь ласка, прочитайте Чому мені потрібно коментувати 50 репутацій? Що я можу зробити замість цього?
DavidPostill
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.