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

    motorboy
  • 41869
  • Стаж: 1 месяц 9 дней
  • Сообщений: 58
  • Репутация:14

    [+] [-]
Простой лаунчер для запуска портативных программ.
Поддерживает Drag&Drop. Позволяет запускать программы от имени Администратора и от имени Системы с правами TrustedInstaller.
Если запускать программу удерживая клавишу Shift она запустится от имени администратора если удерживать CTRL+Shift запустится от имени системы. Если удерживать клавишу ALT - то запустится без ключей командной строки.
Позволяет добавлять программы перетаскиванием из проводника Windows. Если вы перетащите файл на правую панель, программа добавится в текущую выделенную категорию.
Если перетащите на левую панель, программа добавится в ту категорию на которую вы её бросите.
Также чтобы сменить категорию перетащите программы из правой панели на категорию в левую панель.
Категории можно сортировать перетаскиванием. Программы сортируется автоматически по алфавиту.
Также вы можете добавлять системные утилиты Windows. Но это можно делать только вручную. Выберите "Добавить программу" и для например "Панели управления" впишите "Control". Утилита сама найдёт нужный файл и запустить его.
В лаунчере можно использовать в путях переменные окружения (%WINDIR% %USERPROFILE% %SystemRoot% и т.д.).
В файлах и папках добавленных в лаунчер проверяются пути, и если в них есть пути из переменных окружения - они подставляются в путь к файлу\папке. Например если добавить папку "Рабочий стол" - то путь будет выглядеть так "%USERPROFILE%\Desktop".
Так же переменные окружения можно использовать в параметрах коммандной строки.
Например что бы открть файл "Hosts" на любом компьютере заполните поля приложения так:
"Путь к программе\файлу" - %SystemRoot%\System32\Notepad.exe
"Параметры коммандной строки" - %SystemRoot%\System32\drivers\etc\hosts
Для показа окна лаунчера используйте комбинацию клавиш CTRL+пробел или выберите горячую клавишу в настройках.
Другие клавиши:
CTRL+F - делает активной строку поиска.
CTRL+D - дублировать текущую выделенную программу (если нужно добавить одну и ту же прогу в разные группы).
CTRL+N - Добавить программу или группу.
CTRL+E - Редактировать программу или переименовать группу.
CTRL+S - Открыть окно настроек
CTRL+I - Открыть окно информации.
Shift-F10 - вызов контекстного меню для групп\программ.
Стрелка вправо\влево делают активными соответственно правую и левую панель.
Клавиши вверх\вниз - перемещение по списку групп\программ.
ENTER - запуск текущей выделенной программы.
DEL - удалить текущую выделенную программу или группу, очистить строку поиска.
Если есть идеи что можно добавить в лаунчер - пишите в комментариях. Постараюсь сделать все на что хватит знаний.
История версий - текущая 1.6
Версия 1.1 ======================================
Добавлена возможность запуска программ одним щелчком мыши.
Добавлена возможность запуска программ без ключей.
Добавлено сворачивание лаунчера в трей и горячая клавиша для показа окна (по умолчанию CTRL+пробел но можно изменить в настройках).
Добавлена возможность добавления нескольких файлов перетаскиванием из проводника Windows.
Добавлена возможность изменить размер шрифта для панелей. Позже попробую сделать изменение размера иконок.
Версия 1.2 ======================================
-Добавлено Hover меню в трее.
-Добавлен 12 размер шрифта (может кому пригодится).
-Теперь в режиме запуска одним щелчком мышки при наведении курсора на прогу показывается описание.
-Добавлен запуск без ключей для Администратора и Системы.
-Исправлены вылеты и баги при удалении программ клавишей Del.
Добавлен фильтр скрытия программ для:
-WindowsPE
-Windows normal
-Windows x86
-Windowsx64
Скрытые программы будут отображаться при поиске и при отображении всех программ. Их фон будет подсвечен красным цветом.
Версия 1.3 =====================================
-Добавлена возможность выбора шрифта для панелей и интерфейса.
-Добавлена возможность изменять цвет шрифта и фона главного окна.
-При первом запуске теперь можно выбрать язык лаунчера.
-Добавлена возможность экспорта ярлыков группы. Нажмите правую кнопку мыши на группе удерживая клавишу Shift.
-Добавлена возможность добавлять в лаунчер папку с программами. Перетащите папку на список групп. Она добавится в список и в нее будут добавлены все найденные в ней и подпапках .exe,.lnk,.bat,.cmd файлы.
-Добавлена возможность поменять местами кнопки мыши для меню в трее.
-Добавлена возможность добавлять лаунчер в автозагрузку Windows.
-При удалении группы теперь можно удалить все программы из этой группы.
-Изменен внешний вид главного окна. Добавлена в список групп, группа "Все программы".
-Теперь иконки программ можно сохранять в кеше. Значительно увеличивается скорость загрузки лаунчера. Особенно на медленных флешках или дисках.
-Теперь лаунчер идет в двух вариантах х64 и х86. В х86 на 64 битных Windows не загружаются иконки некоторых файлов. В х64 все в порядке.
Из за добавления группы "Все программы" при первом запуске продублируются группы "Избранное" и "Без категрии". Просто удалите их.
Исправил все баги о которых сообщали пользователи (я надеюсь).
Так же добавил почти все о чем просили. Если не будет новых багов, то займусь добавлением функции WPI в лаунчер.
Версия 1.4 =====================================
-Теперь в лаунчере можно использовать в путях переменные окружения (%WINDIR% %USERPROFILE% %SystemRoot% и т.д.).
В файлах и папках добавленных в лаунчер проверяются пути, и если в них есть пути из переменных окружения - они подставляются в путь к файлу\папке. Например если добавить папку "Рабочий стол" - то путь будет выглядеть так "%USERPROFILE%\Desktop".
Так же переменные окружения можно использовать в параметрах коммандной строки.
Например что бы открть файл "Hosts" на любом компьютере заполните поля приложения так:
"Путь к программе\файлу" - %SystemRoot%\System32\Notepad.exe
"Параметры коммандной строки" - %SystemRoot%\System32\drivers\etc\hosts
-Добавлен фильтр расширений файлов добавляемых при перетаскивании папки на панель групп. Добавить\убрать расширения можно в настройках.
-Изменен поиск программ. Теперь если в строке поиска перва буква заглавня - то поиск будет от начала имени программы (если буквы из строки поиска сопадают с первыми буквами в имени программы). Если строчная - то будет искаться в любом менсте имени программы.
-Добавлена возможность включать показ сетки линий в списках и раскраска списка зеброй. Включается в настройках.
-Добавлена возможность изменять иконку отображаемую в заголовках окон, панели задач, трее. что бы это работало - поместите иконку с именем "SimpleLauncher.ico" в папке лаунчера.
-Теперь описание программы можно редактировать в главном окне. Добавьте или измените описание и нажмите CTRL+S для сохранения.
-Теперь лаунчер запоминает стили выбраных шрифтов.
-Добавлена возможность выбопа цвета подсветки для списка групп\программ.
-Возвращена возможность добавлять папки в список программ.
-Исправлены все баги о которых сообщали пользователи и те которые нашел сам.
Перенес параментры шрифтов в ini в отдельную группу. Поэтому при первом запуске новой версии лаунчера у вас слетят настройки шрифтов.
Версия 1.5 =====================================
-Исправлено отображение раскраски зеброй и разделительных линий в панелях.
-Цвет подсветки по умолчанию теперь зеленый
-Кастомная подсветка теперь работает и без включения смены цвета для панелей.
-Увеличено расстояние между иконкой и названием групп.
-Исправлено добавление корневых папок дисков (С:\ D:\ и т.д.)
-Добавлена раскраска зеброй панели групп.
-Добавлена возможность настраивать контрастность разделительных линий,раскраски зеброй и подсветки.
-Добавлен виджет для лаунчера.
При запуске лаунчера он появляется на рабочем столе (если включено показывать виджет при запуске лаунчера). Его можно поместить в любом месте рабочего стола. Перемещать его можно левой кнопкой мыши. Двойной клик - показать\скрыть лаунчер. Правый клик - показ hover меню.
По умолчанию изображение виджета - иконка лаунчера.
Можно использовать свое изображение для виджета. Для этого поместите в папку лаунчера изображение в формате PNG и именем SimpleLauncher.png (!!! В PNG файле обязательно должен быть канал прозрачности иначе виджет не будет отображаться !!!). Размер изображения подбирайте на свое усмотрение. При DPI рабочего стола 125% - размер 64х64 пикселя будет примерно как иконка самого лаунчера. Изображение не обязательно должно быть квадратным. Клики мышки по гаджету срабатывают только в непрозрачных местах гаджета. Но в настройках можно включить срабатывание кликов по всей площади гаджета.
!!! Перенес настройки цвета в отдельную группу в INI файле. Поэтому при первом запуске у вас слетят настройки цвета главного окна !!!
Версия 1.5.6 =====================================
Исправил невозможность запуска программ с относительными путями при запуске лаунчера из автозагрузки Window.
Добавил выбор глубины сканирования папок при добавлении папки в список групп.
Теперь если вы добавляете папку в список программ (правая панель) с зажатой клавишей "Shift" будет предложено добавить файлы из этой папки в текущую группу (так же будет предложено выбрать глубину сканирования).
Запретил добавление логических дисков в панель групп и при добавлении в панель программ с зажатой клавишей Shift.
Добавил возможность выбора показа виджета при запуске в обычной Windows и WinPE.
Вернул подсказки по горячим клавишам в менюшки.
Добавил возможность указывать рабочую папку для программ (из ярлыков при перетаскивании берется автоматически если есть).
Версия 1.6 =====================================
Исправлено:
Когда тянешь папку с шифтом в окно прог в папку без категорий, добавляются файлы только во все программы.
Редкие вылеты при удалении программ из списка.
Добавлено:
Добавлен пункт показа виджета "кроме WinPE".
Добавлена возможность для перетягивания из программ с низшими правами в проги с высшими правами (Не проверено).
При добавлении папки в список групп и в список программ (с Shift-ом), первое окно с сообщением (добавить/отменить) убрано.
Добавлены переменные окружения и относительный путь для рабочей папки.
Добавлена опция скрывать программу в версии Windows ниже 10.
Добавлены пункты в меню лаунчера - "Добавить программы из Меню Пуск" и "Удалить отсутствующие программы".
Добавлена возможность изменять размер иконок. (от 16х16 до 64х64). Очистите кеш иконок!. При следующем запуске лаунчер загрузит иконки заново в более высоком качестве(загрузка может быть долгой!).
Увеличена на порядок скорость отображения списка программ (через WinApi).
Ссылка для скачивания v1.6
https://drive.google.com/file/d/1UNEWr2t9N6GRxoJxuH...view?usp=sharing
https://disk.yandex.ru/d/N-kGhQSp2GUuVw
Скриншоты


