Процес пакетного файлу залишає відкритий додатковий командний рядок


2

У мене є пакетний файл і він створює пакетний файл в папці автозавантаження, яка відкриває певну URL-адресу веб-сайту. Моя проблема полягає в тому, що всякий раз, коли він запускається, він також відкриває порожній командний рядок.

Пакетний скрипт працює нормально, і він відкриває веб-сайт з веб-браузером, але він просто залишає додаткове відкрите вікно CMD, яке я б не хотів. Примітка: я не запитую, як запустити вікно CMD у фоновому режимі.

Ось код:

@echo off

cd C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

echo @echo off > startup.bat

echo start (link) >> startup.bat

start startup.bat

Чи може хто-небудь допомогти вказати, що я можу змінити, щоб вирішити цю проблему?



FYI. . . Як повністю запустити командний файл без запуску командного вікна і виходу з командного вікна після його запуску виконуються зовсім інші завдання. Жодна з цих відповідей у ​​цій можливій ланці з вашого списку коментарів нічого про EXIT або інший синтаксис, який я використав у відповіді нижче, з цим методом.
Pimp Juice IT

Tbh коли ви відредагували моє питання ви повністю міняли що це запитувало. Це залишає вікно відкрите з причини я не знаю. 2 оригінальні вікна, які вона пробігла поруч. Однак ваше рішення допомогло. Не дублікат запитував, чому відкривалося додаткове вікно.
INTENSEFIRE

Відповіді:


2

Ви можете використовувати CALL і додати /MINперемикач з командою START, щоб він був більш прихований, і переконайтеся, що вікно CMD зникає під час виконання заданого вами прикладу логіки .

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

Приклад сценарію

@echo off

CD /D C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

echo @echo off > startup.bat
echo START /MIN "" "https://google.com">> startup.bat
echo EXIT /B>> startup.bat

CALL startup.bat
EXIT /B

Подальші ресурси


PIMP_JUICE_IT, позначайте питання як дублікати, коли вони існують. Відповідаючи на подвійні питання, спонукає користувачів спочатку шукати відповіді і допомагати заповнити сайт шумом. Див. Meta Stack Exchange для отримання додаткової інформації.
Канадський Люк

Я прочитав, але тільки одну відповідь, і, здається, домовилися про дублікати, прапор 'em
Canadian Luke

1

Перегляньте посилання нижче:

Як запустити пакетний файл без запуску "командного вікна"?

Якщо посилання недоступне, одна відповідь повідомляє про створення сценарію vbs, який містить наступне:

CreateObject("Wscript.Shell").Run "your_batch_file.bat", 0, True

Де "your_batch_file.bat" - це назва вашого пакетного файлу.

Збережіть це як візуальний базовий сценарій, наприклад: example.vbs і запустіть його.


1
Привіт Kruschk, якщо ви знайдете посилання на сайті, який відповідає на запитання, слід поставити прапорця як дублікат замість розміщення посилання та контенту як цілком окремої відповіді.
Канадський Люк

Привіт, Луки, як я можу відмітити, як дублювати? Я бачу лише параметри, які стосуються спаму або низької якості. Я просто хотів допомогти хлопцю, тому що я не можу коментувати посади, які ще не є моїми!
kruschk

Натиснувши "Позначити" під запитанням, виберіть параметр "Дублювати". Оскільки я вже вставив посилання в, можна натиснути на запитання зі списку та натиснути Прапорець.
Канадський Люк

У мене є лише опції для позначення як "спам", "грубий або образливий", "дуже низька якість", або "потребує втручання модератора"! Навіть після того, як Googling навколо, я не можу знайти його ...
kruschk

Добре не піклуйтеся про це тоді
канадський Luke
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.