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

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

Автор: bomzzz
Дата сообщения: 24.09.2010 17:24
знаю
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List"; ValueType: string; ValueName: "{app}\greylink.exe"; ValueData: "{app}\greylink.exe:*:Enabled:GreyLink"; Flags: uninsdeletevalue



Добавлено:
это я делал инсталятор для грейлинка InnoSetup-ом
Автор: Free_Soft
Дата сообщения: 24.09.2010 18:46
Mark_Titov
можно еще так:

Код: netsh firewall add allowedprogram program= "путь к файлу программы" name= "отображаемое имя правила" mode= ENABLE profile= CURRENT
Автор: LomikXP
Дата сообщения: 24.09.2010 19:31
Здравствуйте, у меня есть вопрос: Почему не выводятся значения с помощью echo в середине рекурсии?
[more]
@echo off
setlocal ENABLEDELAYEDEXPANSION
set para=0
set parb=0
set parc=0
set parm=0
set parn=0
set abs=0
set num=0
call :NOD %1 %2
echo Answer = %num%
goto e

:abs
    if %1 LSS 0 set /A abs = %1 * -1 & exit /b
    set /A abs = %1
exit /b

:NOD
    echo Trace m = %1 and n = %2
    echo 1
    set /A parm = %1 %% 2
    echo Trace parm = %parm%
    set /A parn = %2 %% 2
    echo Trace parn = %parn%
    echo 2
...
    if %parn% == 1 (if %parm% == 1 (
        echo 14
        echo Trace args = %1 %2
        set /A parb = %1 - %2
        echo parb = %parb%
        call :abs %parb%
        echo Trace abs %parb% = %abs%
        set /A parb=abs
        echo parb = %para%
        call :NOD %para% %parb%
        set /A num=%num%
        echo 15
        exit /b    
    ))
exit /b
:e
[/more]
Я вставлял echo для просмотра значений (echo parb = %parb%), но они не показываются (равны 0).
Буду благодарен за решение проблемы.

P.S. Это кусок кода от алгоритма нахождения НОД.
Автор: AftarJjet
Дата сообщения: 24.09.2010 19:41
del
вопрос решен
Автор: Karrakurt
Дата сообщения: 24.09.2010 22:59
Подскажите пжл решение. Необходимо запустить программу с помощью START /w с такими условиями:
- путь к проге с пробелами и русскими буквами
- параметры
- путь в качестве параметра с пробелами и русскими буквами
- второй путь в качестве параметра с пробелами и русскими буквами
Автор: 01MDM
Дата сообщения: 24.09.2010 23:58
Karrakurt

Код:
@echo off
1>nul chcp 1251
start /w "" "c:\путь к проге\program" /par1 /par2 "c:\путь к файлу\file.ext"
Автор: Mark_Titov
Дата сообщения: 25.09.2010 00:06
bomzzz, Free_Soft, спасибо, но мне нужно именно для File and Printer Sharing.
Как мне в этом коде добавить ??

Код: netsh firewall add allowedprogram program= "путь к файлу программы" name= "отображаемое имя правила" mode= ENABLE profile= CURRENT
Автор: bomzzz
Дата сообщения: 25.09.2010 00:39
Enabled:GreyLink на disable
Автор: wolf0425
Дата сообщения: 25.09.2010 01:28

