Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] NirCmd в BAT.

Ответить
Настройки темы
CMD/BAT - [решено] NirCmd в BAT.

Пользователь


Сообщения: 65
Благодарности: 7

Профиль | Отправить PM | Цитировать


Прошу помощи в решении следующих проблем:
1)
Код: Выделить весь код
nircmdc.exe wait 1000
For /F "UseBackQ Tokens=2*" %%I In (`Reg Query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Proga" /V DisplayVersion^|Find "Proga 1.2.3"`) Do if %errorLevel%==0 goto More
В приведённом коде игнорируется переход «goto» (при наличии данной ветки реестра), если выше находится команда nircmd. Каким образом можно изолировать команды nircmd от %errorLevel%? Код привёл только в качестве примера.
2)
Существует ли способ реализовать аналогичную инструкцию:
Код: Выделить весь код
nircmdc.exe qboxcom "Вы хотите продолжить ?" "title" xxx >nul
if %errorlevel%==0 goto :check
REM "Нет"
Exit
:check
REM "Да"
echo Код дальше. . .
только без обработки ошибки несуществующей команды «xxx» ?
3)
Возможно ли осуществить перенос строк в окне "This is a message box !"

Код: Выделить весь код
nircmdc.exe infobox "This is a message box !" "message"

Отправлено: 21:24, 13-02-2013

 

Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


На 2-ой и третий
Код: Выделить весь код
@echo off
setlocal

nircmdc qboxcom "Do you want ~n to continue" "test" returnval 0xf 

if %errorlevel% equ 15 goto:1

echo exit
exit /b

:1
start calc
А на первый. Зачем ты команду засунул в цикл for?
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:05, 13-02-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 65
Благодарности: 7

Профиль | Отправить PM | Цитировать


Цитата Foreigner:
Зачем ты команду засунул в цикл for? »
Для примера я взял
этот код, добавил только вывод через %errorlevel%.

Отправлено: 22:34, 13-02-2013 | #3


Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Цитата Lucretius:
добавил только вывод через %errorlevel%. »
Так не получится, попробуй:
Код: Выделить весь код
nircmdc wait 1000
Reg Query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Proga" /V DisplayVersion^|Find "Proga 1.2.3" && goto:More
Или, если через цикл, то задай переменную:
Код: Выделить весь код
for /f "tokens=3" %%i in ('reg query hklm\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Proga" /V DisplayVersion') do set "ver=%%i"
if "%ver%"=="1.2.3" echo do something
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:54, 13-02-2013 | #4


Пользователь


Сообщения: 65
Благодарности: 7

Профиль | Отправить PM | Цитировать


Foreigner спасибо, буду пробовать...

Отправлено: 23:04, 13-02-2013 | #5


Пользователь


Сообщения: 65
Благодарности: 7

Профиль | Отправить PM | Цитировать


Foreigner, Ваш код заработал в таком виде:
Код: Выделить весь код
Reg Query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Proga" /V DisplayVersion | Find "Proga 1.2.3" >nul && goto :More
Спасибо.

Отправлено: 20:05, 18-02-2013 | #6


Пользователь


Сообщения: 65
Благодарности: 7

Профиль | Отправить PM | Цитировать


Возник такой вопрос: если запускать батник с правами админа (Win7), то Nircmd работает только из %SystemRoot%.
Возможно ли в этой ситуации заставить Nircmd работать в одной директории с батником %Temp%?

Последний раз редактировалось Lucretius, 18-02-2013 в 22:44.


Отправлено: 22:39, 18-02-2013 | #7



Moderator


Сообщения: 53488
Благодарности: 15516

Профиль | Отправить PM | Цитировать


Цитата Lucretius:
Nircmd работать в одной директории с батником
Код: Выделить весь код
"%~dp0nircmdc.exe" параметры
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:17, 19-02-2013 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] NirCmd в BAT.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] CMD/BAT - С помощью bat-ника найти и удалить текст в файле InVariable Скриптовые языки администрирования Windows 4 22-05-2015 20:06
nircmd.exe и reg_multi_sz AlterEgoFS Хочу все знать 1 27-11-2011 02:52
CMD/BAT - [решено] программа(.bat файл) которая случайным образом запускает .bat файлы из предложенных gangsterovich Скриптовые языки администрирования Windows 1 07-12-2010 06:45
NirCmd 2.40 OSZone Software Новости программного обеспечения 0 16-02-2010 19:30
FileMenu Tools + NirCmd... Narm Автоматическая установка приложений 0 02-01-2008 17:09




 
Переход