Последний раз редактировалось: motorboy (2026-04-09 00:28), всего редактировалось 36 раз(а)

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

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

    [+] [-]
106804-переделать сортировку списка программ в категориях
Сегодня пробовал сортировку, типа добавить флаг sort=1, у меня есть сокращённые примеры (всего 60 строк), но оказалось там задействуются ассоциативные значения пункта (SetGadgetItemData), а они у меня уже заняты указателями на структуры данных пункта.

код сортировки

EnableExplicit
Structure PB_ListIconItem
  UserData.i
EndStructure
#LVM_SETEXTENDEDLISTVIEWSTYLE = #LVM_FIRST + 54
#LVM_GETEXTENDEDLISTVIEWSTYLE = #LVM_FIRST + 55
Global ListIconGadget, lvi.LV_ITEM
Procedure CompareFunc(*item1.PB_ListIconItem, *item2.PB_ListIconItem)
  Protected *Buffer1, *Buffer2, *Seeker1, *Seeker2, result, done, char1, char2
  *Buffer1 = AllocateMemory(512 * SizeOf(Character))
  *Buffer2 = AllocateMemory(512 * SizeOf(Character))
  result = 0
  lvi\iSubItem = 0
  lvi\pszText = *Buffer1
  lvi\cchTextMax = 512
  lvi\Mask = #LVIF_TEXT
  SendMessage_(ListIconGadget, #LVM_GETITEMTEXT, *item1\UserData, @lvi)
  lvi\pszText = *Buffer2
  SendMessage_(ListIconGadget, #LVM_GETITEMTEXT, *item2\UserData, @lvi)
  *Seeker1 = *Buffer1
  *Seeker2 = *Buffer2
  done = 1
  While done
    char1 = Asc(UCase(Chr(PeekC(*Seeker1))))
    char2 = Asc(UCase(Chr(PeekC(*Seeker2))))
    result =(char1 - char2)
    If result <> 0 Or (*Seeker1 - *Buffer1) > 511 * SizeOf(Character)
      done = 0
    EndIf
    *Seeker1 + SizeOf(Character)
    *Seeker2 + SizeOf(Character)
  Wend
  FreeMemory(*Buffer1)
  FreeMemory(*Buffer2)
  ProcedureReturn result
EndProcedure
Procedure UpdatelParam()
  Protected i, tmp
  tmp = GetDlgCtrlID_(ListIconGadget)
  For i = 0 To SendMessage_(ListIconGadget, #LVM_GETITEMCOUNT, 0, 0) - 1
    SetGadgetItemData(tmp, i, i)
  Next
EndProcedure
If OpenWindow(0, 384, 288, 640, 480, "ListIconGadget сортировка", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget)
  Define LVWidth = 190
  Define LVCWidth = 60
  ListIconGadget = ListIconGadget(0, 0, 0, LVWidth, 222, "Кол 0", LVCWidth, #PB_ListIcon_GridLines | #PB_ListIcon_FullRowSelect | #LVS_NOCOLUMNHEADER)
  AddGadgetItem(0, 0, "Zzz 1")
  AddGadgetItem(0, 1, "Bab 2")
  AddGadgetItem(0, 2, "Abb 3")
  AddGadgetItem(0, 3, "Aab 4")
  AddGadgetItem(0, 4, "Aaa 5")
  UpdatelParam()
  SendMessage_(ListIconGadget, #LVM_SORTITEMS, 0, @CompareFunc())
  Repeat
    ;     EventID = WaitWindowEvent()
  Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
End

Страница 13 из 13


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

Текущее время: 11-Апр 02:40

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


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