Цитата:
Здравствуйте, у меня есть вопрос: Почему не выводятся значения с помощью echo в середине рекурсии?
Подробнее...
Я вставлял echo для просмотра значений (echo parb = %parb%), но они не показываются (равны 0).
потому и не выводятся что не должны.
в коде
Код: (
set /A parb = %1 - %2
echo parb = %parb%
Автор: Mark_Titov
Дата сообщения: 25.09.2010 07:01

Цитата:
Enabled:GreyLink на disable

Не совсем понял как реализовывать это...
У меня например есть пример добавления утилиты WOL.exe в исключения -

Код: 1>nul 2>nul REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List" /f /v "C:\WOL.exe" /t REG_SZ /d "C:\WOL.exe:*:Enabled:WOL.exe"
Автор: bomzzz
Дата сообщения: 25.09.2010 07:29
.............. /t REG_SZ /d "C:\WOL.exe:*:Enabled:WOL.exe"
.............. /t REG_SZ /d "C:\WOL.exe:*:Disabled:WOL.exe"

Добавлено:
че такой беспомощный открой редактор реестра и посматри как будет с галкой и без.

Добавлено:
или вообще параметр ключа удали, тоже самое что галку убрать
Автор: Free_Soft
Дата сообщения: 25.09.2010 07:40
Mark_Titov

Цитата:
вот, можно на этом примере сделать для "File and Printer Sharing".?

Да кто ж знает, какой у этой функции исполняемый файл?!))
попробуй утилиту Regshot_v2.1.0.17. Просканируй реестр ДО поставления галки, второй снимок сделай ПОСЛЕ. Затем в отчете обрати внимание на измененные или новые ключи реестра....
Автор: bomzzz
Дата сообщения: 25.09.2010 07:48
в процессах пасматри и узнаешь. или погугли (про исполняемый файл)
Автор: Mark_Titov
Дата сообщения: 25.09.2010 08:03

Цитата:
в процессах пасматри и узнаешь. или погугли (про исполняемый файл)

Уже гуглил, не нашел...

Цитата:
Да кто ж знает, какой у этой функции исполняемый файл?!))

В том то и дело... Думал кто уже знает или сталкивался...
Автор: bomzzz
Дата сообщения: 25.09.2010 08:06
ну так она у тебя есть в реестре в брандмауере там и пасматри

Добавлено:

скорее всего или ета или ета
Автор: Mark_Titov
Дата сообщения: 25.09.2010 08:46

Цитата:
скорее всего или ета или ета

Не то, не другое, это средства диагностики сети и т.д...
В реестре не нашел пока, все там перерыл, буду дальше ковырять...
Благодарю...
Автор: Free_Soft
Дата сообщения: 25.09.2010 09:27
Кто сталкивался с созданием задачи в планировщике?

Код: schtasks /create /tn "CALC" /tr "'C:\Windows\system32\calc.exe'" /sc daily /mo 29 /ru "" /f
Автор: bomzzz
Дата сообщения: 25.09.2010 09:34
Mark_Titov
надо снимок реестра сделать, убрать галочку и найти разницу. я ashampoo uninstaler-ом делаю

Добавлено:
сам вот разбирайса

Цитата:

; Ashampoo UnInstaller 2010
; Файл:C:\Documents and Settings\All Users\Application Data\Ashampoo\Ashampoo UnInstaller 2010\AAAAAAAAAAAAAAAAA.ECL
; Реестр : HKEY_LOCAL_MACHINE\SYSTEM
; Обозначения:
; [-]= Удалённый ключ/папка, [+]= Новый ключ/папка, [#]= Изменённый ключ/папка,
; [-]= Удалённое значение/файл, [+]= Новое значение/файл
; [%]= Изменённое значение (старое значение/файл), = Изменённое значение (новое значение/файл)
;
[#][HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Epoch]
[%]"Epoch" = $00000035 (53)
"Epoch" = $00000036 (54)
[+][HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts\List]
[+]"137:UDP" = "137:UDP:LocalSubNet:Enabled:@xpsp2res.dll,-22001"
[+]"138:UDP" = "138:UDP:LocalSubNet:Enabled:@xpsp2res.dll,-22002"
[+]"139:TCP" = "139:TCP:LocalSubNet:Enabled:@xpsp2res.dll,-22004"
[+]"445:TCP" = "445:TCP:LocalSubNet:Enabled:@xpsp2res.dll,-22005"
[+][HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts]
[#][HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile]
[+]"DisableNotifications" = $00000000 (0)

Автор: 01MDM
Дата сообщения: 25.09.2010 11:26
Free_Soft

Цитата:
Проблема в том, что екзешник запускается в "тихом" режиме,

Если запускать от своего имени:

Код:
schtasks /create /tn "calc" /sc once /tr calc.exe /st 12:10
Автор: Free_Soft
Дата сообщения: 25.09.2010 14:17
01MDM
Т.е. без параметра /ru "" ?
Автор: Mark_Titov
Дата сообщения: 25.09.2010 14:37
Чего то не пойму, вроде код отрабатывается в батнике, а ничего не происходит.
Почему, кто знает..?

Код: @echo off
netsh Firewall>set service
netsh Firewall>set service FILEANDPRINT ENABLE
pause
Автор: 01MDM
Дата сообщения: 25.09.2010 14:53
Free_Soft
Да.
Mark_Titov
А зачем знак перенаправления в файл set ">". Теперь его, файл, можно почитай ;)

Автор: Mark_Titov
Дата сообщения: 25.09.2010 15:20

Цитата:
Теперь его, файл, можно почитай

Точно..! Сенкс, это я слепой )))...
Теперь все ок - включил галку.
А как теперь это применить для удаленного компа..?
Автор: LomikXP
Дата сообщения: 25.09.2010 17:45

