Продолжение темы >> Динамическое создание ярлыков и регистрация програм, находящихся на внешних носителях (Usb,Cd,NetWork) Программа сканирует подключенные устройства и создает \ удаляет ярлыки и регистрирует (дерегистрирует) программы, находящиеся в указанном каталоге на основе link файлов. Формат link файла приведен ниже.
Формат link файла
[CheckVer] ;Проверка на совместимость , если условия не выполнены, link файл будет проигнорирован. ;совместимые версии, если ключ пустой или отсутствует, проверка игнорируется. OSArch=X86,IA64,X64 OSVersion=WIN_81,WIN_8, WIN_7,WIN_VISTA,WIN_XP,WIN_XPe,WIN_2012R2,WIN_2012,WIN_2008R2,WIN_2008,WIN_2003,WIN_10 ;Наличие файла или каталога , если ключ пустой или отсутствует, проверка игнорируется. TagFile=\demo.exe ;Отсутствие файла или каталога , если ключ пустой или отсутствует, проверка игнорируется. NotTagFile=\demo.exe ;Выполнять только под WinPe WinPeOnly=yes [Shortcut] ;исполняемый файл ;если путь начинается с "\" он будет заменен на текущий, "." (или %WorkDrive%) создаст ярлык для носителя, exe=\demo.exe ;ярлык на рабочем столе Desktop=\ ;ярлык быстрый запуск QuickLaunch=\ ;создание лаунчера, будет создан лаунчер с именем "Demo" LaunchPath=%temp%\Launch LaunchName=Demo\DemoPrograms ;меню пуск StartMenu=UsbFlash\DemoPrograms ;меню программы Programs=UsbFlash\DemoPrograms ;название ярлыка lnk=Demo Programs ;рабочий каталог, по умолчанию workdir=\ workdir=\ ;аргументы , здесь допустимы псевдопеременные %WorkDir% и %WorkDrive% args= ;иконка и ее номер, по умолчанию будет взята из exe=\... icon=shell32.dll,5 ;горячие клавиши hotkey= ;Ассоциации - расширения файлов через запятую Assoc=xxx,zzz ;Иконка для ассоциированных файлов, по умолчанию - определенная в Icon AssocIcon=\MeIcon.dll,3 ;Иконка каталога foldericon= ;Окно - min,max,(normal - по умолчанию) State=max ;Описание программы, видно при наведении курсора. Desc=Test File [AutoRun] ;в этой секции прописаны программы, ;запускаемые при вставке устройства (.bat,.exe,.reg) hide=yes ;hide=no - default bat=\start.bat exe= reg=\start.reg [autoexit] ;аналогично при удалении устройств hide= bat= exe= reg=
Пути поиска носителей указаны в файле Sh.ini
[Config] ;Расширение для link файлов ext=.shl ;Время обновления (только для RamDisk) time=1000 ;Tray traytime=10000 ;Уровень сканирования, Hight - рекомендуется только для отладки ScanLelel=Normal ;Для WinPe сборок не нужен, сохраняет файл отката, например, если программа запущена с флэшки, флэшка удалена, на компе нажали reset или вообще отключили питание, работа утилиты будет восстановлена при его перезагрузке. Это позволяет использовать ее на полноценных системах как менеджер портативных программ. BackPath=%temp%\_$Sh$_\Sh.bck ;Cache файл, создается с помощью ShCache.exe (необязателен, но увеличивает скорость создания ярлыков) Idx=ShCache.idx ;Принудительное отслеживание смены носителей (для сборок win7/win8 , если не отслеживаются, для сборок XP не требуется) DriveControl=yes [RamDisk] ;* - для всех Drives=b ;Путь поиска Path=PePrograms;Programs [REMOVABLE] Drives= Path=PePrograms [CDROM] Drives=* Path=PePrograms [Network] Drives=h Path=PePrograms;Programs [Fixed] Drives= Path= ;Маркерный файл Marker=
Последний раз редактировалось: puhpol (2020-02-11 11:08), всего редактировалось 2 раз(а)
[CheckVer] ;Проверка на совместимость , если условия не выполнены, link файл будет проигнорирован. ;совместимые версии, если ключ пустой или отсутствует, проверка игнорируется. OSArch=X86,IA64,X64 OSVersion=WIN_81,WIN_8, WIN_7,WIN_VISTA,WIN_XP,WIN_XPe,WIN_2012R2,WIN_2012,WIN_2008R2,WIN_2008,WIN_2003,WIN_10
Работает как надо, проверено не раз... Ну и это:
[AutoRun] ;в этой секции прописаны программы, ;запускаемые при вставке устройства (.bat,.exe,.reg) hide=yes ;hide=no - default bat=\start.bat exe= reg=\start.reg
Так это только для "переткнутой" флешки или и для флешки "загрузочной" (где системное событие "вставка" произошло еще до запуска самой SH и она на это не может отреагировать)?
gera_serg, Оно отрабатывает при запуске SH.exe. То есть, если в вин PE прописан запуск SH.exe : Запускается программа , Находит носитель,(может быть любой, путь поиска прописан в Sh.ini) Считывает конфиг..... То есть , программа ищет папку с прогами на всех доступных носителях. Может я не понял что вы хотите сделать...
Ну, например, тихо забрасывать на X: в системную самую последнию версию 7z, забивая ей ту, что в оригинальном ядре сборки (возможно устаревшую). Новый пункт меню (и типы файлов) не нужны, нужен самый свежий инструмент (вместо старого).
18216Ну, например, тихо забрасывать на X: в системную самую последнию версию 7z, забивая ей ту, что в оригинальном ядре сборки (возможно устаревшую). Новый пункт меню (и типы файлов) не нужны, нужен самый свежий инструмент (вместо старого).
Не реально, как определить "самый свежий инструмент" ? Последняя вставленная флэшка? В принципе, можно добавить батник в autorun, который удалит прежние ярлыки, но это уже будет лежать на совести автора батника.
18245Не реально, как определить "самый свежий инструмент" ? Последняя вставленная флэшка?
Речь про 7z или ярлыки? Если про 7z, он старый в ядре например SonyаPe 2005 года создания. Перепаковывать его лень. Но можно положить последний набор 7z в Programs на флешке и по ЧекВерсион догружать автоматом эти новые файлы в Системную на X: для ядра SonyаPe ("WIN_XP") и не догружать для Хемом1 ("WIN_81") Если про ярлыки. Набор заброшенных на Рабочий стол ярлыков известен, он в индексном файле первой флешки. Вставляем вторую флешку, SH обнаруживает это и видит второй индексный файл. Сверяет по элементу с уже загруженным. Если там и там название "Акронис TI 2015" пропускает добавление дубля, если не дубль - добавляет его на Рабочий стол (ну и в меню)
18254Вставляем вторую флешку, SH обнаруживает это и видит второй индексный файл. Сверяет по элементу с уже загруженным. Если там и там название "Акронис TI 2015" пропускает добавление дубля, если не дубль - добавляет его на Рабочий стол (ну и в меню)
А если название просто "Акронис TI", чего делать то? Сносить последнюю версию и заменять старой?
18255посмотри результат, у меня нет десятки
Десятка должна распознаваться в версии Autoit 3.3.14.2 , скомпилированный скрипт в шапке темы. Версия Autoit 3.3.10 просто не знает десятку.
18259А если название просто "Акронис TI", чего делать то?
Добавлять. Это не совпало по lnk="Акронис TI" и "Акронис TI 2015" У меня несколько флешек с почти одинаковыми наборами ядер/программ. 90% совпадает. Необходимость вставлять другую флешку из-за чего-то, чего нет на первой. Например, другой набор wim/esd на оставшемся месте от ядра и программного пакета. Например две 8 гбфлешки, 1 гиг одинаков, 7 гиг содержимого разные. У одной загрузчик - груб, у второй бутманагер. На одной инсталлы w7, на второй w8-10... На третьей iso дравер-паков и т.д. И не надо менять-подстраиватья, если на старом компе возникнут какието трудности с загрузкой. И подстраховка, не все яйца в одной корзине.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы