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

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

Автор: Romero_Ekb
Дата сообщения: 08.04.2006 10:48
vu1tur
Большое спасибо, но это не решает полностью мою задачу, описанную на предыдущей странице.
Мне нужно узнать SID пользователя, зная лишь то, что в его имени есть подстрока XXX. Либо узнать SID текущего пользователя (от которого открыт сеанс). Как это организовать?

Добавлено:
Написал прогу для выяснения SID текущего пользователя.
Кому надо - качайте: http://slil.ru/22668140
Спасибо всем за помощь!
Автор: Serge2005
Дата сообщения: 08.04.2006 11:32
Как обрабатывать в смд русский текст из файла (похоже в кодировке виндоуз)?
Автор: hacsoft
Дата сообщения: 08.04.2006 12:37
Serge2005
mode con codepage select=1251 > nul
Автор: Serge2005
Дата сообщения: 08.04.2006 13:01
hacsoft
Не помогло. Может я что-то не так делаю?

Код:
del /q /s file1.txt > nul 2>&1
mode con cp select=1251 > nul
echo тест проверка >> file1.txt
:L0
for /F "delims== tokens=1,*" %%i in (file.txt) do call :L1 %%i "%%j"
goto :eof

:L1
set L=%1
set M=%~2
if "%M%"=="cd \\\Registry" call :L2 %L%
goto :eof

:L2
set N=%1
echo %N%>> file1.txt
set N=%N:cmd=menu%
echo %N%=command>> file1.txt
goto :eof
Автор: hacsoft
Дата сообщения: 08.04.2006 18:28
Serge2005
Так ты все равно в кодировки DOS пиши, а на выводе будет Win
Автор: Serge2005
Дата сообщения: 08.04.2006 20:26
hacsoft
Спасибо, кажется понял!!!
Автор: jak_forest
Дата сообщения: 10.04.2006 09:38
[b]Serge2005[/b]
Какой вердикт по твоему скрипту на сегодняшний день: работает или нет.
если не работает, то давай в тег [more] его листинг, файлы для примера и список того, что не работает. Буду разбирать локально, а то удаленно не очень получается.
Автор: Serge2005
Дата сообщения: 10.04.2006 10:56
jak_forest
Вот:
1) Исходный файл: default_eng.bar
[more]
[Buttonbar]
Buttoncount=62
button1=%ProgramFiles%\Winamp\winamp.exe,3
cmd1=%ProgramFiles%\Winamp\winamp.exe
path1=%ProgramFiles%\Winamp\
iconic1=1
menu1=WinAmp
button2=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,6
cmd2=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param2=prev
path2=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu2=Previous Track
button3=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,9
cmd3=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param3=play
path3=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu3=Play
button4=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,8
cmd4=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param4=pause
path4=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu4=Pause
button5=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,13
cmd5=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param5=stop
path5=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu5=Stop
button6=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,4
cmd6=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param6=next
path6=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu6=Next Track
button7=
button8=%Commander_path%\icons\icons01.icl,42
cmd8=cm_Rereadsource
button9=%Commander_path%\icons\icons01.icl,45
cmd9=cm_CDtree
button10=%Commander_path%\icons\icons01.icl,58
cmd10=cm_SrcComments
button11=%Commander_path%\icons\icons01.icl,47
cmd11=cm_srcshort
button12=%Commander_path%\icons\icons01.icl,48
cmd12=cm_srclong
button13=%Commander_path%\icons\icons01.icl,17
cmd13=cm_SrcCustomView1
menu13=MP3-info
button14=%Commander_path%\icons\icons01.icl,18
cmd14=cm_SrcCustomView2
menu14=Video-info
button15=%Commander_path%\icons\icons01.icl,19
cmd15=cm_SrcCustomView3
menu15=Foto-info (EXIF)
button16=shell32.dll,19
cmd16=cm_SrcThumbs
button17=%Commander_path%\icons\icons01.icl,43
cmd17=cm_SrcQuickview
button18=
button19=%Commander_path%\icons\icons01.icl,62
cmd19=cm_GotoPreviousDir
button20=%Commander_path%\icons\icons01.icl,63
cmd20=cm_GotoNextDir
button21=
button22=%Commander_path%\icons\icons01.icl,60
cmd22=cm_FtpConnect
button23=%Commander_path%\icons\icons01.icl,61
cmd23=cm_FtpNew
button24=
button25=%Commander_path%\icons\icons01.icl,32
cmd25=notepad.exe
menu25=Notepad
button26=write.exe
cmd26=write.exe
menu26=WordPad
button27=%Commander_path%\icons\icons01.icl,34
cmd27=mspaint.exe
menu27=Paint
button28=
button29=%ProgramFiles%\Ahead\Nero StartSmart\NeroStartSmart.exe
cmd29=%ProgramFiles%\Ahead\Nero StartSmart\NeroStartSmart.exe
path29=%ProgramFiles%\Ahead\Nero StartSmart\
menu29=Nero StartSmart
button30=%ProgramFiles%\Opera\Opera.exe
cmd30=%ProgramFiles%\Opera\Opera.exe
path30=%ProgramFiles%\Opera\
menu30=Opera
button31=%SystemRoot%\CalcPlusE.exe
cmd31=%SystemRoot%\CalcPlusE.exe
path31=%SystemRoot%\
menu31=Calculator Plus (eng)
button32=
button33=mydocs.dll
cmd33=cd %$PERSONAL%
menu33=My Documents
button34=
button35=rcimlby.exe
cmd35=rcimlby.exe
param35=-LaunchRA
menu35=Remote Helper
button36=%Commander_path%\icons\icons01.icl,25
cmd36=msconfig.exe
menu36=Specific settings of system (msconfig)
button37=icons\icons01.icl,20
cmd37=cd \\\UnInstaller
menu37=Program uninstall
button38=Plugins\wfx_ProcFS_2.0\PROCFS.wfx
cmd38=cd \\\Task manager
menu38=Current Processes
button39=Plugins\wfx_devman_1.4\DevMan.wfx
cmd39=cd \\\Device Manager
menu39=Device Manager
button40=%Commander_path%\icons\icons01.icl,80
cmd40=%WINDIR%\system32\devmgmt.msc
param40=/a
path40=%WINDIR%\system32\
menu40=Device Manager (devmgmt.msc)
button41=Plugins\wfx_StartupGuard\StartupGuard.wfx
cmd41=cd \\\Startup Guard
menu41=List of Autorun
button42=Plugins\wfx_registry_2.6.1\registry.wfx
cmd42=cd \\\Registry
menu42=Register Editing
button43=%Commander_path%\icons\icons01.icl,35
cmd43=regedit.exe
menu43=Register Editor
button44=
button45=%Commander_path%\icons\icons01.icl,40
cmd45=control sysdm.cpl,,0
menu45=My Computer: Properties
button46=%Commander_path%\icons\icons01.icl,26
cmd46=control DESK.CPL,,3
menu46=Screen: Properties
button47=%Commander_path%\icons\icons01.icl,79
cmd47=control inetcpl.cpl,,0
menu47=Internet Explorer: Properties
button48=%Commander_path%\icons\icons01.icl,64
cmd48=control.exe
menu48=Control Panel
button49=%Commander_path%\icons\icons01.icl,78
cmd49=control ncpa.cpl,,0
menu49=Network Connections
button50=%Commander_path%\icons\icons01.icl,31
cmd50=control Mmsys.cpl,,4
menu50=Multimedia
button51=
button52=%Commander_path%\icons\icons01.icl,74
cmd52=cm_SearchFor
button53=%Commander_path%\icons\icons01.icl,49
cmd53=cm_MultiRenameFiles
button54=%Commander_path%\icons\icons01.icl,24
cmd54=cm_CompareFilesByContent
button55=%Commander_path%\icons\icons01.icl,30
cmd55=cm_SetAttrib
button56=E:\Program Files\Total Commander 6.54 rus\icons\icons01.icl,81
cmd56=cm_FileSync
button57=%Commander_path%\icons\icons01.icl,39
cmd57=cm_Split
button58=%Commander_path%\icons\icons01.icl,23
cmd58=cm_Combine
button59=%Commander_path%\icons\icons01.icl,33
cmd59=cm_PackFiles
button60=%Commander_path%\icons\icons01.icl,41
cmd60=cm_UnpackFiles
button61=%Commander_path%\icons\icons01.icl,15
cmd61=cm_CopyNamesToClip
button62=%Commander_path%\icons\icons01.icl,16
cmd62=cm_CopyNetNamesToClip
[/more]
2) Скрипт: 02.cmd
[more]
del /q /s file1.txt > nul 2>&1

