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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
погуглил, читаю статью Стёркина
AZJIO, А можете дать ссылку на эту статью, а то у Стёркина много чего написано ...

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

    AZJIO
  • 17953
  • Стаж: 6 лет 1 месяц
  • Сообщений: 1269
  • Репутация:126

    [+] [-]
ссылка

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
Да, эту статью последний раз читал как раз год и месяц назад, когда делал себе вручную менюшки af
Мануал на все времена. Кстати, оттуда я и взял информацию про CommandFlags, которые создают разделители в меню.
Впрочем, ответа, почему для "типов файлов" у меня в семёрках меню не создаётся, я так и не нашел.
Ну и ляд с ним. Я усё равно этим пунктом пользоваться не буду. Поскоку всегда делаю меню для "всех файлов"
Мне так удобнее. А этот функционал работает прекрасно
aa
Подумываю кнопку "Удалить все меню" - полезно для эксперимента и может для дела, чтобы переделать заново.
А когда добавите Эту кнопку зачистки всех изменений, которые сделала программа ?
Будет ли выбор в программах по Ctrl+A ?
Планируйте ли ввести разделители и управляемую сортировку программ в SubMenu Windows 7-10
и, соответственно, создаваемом при помощи SubMenu Windows 7-10 контекстном меню ?
Добавлено через 14 минут 5 секунд:
Да, есть исчо предложение - маленькое усовершенствование
Сейчас кнопки программы открывают реестр регедитом. Что не всегда удобно. Слишком уж регедит прост ...
Обычному пользователю конечно хватит и регэдита. Да обычный пользователь туды и не полезет - в реестр.
А вот продвинутому или профи явно нужно будет подцепить какой-нибудь редактор реестра посерьёзней...
Можно ли в ini прописать адрес редактора реестра, который будет использоваться программой вместо штатного регедита ?
Пользователь при необходимости сам внесёт туда адрес того редактора реестра, которым ему привычно пользоваться.
Я, например, пользуюсь сейчас либо Registry WorkShop либо RegistryFinder.
Ну а если этот адрес в ini пуст, то тогда использовать штатный регедит...
Думаю, такая фишка будет полезна и для программы и для тех, кто её будет использовать.

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

    AZJIO
  • 17953
  • Стаж: 6 лет 1 месяц
  • Сообщений: 1269
  • Репутация:126

    [+] [-]
rekshd, перекачай
Ctrl+A и Del добавлены.
параметр "RegProg = путь" укажи в ini
ещё перекачай, добавил удаление всех меню (но не списка, его можно отдельно удалить Ctrl+A потом Del)

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
90200rekshd, перекачай
Ctrl+A и Del добавлены.
параметр "RegProg = путь" укажи в ini
ещё перекачай, добавил удаление всех меню (но не списка, его можно отдельно удалить Ctrl+A потом Del)
Усё добавленное отлично работает.
Правда с редакторами реестра в наглую первоначально не пошло.
Пришлось покурить мануалы по использованию их в командной строке и вообще по ихним командам запуска.
И "шалость удалась" Настроил и Registry WorkShop, и RegistryFinder. А других мне пока и не надо.
aa
Есть у Вас мысль как отследить почему в семёрке не срабатывает создание меню "по типу файлов" ???
Никак не могу понять почему в 10ке работает, а в 7ке не работает.
Операционки то ведь одинаковые ... Это ж не Win98SE ...
Или "забить" на это ?

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

    AZJIO
  • 17953
  • Стаж: 6 лет 1 месяц
  • Сообщений: 1269
  • Репутация:126

    [+] [-]
