Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Задачи на bat-файлах 10

Автор: Dimapplk
Дата сообщения: 25.02.2011 07:20
Подскажите пожалуйста как создать файл в имени которого будут имя компьютера, на котором создается файл и название рабочей группы, в которую он входит. Компьютер под windows 7 нашел в %COMPUTERNAME%, а вот рабочую группу никак не могу. И будет ли работать %COMPUTERNAME% в windows 98?
Автор: res2001
Дата сообщения: 25.02.2011 08:22
Dimapplk
Имя домена можно взять из вывода net config workstation.
На счет Вин98 - надо все тестировать, с тех пор много воды утекло.
Автор: wolf0425
Дата сообщения: 25.02.2011 11:03
Free_Soft
Цитата:
пробела нет...
тогда не знаю - у меня эти 2 скописпастенные отсюда строки одинаково срабатывают и на семерке и на ХР.
Автор: Free_Soft
Дата сообщения: 25.02.2011 12:08
wolf0425
на ХП срабатывает, на win7 х86/х64 нет.
Автор: wolf0425
Дата сообщения: 25.02.2011 12:30

Цитата:
на win7 х86/х64 нет.
может запускаешь без прав администратора?

Хотя действительно надо что-то придумывать другое - батник то ты без админских прав наверно планируешь запускать...
Автор: Free_Soft
Дата сообщения: 25.02.2011 12:33
на 7 работаю под встроенной учеткой админа. может из-за этого?
Автор: wolf0425
Дата сообщения: 25.02.2011 12:35

Цитата:
на 7 работаю под встроенной учеткой админа. может из-за этого?

да пофиг под какой учеткой - нужно чтоб 1. учетка пользователя была в списке админов.
2. при запуске cmd произошло поднятие его прав до админских, по умолчанию - их на висте/2k8/7 нет, надо галку ставить и подтверждение давить. Это я привык что у меня окно ФАРа неделями висит уже с админскими привилегиями, и все что в нем запускается - тоже их получает.
Автор: Free_Soft
Дата сообщения: 25.02.2011 12:42
Да, и еще одно: скомпилированный из батника екзешник с заголовком в тасклисте Диспетчера задач не виден...

Добавлено:

Цитата:
при запуске cmd произошло поднятие его прав до админских

В заголовке написано
Код: Администратор: mysecretprogram
Автор: wolf0425
Дата сообщения: 25.02.2011 13:04

посмотрел, без админских прав - всё то же самое, себя то видно без проблем.
Автор: Free_Soft
Дата сообщения: 25.02.2011 13:07
у меня на ХП тоже все работает. проблема на Win7
Автор: wolf0425
Дата сообщения: 25.02.2011 13:10

Цитата:
проблема на Win7
я тебе специально ver вписал - на скрине видно что это win7
Автор: Free_Soft
Дата сообщения: 25.02.2011 13:14
wolf0425

Цитата:
ver вписал

странный вер.. ну ладно. Не хочу становится в балетную позу, но этот код у меня на двух машинах с 7 не работает. Попробую на виртуалку начисто поставить

Добавлено:
Автор: wolf0425
Дата сообщения: 25.02.2011 13:22

Цитата:
странный вер.
а какая циферка в нем кажется странной?
Автор: Free_Soft
Дата сообщения: 25.02.2011 13:26
про ХР упоминание
Автор: wolf0425
Дата сообщения: 25.02.2011 14:00

Цитата:
про ХР упоминание
ппц залет - нашел в пути cmd от XP
удалил - XP исчезло и работать тоже перестало. вечером буду думать - сейчас до той семерки все же непросто добираться...

Что-то я не могу сообразить как через wmi получить заголовок окна у процесса, может кто подскажет?

а тупо по имени батника вторая копия блокируется так:

Код: @echo off
wmic process where (name='cmd.exe') get commandline | find /i "\%~nx0" | more +1 | find /i "%~nx0" && exit 1
Автор: Free_Soft
Дата сообщения: 25.02.2011 15:05
т.е. имя екзешника может быть свое?
Автор: wolf0425
Дата сообщения: 25.02.2011 16:16

Цитата:
т.е. имя екзешника может быть свое?
да, тут проверяется только имя запакованного батника - его делать уникальным вроде же нет проблем и с именем экзешника оно пересекаться не обязано.
Автор: Misha1989
Дата сообщения: 25.02.2011 18:38
wolf0425
Цитата:
да, тут проверяется только имя запакованного батника

Вроде как все программы, защищающие батники, при запуске делают ему рандомное имя, и чтобы это обойти надо лезть в ресурсы упаковщика, можно даже сдеать батник без имени - у меня получалось сделать имя пустым, т.е. там даже пробела не было...
А если ничего не менять - имя всегда рандомное.
Автор: Free_Soft
Дата сообщения: 25.02.2011 18:41
Misha1989
не знаю, как другие, а Bat_To_Exe_Converter.exe пакует батник с оригинальным именем
Автор: Misha1989
Дата сообщения: 25.02.2011 18:46
Free_Soft
А вы смотрели после запуска где находится этот батник и с каким именем?
Я пользовался двумя упаковщиками батников, они пакуют с одним именем, а при распаковке каждый раз имя разное, набор цифр обычно и перед ними одна буква.
Автор: Free_Soft
Дата сообщения: 25.02.2011 18:51

Цитата:
после запуска где находится этот батник и с каким именем

Находится в папке с рандомным именем со своим оригинальным названием
Автор: 01MDM
Дата сообщения: 25.02.2011 19:13
Если речь о запрете повторного запуска батника, то можно при первом запуске создать флаг в виде файла или значения реестра и проверять. Например:

Код:
@echo off
if exist "%temp%\flag" (goto:eof) else (cd.>"%temp%\flag")

echo this is batch
pause

del "%temp%\flag"
Автор: Free_Soft
Дата сообщения: 25.02.2011 19:17
01MDM
да я по началу так и делал, но следить не хочется. Вариант через wmic отлично работает, только что проверил. Но это справедливо, только если упаковщик не меняет имя батника.
Автор: Misha1989
Дата сообщения: 25.02.2011 20:48
01MDM
Цитата:
флаг в виде файла

Я ему уже это предлагал, но если батник вылетит с ошибкой или комп перезагрузится во время выполнения батника - батник в автомате больше никогда не стартанёт.
Автор: Free_Soft
Дата сообщения: 25.02.2011 21:30
хм.. еще проблема:

Код: wmic process where (name='cmd.exe') get commandline | find /i /c "%~nx0"
Автор: HW2yS
Дата сообщения: 25.02.2011 23:14
здравствуйте
как сделать папку скрытой (hiden)
из командной строки
и подскажите пожалуйста как скопировать папку
с вложенными файлами и папками
спасибо
Автор: Misha1989
Дата сообщения: 25.02.2011 23:46
HW2yS
Цитата:
как сделать папку скрытой (hiden) из командной строки

attrib +h "путь к папке"
Автор: wolf0425
Дата сообщения: 26.02.2011 00:25

Цитата:
показывает это же число но на единицу больше... куда копать?
это вообще-то фича, for порождает запуск ещё одного cmd - его-то ты и посчитал.
чем тебе финт c more +1 не понравился ?
Автор: Free_Soft
Дата сообщения: 26.02.2011 06:02
wolf0425
Просто было интересно попробовать. Но вернулся к твоему варианту
Автор: wolf0425
Дата сообщения: 26.02.2011 07:46
Free_Soft кстати, ты зачем сократил \ в
get commandline | find /i "\%~nx0" | ???

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: зависает установка Windows XP: 39 минут


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.