for /F "delims== tokens=1,*" %%i in (default_eng.bar) do call :A %%i "%%j"
goto :eof

:A
set L=%1
set M=%~2
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,6" call :L1 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,9" call :L2 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,8" call :L3 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,13" call :L4 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,4" call :L5 %L%
if "%M%"=="cm_SrcCustomView1" call :L6 %L%
if "%M%"=="cm_SrcCustomView2" call :L7 %L%
if "%M%"=="cm_SrcCustomView3" call :L8 %L%
if "%M%"=="notepad.exe" call :L9 %L%
if "%M%"=="%SystemRoot%\CalcPlusR.exe" call :L10 %L%
if "%M%"=="cd %$PERSONAL%" call :L11 %L%
if "%M%"=="rcimlby.exe" call :L12 %L%
if "%M%"=="msconfig.exe" call :L13 %L%
if "%M%"=="cd \\\UnInstaller" call :L14 %L%
if "%M%"=="cd \\\Task manager" call :L15 %L%
if "%M%"=="cd \\\Device Manager" call :L16 %L%
if "%M%"=="%WINDIR%\system32\devmgmt.msc" call :L17 %L%
if "%M%"=="cd \\\Startup Guard" call :L18 %L%
if "%M%"=="cd \\\Registry" call :L19 %L%
if "%M%"=="regedit.exe" call :L20 %L%
if "%M%"=="control sysdm.cpl,,0" call :L21 %L%
if "%M%"=="control DESK.CPL,,3" call :L22 %L%
if "%M%"=="control inetcpl.cpl,,0" call :L23 %L%
if "%M%"=="control.exe" call :L24 %L%
if "%M%"=="control ncpa.cpl,,0" call :L25 %L%
if "%M%"=="control Mmsys.cpl,,4" call :L26 %L%
goto :eof

:L1
set N=%1
set N=%N:button=menu%
echo %N%=Предыдущий трек>> file1.txt
goto :eof
:L2
set N=%1
set N=%N:button=menu%
echo %N%=Воспроизведение>> file1.txt
goto :eof
:L3
set N=%1
set N=%N:button=menu%
echo %N%=Пауза>> file1.txt
goto :eof
:L4
set N=%1
set N=%N:button=menu%
echo %N%=Стоп>> file1.txt
goto :eof
:L5
set N=%1
set N=%N:button=menu%
echo %N%=Следующий трек>> file1.txt
goto :eof
:L6
set N=%1
set N=%N:cmd=menu%
echo %N%=MP3-инфо>> file1.txt
goto :eof
:L7
set N=%1
set N=%N:cmd=menu%
echo %N%=Видео-инфо>> file1.txt
goto :eof
:L8
set N=%1
set N=%N:cmd=menu%
echo %N%=Фото-инфо (EXIF)>> file1.txt
goto :eof
:L9
set N=%1
set N=%N:cmd=menu%
echo %N%=Блокнот>> file1.txt
goto :eof
:L10
set N=%1
set N=%N:cmd=menu%
echo %N%=Калькулятор Плюс (rus)>> file1.txt
set N2=%1
echo %N2%=%SystemRoot%\CalcPlusR.exe>> file1.txt
set N3=%1
set N3=%N3:cmd=button%
echo %N3%=%SystemRoot%\CalcPlusR.exe>> file1.txt
goto :eof
:L11
set N=%1
set N=%N:cmd=menu%
echo %N%=Мои документы>> file1.txt
goto :eof
:L12
set N=%1
set N=%N:cmd=menu%
echo %N%=Удаленный помощник>> file1.txt
goto :eof
:L13
set N=%1
set N=%N:cmd=menu%
echo %N%=Настройка системы (msconfig)>> file1.txt
goto :eof
:L14
set N=%1
set N=%N:cmd=menu%
echo %N%=Установка и удаление программ>> file1.txt
goto :eof
:L15
set N=%1
set N=%N:cmd=menu%
echo %N%=Запущенные процессы>> file1.txt
goto :eof
:L16
set N=%1
set N=%N:cmd=menu%
echo %N%=Диспетчер устройств>> file1.txt
goto :eof
:L17
set N=%1
set N=%N:cmd=menu%
echo %N%=Диспечер устройств (devmgmt.msc)>> file1.txt
goto :eof
:L18
set N=%1
set N=%N:cmd=menu%
echo %N%=Просмотр автозагрузки>> file1.txt
goto :eof
:L19
set N=%1
set N=%N:cmd=menu%
echo %N%=Редактирование реестра>> file1.txt
goto :eof
:L20
set N=%1
set N=%N:cmd=menu%
echo %N%=Редактор реестра>> file1.txt
goto :eof
:L21
set N=%1
set N=%N:cmd=menu%
echo %N%=Мой компьютер: Свойства>> file1.txt
goto :eof
:L22
set N=%1
set N=%N:cmd=menu%
echo %N%=Экран: Свойства>> file1.txt
goto :eof
:L23
set N=%1
set N=%N:cmd=menu%
echo %N%=Internet Explorer: Свойства>> file1.txt
goto :eof
:L24
set N=%1
set N=%N:cmd=menu%
echo %N%=Панель управления>> file1.txt
goto :eof
:L25
set N=%1
set N=%N:cmd=menu%
echo %N%=Сетевые подключения>> file1.txt
goto :eof
:L26
set N=%1
set N=%N:cmd=menu%
echo %N%=Мультимедиа>> file1.txt
goto :eof
[/more]
Это работает, но очень долго. Есть вариант упростить? Ускорить?
Автор: jak_forest
Дата сообщения: 10.04.2006 12:01
Serge2005

Цитата:
Это работает, но очень долго. Есть вариант упростить? Ускорить?

на сколько долго ? у меня на машине работает всего 5 секунд.
если в начало файла вставить строку

Код: @echo off
Автор: Romero_Ekb
Дата сообщения: 10.04.2006 12:01
Как направить вывод команды в переменную?
Автор: jak_forest
Дата сообщения: 10.04.2006 12:07
и я так понимаю ты формируешь только строки, которые надо будет вручную потом расставлять по нужным местам ?
ЗЫ: там у тебя есть набольшой глюк - cmd35 b button35 оба попадают под условие перехода на метку L12
Автор: Serge2005
Дата сообщения: 10.04.2006 12:36
jak_forest
Спасибо!!!!

Добавлено:
А теперь продолжение задачки...Скорее всего надо использовать AutoIt. Надо сгенеренный файл file1.txt "интегрировать" (заменить соответсвующие строки в default_rus.bar строками из file1.txt) в default_rus.bar:
[more]
[Buttonbar]
Buttoncount=62
button1=%ProgramFiles%\Winamp\winamp.exe,3
cmd1=%ProgramFiles%\Winamp\winamp.exe
path1=%ProgramFiles%\Winamp\
iconic1=1
menu1=WinAmp
button2=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,6
cmd2=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param2=prev
path2=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu2=Предыдущий трек
button3=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,9
cmd3=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param3=play
path3=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu3=Воспроизведение
button4=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,8
cmd4=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param4=pause
path4=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu4=Пауза
button5=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,13
cmd5=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param5=stop
path5=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu5=Стоп
button6=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,4
cmd6=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe
param6=next
path6=%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\
menu6=Следующий трек
button7=
button8=%Commander_path%\icons\icons01.icl,42
cmd8=cm_Rereadsource
button9=%Commander_path%\icons\icons01.icl,45
cmd9=cm_CDtree
button10=%Commander_path%\icons\icons01.icl,58
cmd10=cm_SrcComments
button11=%Commander_path%\icons\icons01.icl,47
cmd11=cm_srcshort
button12=%Commander_path%\icons\icons01.icl,48
cmd12=cm_srclong
button13=%Commander_path%\icons\icons01.icl,17
cmd13=cm_SrcCustomView1
menu13=MP3-инфо
button14=%Commander_path%\icons\icons01.icl,18
cmd14=cm_SrcCustomView2
menu14=Видео-инфо
button15=%Commander_path%\icons\icons01.icl,19
cmd15=cm_SrcCustomView3
menu15=Фото-инфо (EXIF)
button16=shell32.dll,19
cmd16=cm_SrcThumbs
button17=%Commander_path%\icons\icons01.icl,43
cmd17=cm_SrcQuickview
button18=
button19=%Commander_path%\icons\icons01.icl,62
cmd19=cm_GotoPreviousDir
button20=%Commander_path%\icons\icons01.icl,63
cmd20=cm_GotoNextDir
button21=
button22=%Commander_path%\icons\icons01.icl,60
cmd22=cm_FtpConnect
button23=%Commander_path%\icons\icons01.icl,61
cmd23=cm_FtpNew
button24=
button25=%Commander_path%\icons\icons01.icl,32
cmd25=notepad.exe
menu25=Блокнот
button26=write.exe
cmd26=write.exe
menu26=WordPad
button27=%Commander_path%\icons\icons01.icl,34
cmd27=mspaint.exe
menu27=Paint
button28=
button29=%ProgramFiles%\Ahead\Nero StartSmart\NeroStartSmart.exe
cmd29=%ProgramFiles%\Ahead\Nero StartSmart\NeroStartSmart.exe
path29=%ProgramFiles%\Ahead\Nero StartSmart\
menu29=Nero StartSmart
button30=%ProgramFiles%\Opera\Opera.exe
cmd30=%ProgramFiles%\Opera\Opera.exe
path30=%ProgramFiles%\Opera\
menu30=Opera
button31=%SystemRoot%\CalcPlusR.exe
cmd31=%SystemRoot%\CalcPlusR.exe
path31=%SystemRoot%\
menu31=Калькулятор Плюс (rus)
button32=
button33=mydocs.dll
cmd33=cd %$PERSONAL%
menu33=Мои документы
button34=
button35=rcimlby.exe
cmd35=rcimlby.exe
param35=-LaunchRA
menu35=Удаленный помощник
button36=%Commander_path%\icons\icons01.icl,25
cmd36=msconfig.exe
menu36=Настройка системы (msconfig)
button37=icons\icons01.icl,20
cmd37=cd \\\UnInstaller
menu37=Установка и удаление программ
button38=Plugins\wfx_ProcFS_2.0\PROCFS.wfx
cmd38=cd \\\Task manager
menu38=Запущенные процессы
button39=Plugins\wfx_devman_1.4\DevMan.wfx
cmd39=cd \\\Device Manager
menu39=Диспетчер устройств
button40=%Commander_path%\icons\icons01.icl,80
cmd40=%WINDIR%\system32\devmgmt.msc
param40=/a
path40=%WINDIR%\system32\
menu40=Диспечер устройств (devmgmt.msc)
button41=Plugins\wfx_StartupGuard\StartupGuard.wfx
cmd41=cd \\\Startup Guard
menu41=Просмотр автозагрузки
button42=Plugins\wfx_registry_2.6.1\registry.wfx
cmd42=cd \\\Registry
menu42=Редактирование реестра
button43=%Commander_path%\icons\icons01.icl,35
cmd43=regedit.exe
menu43=Редактор реестра
button44=
button45=%Commander_path%\icons\icons01.icl,40
cmd45=control sysdm.cpl,,0
menu45=Мой компьютер: Свойства
button46=%Commander_path%\icons\icons01.icl,26
cmd46=control DESK.CPL,,3
menu46=Экран: Свойства
button47=%Commander_path%\icons\icons01.icl,79
cmd47=control inetcpl.cpl,,0
menu47=Internet Explorer: Свойства
button48=%Commander_path%\icons\icons01.icl,64
cmd48=control.exe
menu48=Панель управления
button49=%Commander_path%\icons\icons01.icl,78
cmd49=control ncpa.cpl,,0
menu49=Сетевые подключения
button50=%Commander_path%\icons\icons01.icl,31
cmd50=control Mmsys.cpl,,4
menu50=Мультимедиа
button51=
button52=%Commander_path%\icons\icons01.icl,74
cmd52=cm_SearchFor
button53=%Commander_path%\icons\icons01.icl,49
cmd53=cm_MultiRenameFiles
button54=%Commander_path%\icons\icons01.icl,24
cmd54=cm_CompareFilesByContent
button55=%Commander_path%\icons\icons01.icl,30
cmd55=cm_SetAttrib
button56=E:\Program Files\Total Commander 6.54 rus\icons\icons01.icl,81
cmd56=cm_FileSync
button57=%Commander_path%\icons\icons01.icl,39
cmd57=cm_Split
button58=%Commander_path%\icons\icons01.icl,23
cmd58=cm_Combine
button59=%Commander_path%\icons\icons01.icl,33
cmd59=cm_PackFiles
button60=%Commander_path%\icons\icons01.icl,41
cmd60=cm_UnpackFiles
button61=%Commander_path%\icons\icons01.icl,15
cmd61=cm_CopyNamesToClip
button62=%Commander_path%\icons\icons01.icl,16
cmd62=cm_CopyNetNamesToClip
[/more]
Автор: VelDmi
Дата сообщения: 10.04.2006 16:39
netsh.exe interface ip dump > netsh.cfg
можно ли сделать, чтобы создаваемый файл был не в ДОС, а в WIN кодировке?
Автор: KapralBel
Дата сообщения: 10.04.2006 17:08
VelDmi

Код:
@Echo Off
ChCp 1251
netsh.exe interface ip dump > netsh.cfg
ChCp 866
Автор: VelDmi
Дата сообщения: 11.04.2006 07:09
KapralBel
Спасибо, работает.
Автор: jak_forest
Дата сообщения: 11.04.2006 07:55
Serge2005

Код:
@echo off
del /q split.txt > nul 2>&1
for /f "delims== tokens=1" %%i in (file1_2.txt) do echo %%i>>split.txt
findstr /v /g:split.txt default_eng.bar>default_rus.bar
type file1_2.txt>>default_rus.bar
Автор: Serge2005
Дата сообщения: 11.04.2006 08:15
jak_forest
Что-то это не то((( Он удаляет все строки menuX=, где Х>1 из default_rus.bar. А потом в его конец дописывает файл file1.txt. А это не то что нужно((( Нужна заменя существующих в default_rus.bar строк строками из file1.txt.
Может это проще на AutoIt сделать?
Автор: jak_forest
Дата сообщения: 11.04.2006 08:58
Serge2005
может
но по идее построения ini-файла(каким и является обрабатываемый файл) то параметр может находиться в любом месте секции. А т.к. секция там всего одна, то прога должна найти нужные ей строки в любом месте файла хоть отсортируй их по порядку. Для проверки запусти софт с подсунутым ему сгенерированным файлом. он его должен все-таки прожевать.

ЗЫ: там у тебя, кстати, в начальном файле какие-то проблемы с "menu35=Remote Helper
"
Автор: Serge2005
Дата сообщения: 11.04.2006 09:03
jak_forest

Цитата:
ЗЫ: там у тебя, кстати, в начальном файле какие-то проблемы с "menu35=Remote Helper

Не вижу...а в чем? У меня вроде все ок....АА, понял: if "%M%"=="-LaunchRA" call :L12 %L% - это я уже исправил%)
Дык он удаляет вообще все секции menuX=!!!! А из файла мы берем только часть....В этом баг - не подходит такое((((
Автор: jak_forest
Дата сообщения: 11.04.2006 11:12
Serge2005
проблема в том что есть и баттон и цмд запускающее одно и то же
посмотри на menu35 в сформированном файле.

попробуй заменить в последнем скрипте
Код:
for /f "delims== tokens=1" %%i in (file1_2.txt) do echo %%i>>split.txt
Автор: Serge2005
Дата сообщения: 11.04.2006 14:40
jak_forest
С 35 давно уже разобрался. Это не главное.
[more]
@echo off
del /q /s file1.txt > nul 2>&1

for /F "delims== tokens=1,*" %%i in (default_eng.bar) do call :A %%i "%%j"
goto :eof

:A
set L=%1
set M=%~2
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,6" call :L1 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,9" call :L2 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,8" call :L3 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,13" call :L4 %L%
if "%M%"=="%Commander_path%\Plugins\wfx_TWinAmp2_1.5.2\WAC.exe,4" call :L5 %L%
if "%M%"=="cm_SrcCustomView1" call :L6 %L%
if "%M%"=="cm_SrcCustomView2" call :L7 %L%
if "%M%"=="cm_SrcCustomView3" call :L8 %L%
if "%M%"=="notepad.exe" call :L9 %L%
if "%M%"=="%SystemRoot%\CalcPlusR.exe" call :L10 %L%
if "%M%"=="cd %$PERSONAL%" call :L11 %L%
if "%M%"=="-LaunchRA" call :L12 %L%
if "%M%"=="msconfig.exe" call :L13 %L%
if "%M%"=="cd \\\UnInstaller" call :L14 %L%
if "%M%"=="cd \\\Task manager" call :L15 %L%
if "%M%"=="cd \\\Device Manager" call :L16 %L%
if "%M%"=="%WINDIR%\system32\devmgmt.msc" call :L17 %L%
if "%M%"=="cd \\\Startup Guard" call :L18 %L%
if "%M%"=="cd \\\Registry" call :L19 %L%
if "%M%"=="regedit.exe" call :L20 %L%
if "%M%"=="control sysdm.cpl,,0" call :L21 %L%
if "%M%"=="control DESK.CPL,,3" call :L22 %L%
if "%M%"=="control inetcpl.cpl,,0" call :L23 %L%
if "%M%"=="control.exe" call :L24 %L%
if "%M%"=="control ncpa.cpl,,0" call :L25 %L%
if "%M%"=="control Mmsys.cpl,,4" call :L26 %L%
goto :eof

:L1
set N=%1
set N=%N:button=menu%
echo %N%=Предыдущий трек>> file1.txt
goto :eof
:L2
set N=%1
set N=%N:button=menu%
echo %N%=Воспроизведение>> file1.txt
goto :eof
:L3
set N=%1
set N=%N:button=menu%
echo %N%=Пауза>> file1.txt
goto :eof
:L4
set N=%1
set N=%N:button=menu%
echo %N%=Стоп>> file1.txt
goto :eof
:L5
set N=%1
set N=%N:button=menu%
echo %N%=Следующий трек>> file1.txt
goto :eof
:L6
set N=%1
set N=%N:cmd=menu%
echo %N%=MP3-инфо>> file1.txt
goto :eof
:L7
set N=%1
set N=%N:cmd=menu%
echo %N%=Видео-инфо>> file1.txt
goto :eof
:L8
set N=%1
set N=%N:cmd=menu%
echo %N%=Фото-инфо (EXIF)>> file1.txt
goto :eof
:L9
set N=%1
set N=%N:cmd=menu%
echo %N%=Блокнот>> file1.txt
goto :eof
:L10
set N=%1
set N=%N:cmd=menu%
echo %N%=Калькулятор Плюс (rus)>> file1.txt
set N2=%1
echo %N2%=%SystemRoot%\CalcPlusR.exe>> file1.txt
set N3=%1
set N3=%N3:cmd=button%
echo %N3%=%SystemRoot%\CalcPlusR.exe>> file1.txt
goto :eof
:L11
set N=%1
set N=%N:cmd=menu%
echo %N%=Мои документы>> file1.txt
goto :eof
:L12
set N=%1
set N=%N:param=menu%
echo %N%=Удаленный помощник>> file1.txt
goto :eof
:L13
set N=%1
set N=%N:cmd=menu%
echo %N%=Настройка системы (msconfig)>> file1.txt
goto :eof
:L14
set N=%1
set N=%N:cmd=menu%
echo %N%=Установка и удаление программ>> file1.txt
goto :eof
:L15
set N=%1
set N=%N:cmd=menu%
echo %N%=Запущенные процессы>> file1.txt
goto :eof
:L16
set N=%1
set N=%N:cmd=menu%
echo %N%=Диспетчер устройств>> file1.txt
goto :eof
:L17
set N=%1
set N=%N:cmd=menu%
echo %N%=Диспечер устройств (devmgmt.msc)>> file1.txt
goto :eof
:L18
set N=%1
set N=%N:cmd=menu%
echo %N%=Просмотр автозагрузки>> file1.txt
goto :eof
:L19
set N=%1
set N=%N:cmd=menu%
echo %N%=Редактирование реестра>> file1.txt
goto :eof
:L20
set N=%1
set N=%N:cmd=menu%
echo %N%=Редактор реестра>> file1.txt
goto :eof
:L21
set N=%1
set N=%N:cmd=menu%
echo %N%=Мой компьютер: Свойства>> file1.txt
goto :eof
:L22
set N=%1
set N=%N:cmd=menu%
echo %N%=Экран: Свойства>> file1.txt
goto :eof
:L23
set N=%1
set N=%N:cmd=menu%
echo %N%=Internet Explorer: Свойства>> file1.txt
goto :eof
:L24
set N=%1
set N=%N:cmd=menu%
echo %N%=Панель управления>> file1.txt
goto :eof
:L25
set N=%1
set N=%N:cmd=menu%
echo %N%=Сетевые подключения>> file1.txt
goto :eof
:L26
set N=%1
set N=%N:cmd=menu%
echo %N%=Мультимедиа>> file1.txt
goto :eof
[/more]
Главное, что он удаляет menu все, кроме 1ого. А мне этого не надо! Мне надо только заменить существующие на сгенеренные...
Автор: Romero_Ekb
Дата сообщения: 12.04.2006 10:02
Есть такая утилита control.exe
Почему-то от одного пользователя срабатывает как надо (запускает панель управления или нужный апплет, если параметры указать), а от другого - запускает проводник (не важно, какие параметры указаны). С чем связано может быть?
Автор: Serge2005
Дата сообщения: 12.04.2006 13:13

Код:
FOR %%d IN (c d e f g h i j k l m) DO IF EXIST %%d:\WIN51 SET disk=%d

cd /d %disk%:\Distr\Total_Setup_by_Serge
Автор: KapralBel
Дата сообщения: 12.04.2006 13:30
Serge2005
Какая у тебя ОС?
У меня на XP - все ОК
Автор: Serge2005
Дата сообщения: 12.04.2006 13:35
KapralBel
ХР. Как же так??? Он пытается считать файл с сдрома, не видит его и выдает ошибку!! У меня глючит....((((((

Код:
FOR %%d IN (c d e f g h i j k l m) DO IF EXIST %%d:\WIN51 >NUL 2>&1 SET disk=%%d

cd /d %disk%:\Distr\Total_Setup_by_Serge
Автор: KapralBel
Дата сообщения: 12.04.2006 13:41
Serge2005
Какая команда у тебя дает ошибку?
Случайно не

Цитата:

cd /d %disk%:\Distr\Total_Setup_by_Serge

Что за ключ /d у команды cd
Автор: Serge2005
Дата сообщения: 12.04.2006 13:44
KapralBel

Цитата:
Что за ключ /d у команды cd

смена и диска и папки.

Добавлено:
У меню ошибка вылетает из-за попытки чтения файла с пустого сидирома. Он предлгает Перечитать, Пропустить или отменить (видимо чтение файла). С этой ошибкой все верно определяется. Мне нужно, чтоб этього окошка не вылетало. Вытащите диск, если он у вас в сдроме иил допишите букву вашего сдрома, если ее нет в списке букв...
Автор: KapralBel
Дата сообщения: 12.04.2006 13:53
Serge2005
Приведи лог (перенаправь не в Нуль а в файл)
Ибо у меня проверяет и при наличии диска в приводе и при его отсутствии
Автор: Serge2005
Дата сообщения: 12.04.2006 13:56
KapralBel
не помогает. лог пусой. я не знаю, как заставить его игнорить ошибки....(

Код:
FOR %%d IN (c d e f g h i j k l m n o p r s t u v x) DO IF EXIST %%d:\WIN51 SET disk=%%d

cd /d %disk%:\Distr\Total_Setup_by_Serge
Автор: Serge2005
Дата сообщения: 12.04.2006 23:53
Попробую сформулировать так: В компьютере может быть несколько сд-ромов (двд-). На двд-диске есть файл (уникальный), напрмер, dcba.abcd (в корне). Мне нужно определить букву этого диска (привода, в который вставлен диск с файлом dcba.abcd). Проблема заключается в вылетающем окошке: Отменить, Пропустить, Продолжить - если в одном из приводов нет диска.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Вернуть библиотеку АТМ (поддержка шрифтов Type 1)


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