90201а в 7ке не работает
Нельзя исключать что проблема на стороне Windows. Надо найти рабочую инструкцию или признать что на Win7 не работает.
Пришлось покурить мануалы по использованию их в командной строке и вообще по ихним командам запуска.
кроме того я сделал кавычки внутри кода, то есть путь указывать без кавычек. Возможно это неправильно, вдруг понадобиться добавить ключ типа "/f путь", тогда в кавычках должен быть только путь, но не f и вот тут нет гибкости. Но зато защита, если юзер не думает о кавычках и просто указал путь, то не сделав кавычки внутри этот путь распался бы на множество параметров по пробелам.
Перезалил на обе ссылки, обновив англоязычную версию.

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
AZJIO,
кроме того я сделал кавычки внутри кода, то есть путь указывать без кавычек. Возможно это неправильно, вдруг понадобиться добавить ключ типа "/f путь", тогда в кавычках должен быть только путь, но не f и вот тут нет гибкости. Но зато защита, если юзер не думает о кавычках и просто указал путь, то не сделав кавычки внутри этот путь распался бы на множество параметров по пробелам.
Ну для меня ничего не изменилось поскольку оба моих редактора реестра изначально потребовали для корректной работы дополнительные ключи запуска.
И оба редактора лежали по пути с пробелами, так что я сразу их пути закавычил.
Конструкция у меня изначально получилась типа:
RegProg="путь до проги с пробелами" /ключ запуска
Поэтому ничего менять не пришлось

@@@@@@@@@@@@@

ab
Добавлено через 1 час 15 минут 13 секунд:
Есть исчо предложение по маленькому косметическому улучшению
В SubMenu видно только название добавленной программы.
Можно ли при подведении к этому названию сделать всплывающее меню с адресом программы ?
А то при большом количестве программ добавленных вручную (не из ини файла) начинаю путаться ...
Впрочем эта идея на Ваше усмотрение aa

@@@@@@@@@@@@@

Добавлено через 1 час 33 минуты 42 секунды:
Странно au
Регфайл выгруженный с десятки и натравленный на семёрку в результате дал в проводнике такое же меню, какое было в 10ке.
Для типов файлов... И работает оно в семёрке также как в десятке.
Так что сами по себе настройки меню однотипные в обеих операционках.
А вот SubMenu импортированные регфайлом настройки в режиме "Типы файлов" видит и позволяет их изменять, но по факту ничего не меняет...
Похоже усё таки что то не учтено в SubMenu
Но поскоку я нуль в PureBasic, найти в исходном коде я ничего не смогу. Сначала надо PureBasic изучить ... А я это уже год собираюсь сделать
ai

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

    AZJIO
  • 17953
  • Стаж: 6 лет 1 месяц
  • Сообщений: 1269
  • Репутация:126

    [+] [-]
Возможно ассоциации не срабатывают, ProgID не получен. Надо в LiveCD семерки попробовать исправить функцию.
Подсказку в меню вряд ли, это же винда делает отображение меню. Если бы они сделали такой флаг в реестре, то я лишь могу обеспечить его включение.
Смогу только вечером посмотреть.

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
Принесли мне ноут с x86 win7.
На нём ситуация повторяется - для типов файлов ничего не создаётся
Обнаружил исчо пару моментов:
1. вне зависимости от настроек пункта MenuName=Действия программа всё равно для всех файлов, папок, дисков и рабстола меню создает с пунктом Действия
Добавлено - обновил дрова и перегрузил ноут - создание пунктов начало работать штатно. То есть если меняю название пункта меню в ини, он в меню начинает создаваться с новым, уже моим именем.
2. Пункт удалить все меню не срабатывает, пишет удалено 0 и это соответствует реальности - в реестре усё остается на месте.
А вот пункт удалить меню (то есть в розницу) срабатывает прекрасно и меню удаляет.
После перезапуска ноута Пункт удалить все меню так и не работает ...
Так что этот момент стоит проверить

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

    AZJIO
  • 17953
  • Стаж: 6 лет 1 месяц
  • Сообщений: 1269
  • Репутация:126

    [+] [-]
