Форум программистов, компьютерный форум, киберфорум
Наши страницы

Batch (CMD/BAT)

Войти
Регистрация
Восстановить пароль
 
prostofirma
2 / 2 / 0
Регистрация: 10.08.2015
Сообщений: 24
#1

Не удается найти указанную метку пакетного файла - 64BIT Windows 10 - CMD/BAT

13.12.2017, 08:34. Просмотров 227. Ответов 4
Метки нет (Все метки)

Всем привет! Товарищи, подскажите пожалуйста, где ошибка?

На Windows XP-7 х32-64 батник свою роль выполняет, на Windows 10 не хочет, возможно и на 8 аналогичная ситуация, не проверял...

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
sc query | findstr /i "tvnserver"
goto exist%errorlevel%
:exist0
echo есть
exit
echo нет
:exist1
@set dpass=123
@if "%upass%" == "" (
  @set upass=%dpass%
)
@cd %TMP%
@if exist "C:\Program Files (x86)" (
  echo off f | xcopy /s/y %~dp0tightvnc-2.7.10-setup-64bit.msi %TMP%\tightvnc-2.7.10-setup.msi
  @set bitx=64
) else (
  echo off f | xcopy /s/y %~dp0tightvnc-2.7.10-setup-32bit.msi %TMP%\tightvnc-2.7.10-setup.msi
  @set bitx=32
)
@echo off Система %bitx% бита. Установка tightvnc ....
@msiexec.exe /i tightvnc-2.7.10-setup.msi /quiet /norestart SET_USEVNCAUTHENTICATION=1 VALUE_OF_USEVNCAUTHENTICATION=1 SET_PASSWORD=1 VALUE_OF_PASSWORD=%upass% SET_VIEWONLYPASSWORD=1 VALUE_OF_VIEWONLYPASSWORD=%upass% SET_USECONTROLAUTHENTICATION=1 VALUE_OF_USECONTROLAUTHENTICATION=1 SET_CONTROLPASSWORD=1 VALUE_OF_CONTROLPASSWORD=%upass%
@echo.
IF EXIST "%PROGRAMFILES(X86)%" (GOTO 64BIT) ELSE (GOTO 32BIT) 
@if exist "C:\Program Files\TightVNC" (
****@echo off Готово. Пароль: %upass%
****@del %TMP%\tightvnc-2.7.10-setup.msi
) else (
****@del %TMP%\tightvnc-2.7.10-setup.msi
)
exit
Если запускать с ведением лога пишет:

log
C:\Users\ivanov\Desktop\0>sc query | findstr /i "tvnserver"

C:\Users\ivanov\Desktop\0>goto exist1
C:\Users\ivanov\Desktop\0\tightvnc-2.7.10-setup-64bit.msi
Скопировано файлов: 1.
off Система 64 бита. Установка tightvnc ....


C:\Users\ivanov\AppData\Local\Temp>IF EXIST "C:\Program Files (x86)" (GOTO 64BIT ) ELSE (GOTO 32BIT )


Если просто кидать батник в cmd:

cmd
C:\Users\ivanov\AppData\Local\Temp>C:\Users\demin\Desktop\0\tax_demin.bat

C:\Users\ivanov\AppData\Local\Temp>sc query | findstr /i "tvnserver"

C:\Users\ivanov\AppData\Local\Temp>goto exist1
C:\Users\ivanov\Desktop\0\tightvnc-2.7.10-setup-64bit.msi
Скопировано файлов: 1.
off Система 64 бита. Установка tightvnc ....

C:\Users\ivanov\AppData\Local\Temp>IF EXIST "C:\Program Files (x86)" (GOTO 64BIT ) ELSE (GOTO 32BIT )
Не удается найти указанную метку пакетного файла - 64BIT

C:\Users\ivanov\AppData\Local\Temp>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2017, 08:34
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не удается найти указанную метку пакетного файла - 64BIT Windows 10 (CMD/BAT):

Не удается найти указанную метку пакетного файла - CMD/BAT
Нашёл на хабре статью про работу с массивами в bat-файлах. Решил потестировать. Решил попробовать самое простое: @ECHO off echo...

Создание исполняемого файла на основе пакетного файла и копируемых им файлов - CMD/BAT
Доброго времени суток. Батник копирует файлы из папки Test в папку bin в текущем каталоге. Мне нужно сделать это в одном исполняемом файле,...

Как в коде пакетного файла скрыть расположение исполняемого файла? - CMD/BAT
Есть исполняемый файл на диске С, в папке ПрограмФайл, на рабочем столе создан файл запуска BAT с таким кодом: %SystemDrive% cd...