Цитата:
wolf0425

Я уже пробовал использовать setlocal и !!, толку не было, т.е. вместо значений до скобки выводилось два восклицательных знака и эти же два знака передавались как аргументы в следующий шаг рекурсии или вообще выводилась пустота.
А подпрограммы не вариант.
Автор: wolf0425
Дата сообщения: 25.09.2010 17:47

Цитата:
Я уже пробовал использовать setlocal и !!, толку не было,
телепатов тут нема, угадывать что и как ты пробовал, и почему делал это неправильно - никому не нужно.
пример пиши.
Автор: LomikXP
Дата сообщения: 25.09.2010 17:53
Да, пожалуйста:
[more]
@echo off
setlocal ENABLEDELAYEDEXPANSION
set para=0
set parb=0
set parc=0
set parm=0
set parn=0
set abs=0
set num=0
call :NOD %1 %2
echo Answer = %num%
goto e

:abs
if %1 LSS 0 set /A abs = %1 * -1 & exit /b
set /A abs = %1
exit /b

:NOD
echo Trace m = %1 and n = %2
echo 1
set /A parm = %1 %% 2
echo Trace parm = %parm%
set /A parn = %2 %% 2
echo Trace parn = %parn%
echo 2
    rem ...
if %parn% == 1 (if %parm% == 1 (
echo 14
echo Trace args = %1 %2
set /A parb = %1 - %2
echo parb = !%parb%!
call :abs %parb%
echo Trace abs %parb% = %abs%
set /A parb=abs
echo parb = %para%
call :NOD %para% %parb%
set /A num=%num%
echo 15
exit /b
))
exit /b
:e
[/more]
Изменилась одна строчка echo parb = !%parb%! выводится пустота.
Автор: Mark_Titov
Дата сообщения: 25.09.2010 18:33
Кто подскажет в что не верно? Пишу -

Код:
@echo off
(set /p server=<list.txt) 2>nul
netsh firewall set service type=FILEANDPRINT mode=ENABLE CUSTOM %server%
pause
Автор: Free_Soft
Дата сообщения: 25.09.2010 19:02
01MDM
Спасибо, работает.
Mark_Titov
адрес в переменную прописывается?
Автор: wolf0425
Дата сообщения: 25.09.2010 19:30

Цитата:
Изменилась одна строчка echo parb = !%parb%! выводится пустота.

что совершенно логично.
а написать надо было echo parb = !parb!
Автор: LomikXP
Дата сообщения: 25.09.2010 19:39
wolf0425

Спасибо, дописал и все работает. Спасибо большое.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Windows 7 Starter


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