90217Пункт удалить все меню не срабатывает,
Так как я не могу определить в какие места прописаны, то я запрашиваю данные SubCommands и если они существуют, то удаляю. Проблема, если меню пустое, то такое меню не будет видно для алгоритма, а в одиночном удалении так как конкретно запрашивается тип, то удаление происходит без проверки наличия, а только проверка, что удалено успешно. Итак, проблема: пустое меню. В допустимых функциях по работе с реестром нет функции проверки существования параметра, наверно напишу свою.

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
AZJIO,
в одиночном удалении так как конкретно запрашивается тип
под типом Вы понимаете "все файлы", диск, папка, рабстол ?
ДА, удаление всех меню пытался использовать тока тогда, когда имел какое-либо наполнение. Оно никогда не было пустым.
Пример из регфайла
"SubCommands"="u.FileSizesList_x64;u.ProcExp x64 en ;u.ProcExp x64;u.PotPlayerMini64"

Добавлено через 6 минут 6 секунд:
Вопрос - под удалением всех меню Вы понимаете удаление ВСЕХ меню, что созданы в разных местах (рабстол, папки, диски и т.д.) сразу и одновременно ?
Добавлено через 7 минут 59 секунд:
А может поступить проще - при создании меню где нибудь это фиксировать в логе.
А затем, считав этот протокол, удалить тока созданное программой ?

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

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
AZJIO, приветствую.
Я пока пользую программу ECMenu. Хорошо придумана и сделана, но есть один большой недостаток - невозможно автоматически приложить выбор. Надо открыть программу, выбрать и потом кнопкой приложить. Я даже писал на офсайт, но ничего не ответили. Вот хотел спросить возможно ли сделать такое автоматическое приложение заранее выбраного набора программ в SubMenu Windows 7-10? aa

_________________
Подпись отключена за нарушение правил форума

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
Ну можно исчо проще:
Не искать содержимое "SubCommands"="u. а сразу удалять из четырёх мест (папки, все файлы, диски, рабстол)
куст реестра, содержащий "SubCommands" (Возможно добавив проверку на присутствие в этих ветках чего-то с ="u.)
Например: подлежат удалению
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shell\OpenActions
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\OpenActions
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Drive\shell\OpenActions

Остаётся открытым вопрос с типами файлов. но там можно взять конечное количество расширений (которые представлены в ини) и провести с ними удаление аналогично ...
Получится чисто механическое действие, не требующее сложных вычислений и поиска параметров ...
Кстати, обнаружил тока что, что куст для рабочего стола
HKEY_CLASSES_ROOT\Directory\Background\shell\OpenActions
в Экспорт по кнопке не попадает ... хотя добавляется и удаляется в розницу отлично
Проверьте пожалуйста


Последний раз редактировалось: rekshd (2021-12-02 20:25), всего редактировалось 1 раз

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

    loban_ser
  • 17796
  • Стаж: 6 лет 2 месяца
  • Сообщений: 578
  • Репутация:24

    [+] [-]
AZJIO, можно реализовать как например в PsMgr конфиге BackFile=%ProgramData%\PsMgr.bck
какие значения вносились в реестр

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

    rekshd
  • 19892
  • Стаж: 5 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
dimo70,
Я пока пользую программу ECMenu. Хорошо придумана и сделана, но есть один большой недостаток - невозможно автоматически приложить выбор
Сам пользуюсь этой программой с момента её появления у содрума (правда крайние версии ECMenu очень уж стали замудрёны в настройке)
Но вот как раз отсутствие автоматического срабатывания при запуске я считаю плюсом ECMenu, а не минусом.
Сначала настроить, перепроверить, а уж потом применять af
Я и AZJIO хотел предложить применение настроек SubMenu Windows 7-10 вынести на клавшу Применить и убрать с автомата.
Впрочем, для меня это непринципиально и несущественно. Как решит AZJIO пусть так и будет
Добавлено через 10 минут 38 секунд:
Вот хотел спросить возможно ли сделать такое автоматическое приложение заранее выбраного набора программ в SubMenu Windows 7-10?
Дак это ж и реализуется через клавишу Экспорт
Если есть выгруженный файл реестра, созданный программой, то сама программа и не нужна более.
Можно удалить. От слова совсем.
Лишь бы были на своих местах проги, для которых SubMenu Windows 7-10 сделала менюшки.
Нажал на файл реестра и усё az
PS По моему аналогично и ECMenu работает

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


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

Текущее время: 20-Апр 17:56

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


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