Как в коде пакетного файла указать папку для сохранения конечного файла? - CMD/BAT
@echo off Setlocal EnableDelayedExpansion set /p format=original format: for %%a in (*.!format!) do IF! counter! LSS 5 ( ffmpeg -i...

Разработка пакетного файла. - CMD/BAT
Здравствуйте. Помогите пожалуйста,кто-нибудь из знающих людей. Буду очень благодарен=) Нужно разработать пакетный файл для создания...

Совместимость пакетного файла - CMD/BAT
Прошу прощения, за вопрос от чайника. Некоторым экспертам здесь на форуме мне верится больше, чем найденному в интернет. Вопрос такой -...

4
Dragokas
Эксперт WindowsАвтор FAQ
16601 / 6986 / 846
Регистрация: 25.12.2011
Сообщений: 10,781
Записей в блоге: 16
13.12.2017, 14:13 #2
Windows Batch file
1
2
3
sc query "tvnserver"
if %errorlevel%==1060 (echo есть & pause>NUL & exit /b)
echo нет
Эти все @ и @echo off не нужны.
@echo off пишется 1 раз в начале пакетного файла.
Дальше просто echo Текст

Цитата Сообщение от prostofirma Посмотреть сообщение
Windows Batch file
1
C:\Users\ivanov\AppData\Local\Temp>IF EXIST "C:\Program Files (x86)" (GOTO 64BIT ) ELSE (GOTO 32BIT )
Не удается найти указанную метку пакетного файла - 64BIT
Правильно пишет.
Вы у себя в коде где-то видите такую метку?
0
prostofirma
2 / 2 / 0
Регистрация: 10.08.2015
Сообщений: 24
13.12.2017, 15:06  [ТС] #3
Цитата Сообщение от Dragokas Посмотреть сообщение
Вы у себя в коде где-то видите такую метку?
Да спасибо, уже ткнули носом. Добавил метки :32BIT и :64BIT правда пока получилось так что он постоянно ставит только х32
0
Dragokas
Эксперт WindowsАвтор FAQ
16601 / 6986 / 846
Регистрация: 25.12.2011
Сообщений: 10,781
Записей в блоге: 16
13.12.2017, 15:19 #4
Определение разрядности системы:

Windows Batch file
1
Set "Bitness=x64"& If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set "Bitness=x32"
0
prostofirma
2 / 2 / 0
Регистрация: 10.08.2015
Сообщений: 24
14.12.2017, 10:46  [ТС] #5
В общем можно вообще убрать:
Windows Batch file
1
IF EXIST "%PROGRAMFILES(X86)%" (GOTO 64BIT) ELSE (GOTO 32BIT)
и метки :32BIT и :64BIT

Работает и без меток, проблема только в том что работает только если запускать от админа...


Цитата Сообщение от Dragokas Посмотреть сообщение
Определение разрядности системы:
Windows Batch fileВыделить код
1
Windows Batch file
1
Set "Bitness=x64"& If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set "Bitness=x32"
Спасибо, попробую добавить.

Добавлено через 36 минут
Всем спасибо, в общем сейчас всё работает без меток. А на Win 10 запускаю bat от админа через скрипт:
Visual Basic
1
CreateObject("Shell.Application").ShellExecute "service.bat", "", "", "runas", 1
Добавлено через 32 минуты
Ещё можно вопрос, сейчас его решаю, но на всякий случай напишу, может Вы быстрее ответите

В общем у меня скрипты изначально запускали батники скрытно, вот теперь хочу объединить:

Visual Basic
1
CreateObject("Shell.Application").ShellExecute "\\192.168.1.8\NETLOGON\ivanov.bat", "", "", "runas", 1
и
Visual Basic
1
2
3
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "\\192.168.1.8\NETLOGON\ivanov.bat" & Chr(34), 0
Set WshShell = Nothing
Добавлено через 1 час 39 минут
Тему можно закрвать.

Если вдруг кому пригодится:
Visual Basic
1
CreateObject("Shell.Application").ShellExecute "\\192.168.1.8\NETLOGON\ivanov.bat", "", "", "runas", 0
0
14.12.2017, 10:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2017, 10:46
Привет! Вот еще темы с ответами:

ADO не удается найти указанную службу доступа - VB
Написал приложение VB + ADO. У меня работае , а на другом компьютере начинает ругаться - 'ADO не удается найти указанную службу доступа'. ...

Как скрыть выполнение bat файла в windows 8.1 64bit - VBA
Всем доброго времени суток, срочно нужна помощь! Столкнулся с такой проблемой: необходимо скрыть выполнение bat файла в windows 8.1 64bit,...

Windows 7 пишет при открытие exe файла: системе не удается найти указанный параметр среды - Windows 7
Windows 7 пишет при открытие exe файла: системе не удается найти указанный параметр среды. ВООБЩЕ ни чего не запускаеться этого формата,...

Не удается сменить метку диска - Windows 7
В системе три жестких. После полной переустановки системы один из дисков обозначен как "Локальный диск". Попытка переименовать его ничего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru