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

    puhpol
  • 2
  • Стаж: 10 лет
  • Сообщений: 891
  • Репутация:75

    [+] [-]
Продолжение темы >>
Динамическое создание ярлыков и регистрация програм, находящихся на внешних носителях (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 раз(а)

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

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

    [+] [-]
18263Добавлять. Это не совпало по lnk="Акронис TI" и "Акронис TI 2015"
Пример - есть последняя версию , с которой и загрузилась система.
На старенькой флэшке есть , например пакет от Terabyte, название которого не меняется.
Я вставляю эту старую флэшку, на которой лежит нужная мне инфа, и что должен получить? DownGrade ?
Я вставляю другую флэшку, на ней есть совпадающие имена, и что получаю? Я вообще не знаю, чем пользуюсь?

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

    gera_serg
  • 1171
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
nikzzzz,
Ты недопонял.
Задача 2 - управлять пунктами / ярлыками вставленной дополнительной флешки исходя что уже есть на РС..
Если названия (по lnk=) точно совпадают с уже вставленной - их не дублировать на рабочий стол.
А сейчас по необходимости 3 сразу вставленные флешки - 3 ярлыка на Terabyte (хотя на всех трех он один и тот же)
.
Если десяток ярлыков от одной, на экране рябит от 30 (при вставленных трех)

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

    gera_serg
  • 1171
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
18259должна распознаваться в версии Autoit 3.3.14.2
скачал, заменил на 3,3,14,2
ОС теперь распознается правильно, но не работает, ярлыка быть не должно (как я понимаю)...


Последний раз редактировалось: gera_serg (2016-02-03 15:39), всего редактировалось 1 раз

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

    gera_serg
  • 1171
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
Версия файла SH 2015.11.8.1

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

    Гость
  • Репутация:0

    [+] [-]

Autoit 3.3.14.2 распознает 10-ку правильно.

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

    gera_serg
  • 1171
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
conty9,
Ратиборовская 8.1

А для SH.exe обязательно нужен Autoit? В некоторых ядрах его вообще нет...

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

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

    [+] [-]
gera_serg,
Autoit не нужен, а вот обновить SH.exe желательно, старая версия не поддерживает десятку.

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

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

    [+] [-]
18265Если названия (по lnk=) точно совпадают с уже вставленной - их не дублировать на рабочий стол.
А где гарантия, что на разных флэшках одинаковые версии?
Названия могут и совпадать, но это могут быть совершенно разные вещи.

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

    gera_serg
  • 1171
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
18293lnk="Акронис TI"
очень просто, я же сам в этом заинтересован
если на одной lnk="Акронис TI"
и на другой lnk="Акронис TI"
одинаковые, дубликат ярлыка не нужен
если на одной lnk="Акронис TI"
и на другой lnk="Акронис TI(рус)" - разные, два ярлыка
18291обновить SH.exe желательно
у меня SH.exe (2015.11.8.1), как будет новее - обновлю...

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

    Xemom1
  • 175
  • Стаж: 9 лет
  • Сообщений: 862
  • Репутация:88

    [+] [-]
nikzzzz,
Подтверждаю. Эта строка не срабатывает?
[Shortcut]
OSVersion=WIN_81,WIN_8,WIN_7,WIN_10
exe=\78Setup.exe
desktop=yes
quicklaunch=
Desc=Install new Windows
startmenu=\Tools
programs=
lnk=78Setup
workdir=
args=
icon=\78Setup.exe
[AutoRun]
hide=yes
Я так понимаю, в Win_XP - ярлык 78Setup, не должен появляться?

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

    puhpol
  • 2
  • Стаж: 10 лет
  • Сообщений: 891
  • Репутация:75

    [+] [-]
Xemom1, Приветствую!
У меня в вашей сборке отрабатывает..... Правда на рабочий стол не вывожу ярлык.(но помнится мне оно работало) bw
[CheckVer]
OSVersion=WIN_81,WIN_8,WIN_10,WIN_7
[Shortcut]
exe=\menu.cmd
Desktop=
Desc=меню установки Windows.
lnk=Setup Windows
StartMenu=\
WorkDir=\
icon=\win.ico
[AutoRun]
;в этой секции прописаны программы,
;запускаемые при вставке устройства (.bat,.exe,.reg)
hide=yes
bat=\menu.cmd

Комментарий от puhpol


Может в этом проблема:
[CheckVer]
OSVersion=WIN_81,WIN_8,WIN_10,WIN_7

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

    gera_serg
  • 1171
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
18439Я так понимаю, в Win_XP - ярлык 78Setup, не должен появляться?
Если на PE случайно запущена Sh.exe - старенькая (не знающая секции [CheckVer]) то ярлык появится.
Я не могу добиться "не появления" ярлыка/пункта TeamViewer11 (в его секции прописано только OSVersion=WIN_81).
Ярлык лезет и в PE8, и в PE81, и в PE10
Тем не менее, если ему поставить только OSVersion=WIN_XP, то он появляется в XP и не появляется в старших
скорее всего у NIKZZZ
WIN_81 == WIN_8 (что бывает, если проверять по 5 знакам, а не по 6)

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

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

    [+] [-]
18439Подтверждаю. Эта строка не срабатывает?
Возможно , была путаница версий, я мог забыть исправить сами номера версий, проверил - все отрабатывается правильно, заодно исправил баг WIN_81 == WIN_8.
Версия в шапке обновлена.

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

    Xemom1
  • 175
  • Стаж: 9 лет
  • Сообщений: 862
  • Репутация:88

    [+] [-]
nikzzzz,
Спасибо!
Теперь работает!

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

    puhpol
  • 2
  • Стаж: 10 лет
  • Сообщений: 891
  • Репутация:75

    [+] [-]
nikzzzz, Приветствую!
Вопрос: В последней версии RusLiveFull есть смысл обновлять утилиту?

Страница 5 из 15


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

Текущее время: 21-Ноя 22:45

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


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