|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Найти текст по маске в файле и вставить найденные значения в ini файл |
|
|
CMD/BAT - [решено] Найти текст по маске в файле и вставить найденные значения в ini файл
|
Новый участник Сообщения: 11 |
Приветствую, пожалуйста помогите(((
Нужно из файла с таким текстом: Connected display devices: [0] \\.\DISPLAY1 NVIDIA GeForce GTX 1070 \\.\DISPLAY1\Monitor0 Generic PnP Monitor Settings: 2560x1080 32bit @60Hz default [1] \\.\DISPLAY2 NVIDIA GeForce GTX 1070 \\.\DISPLAY2\Monitor0 Generic PnP Monitor Settings: 1920x1080 32bit @60Hz default [2] \\.\DISPLAY3 NVIDIA GeForce GTX 1070 [3] \\.\DISPLAY4 NVIDIA GeForce GTX 1070 HorizontalResolution=2560 VerticalResolution=1080 если с точной нумерацией строк проще можно сохранить в 45-46 строке |
|
Отправлено: 00:25, 09-01-2019 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Anidzuka:
Цитата Anidzuka:
Цитата Anidzuka:
Насколько принципиальна реализация сего именно в рамках пакетных файлов? |
|||
Отправлено: 00:43, 09-01-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 11
|
Профиль | Отправить PM | Цитировать файл создает "ChangeScreenResolution" ini файл слегка нестандартный он не имеет разделов вообще, только параметр и значения , в этом большой геморрой....
в прицепе главное что бы работало(( |
Отправлено: 01:11, 09-01-2019 | #3 |
Новый участник Сообщения: 11
|
Профиль | Отправить PM | Цитировать Извиняюсь, если вам не трудно можно еще как то сделать такое, что бы из ini файла удалялась строка или строки с определённым значением , потом заново нумеровало параметры чтобы не было пропусков ?
|
Отправлено: 02:01, 09-01-2019 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Тогда выкладывайте и образец Вашего как-бы ini-файла.
Цитата Anidzuka:
|
||
Отправлено: 03:11, 09-01-2019 | #5 |
Новый участник Сообщения: 11
|
Профиль | Отправить PM | Цитировать не мой ini файл)) просто хочу сделать лаунчер к одной игре что бы в нём можно было выбрать между оригиналом и версии с модоми ,
так же вид перевода из трёх вариантов выбрать , и чтобы это можно было переключать как захочется , но вот заглох с файлом этим, осталось только то сделать чтобы 3 мода отрубались при выборе русской версии , врубались обратно на английской, ну естественно что бы перед первым запуском мод версии, разрешение экрана само установилось по дефолту системы... и так по мелочи нарисовать кнопки, сообщения дописать.... Вообще не думал что так много всего понадобиться когда решил , "неплохо бы сделать лаунчер" Кстати только что узнал что "AutoPlay Media Studio" умеет определять разрешения экрана, и записать эти данные тоже можно куда угодно... а вот с ини файлом и удалением строк и проверкой нумерации вопрос открыт....((. |
Отправлено: 03:55, 09-01-2019 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Anidzuka:
![]() Цитата Anidzuka:
|
||
Отправлено: 05:34, 09-01-2019 | #7 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата Anidzuka:
@echo off for /f "delims=" %%a in ('wmic path "win32_desktopmonitor" get ScreenHeight^,ScreenWidth /value^|find "="') do set "%%a" <SADXModLoader.ini>$ (for /f "delims=" %%a in ('more') do @( echo %%a|>nul find "HorizontalResolution" && ( echo HorizontalResolution=%ScreenWidth% ) || ( echo %%a|>nul find "VerticalResolution" && ( echo VerticalResolution=%ScreenHeight% ) || ( echo %%a ) ) ) )& >nul move $ SADXModLoader.ini pause Цитата Anidzuka:
|
||
Отправлено: 14:53, 09-01-2019 | #8 |
Новый участник Сообщения: 11
|
Профиль | Отправить PM | Цитировать Цитата Iska:
в каждой кнопке вот такой шаблон Скрытый текст
------------------------------------------------------------- --СПИСОК ПЕРЕМЕННЫХ------ ------------------------------------------------------------- SMT = INIFile.GetValue("Mode.ini", "STEAM_MODE", "Txt"); MMT = INIFile.GetValue("Mode.ini", "MOD_MODE", "Txt"); MML = INIFile.GetValue("Mode.ini", "MODE", "Launcher"); MMO = INIFile.GetValue("Mode.ini", "MODE", "OnlyTXT"); MSS = INIFile.GetValue("Mode.ini", "STEAM_MODE", "Sound"); MMS = INIFile.GetValue("Mode.ini", "MOD_MODE", "Sound"); --- RMOD = File.Run("AutoPlay\\run_mod.bat", "", _SourceFolder, SW_HIDE, true); --- RSTM = File.Run("AutoPlay\\run_steam.bat", "", _SourceFolder, SW_HIDE, true); --- MENS = File.Run("AutoPlay\\en_sound.exe", "", "system", SW_SHOWNORMAL, true); --- SENS = File.Run("AutoPlay\\en_sound.exe", "", _SourceFolder, SW_SHOWNORMAL, true); --- MRUS = File.Run("AutoPlay\\rus_sound.exe", "", "system", SW_SHOWNORMAL, true); --- SRUS = File.Run("AutoPlay\\rus_sound.exe", "", _SourceFolder, SW_SHOWNORMAL, true); --- MFIX = File.Run("AutoPlay\\mod.exe", "", _SourceFolder, SW_HIDE, true); --- SFIX = File.Run("AutoPlay\\steam.exe", "", _SourceFolder, SW_HIDE, true); --- RTXT = File.Run("AutoPlay\\rus_txt.exe", "", _SourceFolder, SW_HIDE, true); --- ETXT = File.Run("AutoPlay\\en_txt.exe", "", _SourceFolder, SW_HIDE, true); --- FTXTEN = File.Run("AutoPlay\\en_txt_fix.exe", "", _SourceFolder, SW_HIDE, true); --- FTXTRU = File.Run("AutoPlay\\rus_txt_fix.exe", "", _SourceFolder, SW_HIDE, true); ------------------------------------------------------------- ----------------------------------------------------- ----Действия------ ----------------------------------------------------- --- Английскя steam-версия if MML == "steam" and SMT == "EN" and MSS == "EN" then Paragraph.SetText("Paragraph1",SteamEN); end --- Русская steam-версия, голос и текст if MML == "steam" and SMT == "RU" and MSS == "RU" then Paragraph.SetText("Paragraph1",SteamRU); end --- Русская steam-версия с английской озвучкой if MML == "steam" and SMT == "RU" and MSS == "EN" then Paragraph.SetText("Paragraph1",SteamRUT); end --- Английскя BetterSADX-версия if MML == "mod" and MMT == "EN" and MMS == "EN" then RSTM = File.Run("AutoPlay\\run_steam.bat", "", _SourceFolder, SW_HIDE, true); SFIX = File.Run("AutoPlay\\steam.exe", "", _SourceFolder, SW_HIDE, true); -------------------------------------------------------------------- --проверка if MSS == "RU" then SENS = File.Run("AutoPlay\\en_sound.exe", "", _SourceFolder, SW_SHOWNORMAL, true); ETXT = File.Run("AutoPlay\\en_txt.exe", "", _SourceFolder, SW_HIDE, true); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Txt", "EN"); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Sound", "EN"); INIFile.SetValue("Mode.ini", "MODE", "Launcher", "steam"); else FTXTEN = File.Run("AutoPlay\\en_txt_fix.exe", "", _SourceFolder, SW_HIDE, true); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Txt", "EN"); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Sound", "EN"); INIFile.SetValue("Mode.ini", "MODE", "Launcher", "steam"); end end --- Русская BetterSADX-версия, голос и текст if MML == "mod" and MMT == "RU" and MMS == "RU" then RSTM = File.Run("AutoPlay\\run_steam.bat", "", _SourceFolder, SW_HIDE, true); SFIX = File.Run("AutoPlay\\steam.exe", "", _SourceFolder, SW_HIDE, true); -------------------------------------------------------------------- --проверка if MSS == "EN" then SRUS = File.Run("AutoPlay\\rus_sound.exe", "", _SourceFolder, SW_SHOWNORMAL, true); RTXT = File.Run("AutoPlay\\rus_txt.exe", "", _SourceFolder, SW_HIDE, true); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Txt", "RU"); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Sound", "RU"); INIFile.SetValue("Mode.ini", "MODE", "Launcher", "steam"); else FTXTRU = File.Run("AutoPlay\\rus_txt_fix.exe", "", _SourceFolder, SW_HIDE, true); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Txt", "RU"); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Sound", "RU") INIFile.SetValue("Mode.ini", "MODE", "Launcher", "steam"); end end --- Русская BetterSADX-версия с английской озвучкой if MML == "mod" and MMT == "RU" and MMS == "EN" then RSTM = File.Run("AutoPlay\\run_steam.bat", "", _SourceFolder, SW_HIDE, true); SFIX = File.Run("AutoPlay\\steam.exe", "", _SourceFolder, SW_HIDE, true); -------------------------------------------------------------------- --проверка if MSS == "EN" then RTXT = File.Run("AutoPlay\\rus_txt.exe", "", _SourceFolder, SW_HIDE, true); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Txt", "RU"); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Sound", "EN"); INIFile.SetValue("Mode.ini", "MODE", "Launcher", "steam"); else SENS = File.Run("AutoPlay\\en_sound.exe", "", _SourceFolder, SW_SHOWNORMAL, true); FTXTRU = File.Run("AutoPlay\\rus_txt_fix.exe", "", _SourceFolder, SW_HIDE, true); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Txt", "RU"); INIFile.SetValue("Mode.ini", "STEAM_MODE", "Sound", "EN") INIFile.SetValue("Mode.ini", "MODE", "Launcher", "steam"); end end Цитата alpap:
Так проблема в том что это INI сторонней программы которая крайне чувствительна к любым лишним разделам или нарушению нумерации списка, сразу выдает ошибку , этот ini походу только притворяется ini ))) |
||
Отправлено: 19:11, 09-01-2019 | #9 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата Anidzuka:
Цитата Anidzuka:
|
||
Отправлено: 23:11, 09-01-2019 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Найти текст в файле и вставить над ним несколько строк | Sergey.l | Скриптовые языки администрирования Windows | 7 | 28-01-2018 23:06 | |
CMD/BAT - [решено] Найти текст в файле и вставить над ним несколько строк | Sergey.l | Скриптовые языки администрирования Windows | 5 | 27-12-2017 18:47 | |
CMD/BAT - Найти в подкаталогах файлы по маске и вывести в текст список тех, у которых первые 2 | surgutfred | Скриптовые языки администрирования Windows | 2 | 27-01-2016 19:07 | |
CMD/BAT - Найти строку в файле по маске | bulchonok | Программирование и базы данных | 8 | 25-04-2013 01:50 | |
CMD/BAT - С помощью bat-ника найти и заменить текст в файле на текст из другого файла | Nun-Nun | Скриптовые языки администрирования Windows | 1 | 08-03-2011 15:25 |
|