[Цитировать]

    dimo70
  • 17296
  • Стаж: 11 месяцев 17 дней
  • Сообщений: 172
  • Репутация:1

    [+] [-]
  • Откуда: BG
vovan1982,
Да, все так. Прочитал пост wadimusa и подумал обойдус без ету строчку, но не получилось.
Моя ошибка. aa

[Цитировать]

    sov44
  • 14940
  • Стаж: 1 год 11 месяцев
  • Сообщений: 24
  • Репутация:2

    [+] [-]
  • Откуда: г. Киров
dimo70,
CD /d "%~dp0"
для батника писать не обязательно, т.к. рабочей директорией батника является папка, в которой он находится.
if defined PROCESSOR_ARCHITEW6432 start %SystemRoot%\Sysnative\cmd.exe /c "%~dpnx0" %* & exit
Как вижу, батник запускается без аргументов, %* можно исключить из кода. Да и наверное всю строчку можно убрать (не проверял), т.к. система должна запустить "правильный" интерпретатор.

[Цитировать]

    dimo70
  • 17296
  • Стаж: 11 месяцев 17 дней
  • Сообщений: 172
  • Репутация:1

    [+] [-]
  • Откуда: BG
sov44,
Спасибо, но я код не понимаю в таких деталей. Поетому и писал за помощь. Уже все хорошо сработало. Спасибо всем за помощь.
Етот код думаю часто будет нужен, так что буду пользоватся. az

[Цитировать]

    wadimus
  • 14910
  • Стаж: 1 год 11 месяцев
  • Сообщений: 129
  • Репутация:17

    [+] [-]
58986для батника писать не обязательно, т.к. рабочей директорией батника является папка, в которой он находится.
э-э-э не скажи :)
можно, иногда, получить такое:
cmd.exe не поддерживает пути unc в качестве текущей папки


Последний раз редактировалось: wadimus (2018-11-03 21:59), всего редактировалось 1 раз

[Цитировать]

    sov44
  • 14940
  • Стаж: 1 год 11 месяцев
  • Сообщений: 24
  • Репутация:2

    [+] [-]
  • Откуда: г. Киров
58988
58986для батника писать не обязательно, т.к. рабочей директорией батника является папка, в которой он находится.
э-э-э не скажи :)
Для запуска батника точно рабочая директория, та, в которой батник ab

[Цитировать]

    wadimus
  • 14910
  • Стаж: 1 год 11 месяцев
  • Сообщений: 129
  • Репутация:17

    [+] [-]
sov44, попробуйте запустить батник из сетевой папки без CD /d "%~dp0" и получите .. ничего

[Цитировать]

    Joker-2013
  • 1039
  • Стаж: 3 года 4 месяца
  • Сообщений: 2424
  • Репутация:127

    [+] [-]
  • Откуда: Админ от сюда
58986
dimo70,
Код:CD /d "%~dp0"
для батника писать не обязательно, т.к. рабочей директорией батника является папка, в которой он находится.
Ну, батенька, вы не правы... Если включен UAC, то будут проблемы, не найдёт рабочую папку и файлы запуска.
CD /d "%~dp0"
Это первое что нужно прописать в батнике, для совместимости с UAC!!!
Возьмите это за правило.

[Цитировать]

    wadimus
  • 14910
  • Стаж: 1 год 11 месяцев
  • Сообщений: 129
  • Репутация:17

    [+] [-]
58991Если включен UAC, то будут проблемы, не найдёт рабочую папку и файлы запуска.
точно!
рабочая папка будет (там расположен cmd.exe):
C:\Windows\System32\
(я много с батниками х-периментировал и один раз снёс много файлов оттуда)

[Цитировать]

    sov44
  • 14940
  • Стаж: 1 год 11 месяцев
  • Сообщений: 24
  • Репутация:2

    [+] [-]
  • Откуда: г. Киров
wadimus, не подтверждаю, проверил на виртуалке https://yadi.sk/i/wZcckYKmohX_5g
На неделе проверю в реальной сети на работе.

[Цитировать]

    Joker-2013
  • 1039
  • Стаж: 3 года 4 месяца
  • Сообщений: 2424
  • Репутация:127

    [+] [-]
  • Откуда: Админ от сюда
sov44, Не понятно желание всё отрицать...
Вам жалко строчку в батник вписывать? Ваше право...
Давайте закончим, укрощение страптивого.

[Цитировать]

    wadimus
  • 14910
  • Стаж: 1 год 11 месяцев
  • Сообщений: 129
  • Репутация:17

    [+] [-]
sov44, друг .. не вижу конфликт .. az
я сам попался на этом ..
система, пользователь с ограниченными правами. установка чего-то невозможна. запускаю батничек с ПКМ (с правами администратора) - и батник не видит находящийся рядом инсталлятор. начал х-периментировать - и снёс кучу файлов в системном каталоге.
поэтому для решения таких проблемм используем абсолютные пути (%~dp0), а не относительные.
в большинстве случаев возможно батничество и без таких хитростей.
так же в виндосе начиная с 7-ки уже есть robocopy, а в ХР этой утилиты нет (по-умолчанию). тоже попадался на этом, когда писал батники, используя robocopy.

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 1 год 9 месяцев
  • Сообщений: 605
  • Репутация:59

    [+] [-]
wadimus, вы человеку криво объясняете ситуацию. Причём тут UAC? Причём тут сеть?
Когда рабочая папка неявна (например, запуск с правами другого пользователя или запуск с "сетевой шары"), то, по умолчанию, рабочей папкой считается %SystemRoot%\system32 (или, другими словами, путь к cmd.exe)

Страница 15 из 15


Показать сообщения:    

Текущее время: 18-Ноя 08:38

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы