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

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1320
  • Репутация:127

    [+] [-]
Автоассоциации в WinPE
Скачать
Утилита, предназначена для того, чтобы файлы в WinPE открывались в ассоциированной внешней программе кликом на файле, без необходимости предварительного запуска. Настройки находятся в ini-файле. Утилита ищет ассоциированную программу в заранее созданном списке, запускает её источник (sfx-архив), после распаковки запускает уже распакованную программу с передачей ей файла.
Для нормальной работы необходимо, чтобы программы распаковывались в одну папку, чтобы имя sfx-архива совпадало с именем exe-файла внутри. Эти вещи позволяют избежать поиска в 2 и более места вероятной распаковки и избежать поиска exe-файла в распакованной папке, то есть избежать обращение к файлам на съёмном диске, что замедляет запуск.

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

    avalat
  • 222
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 450
  • Репутация:127

    [+] [-]
(как альтернатива для пользователей TC)
Я для себя настроил это все в TotalCommander, вывел на панель нужные программы с параметром %P%N и открываю одним кликом

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

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1320
  • Репутация:127

    [+] [-]
KisPavVlad, в этом случае лучше сделать reg-файл и вписать его запуск-импорт на автозагрузке. Или перепаковать импортируя данные в реестр. Как вариант самый быстрый способ ассоциации для меня моя прога assotiations. Просто кидаешь в окно программы exe-файл или его ярлык прямо с пуск-меню и прога автоматически ассоциирует. Если кинутая программа нет среди доступных, то выбираешь принудительную ассоциацию, выбрав тип файлов, например "текст" и кидаешь хоть плеер, файлы будут принудительно связаны с кинутой программой. Чтобы в обычной Wiindows10 использовать у файлового менеджера должны быть права админа, а проводник их не имеет, поэтому метод "перетащить и бросить" не работает, в этом случаем можно любой другой файловый менеджер запустить от админа, например "Q-Dir" и уже с него кидать файлы. С пуск-меню выбираешь "Дополнительно-> Перейти к расположению файла" оказываешься в папке ярлыков этого меню, из адресной строки копируешь адрес в "Q-Dir", Enter, и кидаешь ярлыки в прогу. Более тонкую настройку можно сделать в моей проге "ContMenuFiles". Там можешь конкретно добавлять пункты меню каждому файлу, изменять имя пункту, изменять иконку. А также автоматически можешь сделать иконки типам файлов используя мою прогу Recovery_associative_icons. В предыдущих двух прогах есть возможность экспорта реестра, то есть после найтройки ассоциаций сделай экспорт, но он работает только для WindowsXP (надо переделывать), поэтому можешь создать настройки ассоциаций в сборке Win2k, сделать экспорт и этот reg-файл потом импортировать. Та может проблема с путями? Но и это решаемо, кто мешает в нужные пути установить проги.
Добавлено через 1 час 3 минуты 31 секунда:
Есть мысль, что в списке программ через разделитель указать внутреннее имя или путь, тогда подстройка под любую упаковку

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

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1320
  • Репутация:127

    [+] [-]
KisPavVlad, всегда делал 32 бит, и только после массового распространения 64 некоторые компилировал в 2-х вариантах с префиксом x64.
Добавлено через 17 минут 18 секунд:
79602Я для себя настроил это все в TotalCommander, вывел на панель нужные программы с параметром %P%N и открываю одним кликом
Именно ассоциации? То есть клик на файле открывает в проге? Если так то теоретически у sfx-архива должна быть поддержка передачи файла распакованной программе. Если это так, то можно упростить и мой код.

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

    avalat
  • 222
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 450
  • Репутация:127

    [+] [-]
AZJIO, клик по значку на панели (программа открывает "выделенный" файл)

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

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1320
  • Репутация:127

    [+] [-]
avalat, программа на самом деле не программа, а архив. Вопрос, передаёт ли ком-строку переданную внешнему файлу, передаётся ли внутреннему?
Я, видимо, не понял, подумав, что в тотале работает без моей утилитки.
Посмотрел команды sfx, нашёл пока способ
RunProgram="\"HxD.exe\" \"%Var1%\""
а команда запуска
"C:\HxD.exe" -SetEnvironment="Var1=C:\Мои файлы\file.bin"
Но тут надо оговаривать переменные, и делать условие если параметр не передаётся. Пока я не нашёл автоматическую передачу файла, типа "C:\HxD.exe" -file "C:\Мои файлы\file.bin" чтобы при наличии параметра -file можно было бы передать внутреннему запускаемому файлу то что нужно в нём открыть.

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

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1320
  • Репутация:127

    [+] [-]
Обновил
Добавил возможность вот такого формата
Editors\ResHacker\ResHacker.exe|ResHackerFX.exe
Media\AIMP\Aimp2.exe|B:\TEMP\Aimp\AIMP2.exe
Через вертикальную черту можно указать внутреннее имя программы или полный путь. Теперь 2 программы дающий сбой работают нормально.
Указал это в новом списке, а также в расширениях chm связал с SumatraPDF

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

    AZJIO
  • 17953
  • Стаж: 6 лет 8 месяцев
  • Сообщений: 1320
  • Репутация:127

    [+] [-]
Обновил.
Теперь можно просто запустить утилиту и она пропишет себя в реестр. Предложит 1 из 3-х вариантов. Утилита пропишется там где она запущена, т.е. не нужно её потом перемещать, второй раз она не пропишется, так как отслеживает себя в реестре, конечно, можно изменить это поведение, но пока так.
Не надо запускать её на своей системе, чтобы не испортить ассоциации. При случайном клике просто закрыть окно выбора режима, тогда утилита ничего не будет делать.
Добавил проверку диска X, чтобы не запускать на стационарном компе.


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

Текущее время: 31-Окт 10:31

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


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