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

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

    [+] [-]
Простой лаунчер для запуска портативных программ.
Поддерживает 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.9
Версия 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).
Версия 1.6.4 =====================================
Исправлена проблема со шрифтами в главном окне при открытии окна редактирования.
Добавлена опция скрытия виджета в полноэкранном режиме (см. в настройках). Переделан код определения полноэкранного режима. Теперь должно работать в WinRE.
Исправлены баги с переменными окружения для х64 и х86 приложений.
Добавлена опция - отображать отсутствующие программы в конце списка (см. в настройках).
Исправлено несколько найденных багов. Оптимизация.
Версия 1.6.6 =====================================
В меню лаунчера добавлена опция показать\скрыть виджет.
В ховер меню отсутствующие программы теперь не отображаются.
Версия 1.6.9 =====================================
Добавлена возможность переименовывать исполняемый файл лаунчера. При этом ini файл лаунчера и файл кеша иконок будут иметь такое же имя как и исполняемый файл. Так же это касается файлов кастомной иконки, кастомного виджета. Для 32 битной версии исполняемого файла - переименуйте его с приставкой "_x86".
Пример как переименовывать файлы с кастомными иконкой и виджетом:
Soft.exe
Soft_x86.exe
Soft.ico
Soft.png
Добавлена возможность разварачивать лаунчер в полноэкранный режим. Так же будет работать "прилипание к краям экрана".
Исправлен баг со шрифтами в окне настроек (шрифт становился жирным).
Ссылка для скачивания v1.6.9
https://drive.google.com/file/d/1C5ZZp-WKk_ipl_yAwG...view?usp=sharing
https://disk.yandex.ru/d/r2NWFetNhXIfEw
Скриншоты


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

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

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

    [+] [-]
motorboy, вот ещё пример со списком, с привязкой данных к пункту

code

;- TOP
EnableExplicit
;- ● Structure
Structure prog
  path.s
  name.s
  idxImage.i
  size.q
  *p
EndStructure
;- ● Define
Define ListIcon_ID, hImgList
Define hIcon, i, idx, tmp, tmp$
Define item.LVITEM
Define *p
Define NewList ProgName()
Define NewList prog.prog()
;- List
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files\7-Zip\7zFM.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files\AIMP\AIMP.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files\WinRAR\WinRAR.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Windows\System32\notepad.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Windows\System32\calc.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files\Internet Explorer\iexplore.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files\Everything\Everything.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files\WinMerge\WinMergeU.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\K-Lite Codec Pack\MPC-HC64\mpc-hc64.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\Resource Hacker\ResourceHacker.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\Scanner\Scanner.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\HxD\HxD.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\QTranslate\QTranslate.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\HTML Help Workshop\hhw.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\FastStone Image Viewer\FSViewer.exe"
*p = AddElement(prog()) : prog()\p = *p : prog()\path = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
;-┌──GUI──┐
If OpenWindow(0, 0, 0, 300, 350, "Example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ListIcon_ID = ListIconGadget(#PB_Any, 5, 5, 290, 340, "Файлы", 200, #PB_ListIcon_FullRowSelect | #LVS_NOCOLUMNHEADER)
  hImgList = ImageList_Create_(32, 32, #ILC_COLOR32 | #ILC_MASK, 1, 1)
  SendMessage_(GadgetID(ListIcon_ID), #LVM_SETIMAGELIST, #LVSIL_SMALL, hImgList)
  ; Добавляем данные
  ForEach prog()
  Next
  i = 0
  SendMessage_(GadgetID(ListIcon_ID), #WM_SETREDRAW, 0, 0)
  ForEach prog()
    If FileSize(prog()\path) > 100
      hIcon = 0
      ExtractIconEx_(prog()\path, 0, @hIcon, 0, 1)
      If hIcon
        tmp = ImageList_AddIcon_(hImgList, hIcon)
        DestroyIcon_(hIcon) ; Иконку уже в ImageList, оригинал можно удалить
        If tmp <> -1
          prog()\idxImage = i
          item\mask = #LVIF_IMAGE
          item\iItem = i
          item\iImage = i
          tmp$ = GetFilePart(prog()\path, #PB_FileSystem_NoExtension)
          AddGadgetItem(ListIcon_ID, i, tmp$)
          SendMessage_(GadgetID(ListIcon_ID), #LVM_SETITEM, 0, @item)
          SetGadgetItemData(ListIcon_ID, i, prog()\p)
          i + 1
        EndIf
      EndIf
    Else
      DeleteElement(prog()) ; удалить несуществующий путь из списка
    EndIf
  Next
  SendMessage_(GadgetID(ListIcon_ID), #WM_SETREDRAW, 1, 0)
;-┌──Loop──┐
  Repeat
    Select WaitWindowEvent()
;- ├ Gadget
      Case #PB_Event_Gadget
        Select EventGadget()
          Case ListIcon_ID
            If EventType()  = #PB_EventType_LeftClick
              idx = GetGadgetState(ListIcon_ID)
              If idx <> -1
                *p = GetGadgetItemData(ListIcon_ID, idx)
                ChangeCurrentElement(prog() , *p)
                RunProgram(prog()\path)
              EndIf
            EndIf
        EndSelect
;- ├ Close
      Case #PB_Event_CloseWindow
        CloseWindow(0)
        ImageList_Destroy_(hImgList)
        End
    EndSelect
  ForEver
;-└──Loop──┘
EndIf

Информация от Ander_73


Дружище, такие "простыни" кода лучше сворачивать под спойлер.

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

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

    [+] [-]
AZJIO Спасибо за помощь!
Скоро выложу новую версию в которой реализовал то о чем просили, а потом займусь размером иконок, Hover меню, и фильтром показа программ на разных версиях винды.

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

    Stranger13
  • 31966
  • Стаж: 3 года 2 месяца
  • Сообщений: 64
  • Репутация:0

    [+] [-]
motorboy опробовал версию 1.1 спасибо за увеличение шрифта до 11, если можно для порядка до 12 увеличить мало ли кому пригодится.
выявились косячки:
-горячие клавиши на закрытие не работает, хотя в настройках написано "отображать/скрывать";
-в настройках при смене языка пропадает пункт свернуть в трей, приходится сохранить настройки и перезапустить тогда все норм;
-при нажатии на DEL иногда прога завершает работу и удаляет не выделенные программы;
-текст во вкладке "запуск от имени" редактировании проги не вмещается во вкладке;
-если со всплывающими подсказками не получается, тогда может при наведении курсора мыши на прогу сделать чтоб описание тоже менялось, а то при включении запуска прог одним щелчком теряется возможность описания просматривать внизу панелей;
-Запустить без ключей, для порядку может тогда и в меню "запустить от" добавить чтоб был полный функционал
Проверял на Windows 10x64 LTSC 1809
Еще одна хотелочка - возможно ли сделать запуск программ в запароленных архивах, как в 2K10 SoftPack или что то подобное.

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

    xnik
  • 19473
  • Стаж: 7 лет 6 месяцев
  • Сообщений: 540
  • Репутация:12

    [+] [-]
  • Откуда: СССР
возможно ли сделать запуск программ в запароленных архивах
Запорольте, потом в окне cmd пропишите пароль

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

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

    [+] [-]
Stranger13
-Закрытие окна горячей клавишей отключил случайно. В обновлении будет исправлено.
-Пропадает пункт "Свернуть в трей" - исправил.
-При нажатии на DEL иногда прога завершает работу и удаляет не выделенные программы - тут не знаю в чем причина. У меня такого не было. При удалении через меню такой проблемы не было? Попробуйте проследить когда именно происходит вылет(при удалении последней программы в списке, первой программы или другое).
-Текст во вкладке "запуск от имени" редактировании проги не вмещается во вкладке - исправил.
-Со всплвающими подсказками попробую что то придумать.
-Запустить без ключей в меню "запустить от" добавлю.
-Запуск программ в запароленных архивах... Можно подробнее. Что именно нужно? Добавить опцию ввода пароля под звездочками в окне добавления\редактирования и хранить пароль в зашифрованном виде? Что бы прога запускалась только из лаунчера?

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

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

    [+] [-]
106629-Со всплвающими подсказками попробую что то придумать.
BalloonTip

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

    Stranger13
  • 31966
  • Стаж: 3 года 2 месяца
  • Сообщений: 64
  • Репутация:0

    [+] [-]
motorboy
Попробуйте проследить когда именно происходит вылет
к примеру ставим курсор на самую верхнюю прогу в списке группы и нажимаем два раза подряд DELL верхняя прога удаляется и после вылет лаунчера. Еще один момент, выбираем верхнюю прогу в группе, затем выбираем другую группу (мышкой) выбирается другая группа но в правой панели не одна прога не выбрана, и после нажатия на DELL удаляется прога с прошлой группы, ну а если два раза делл то вылетает лаунчер.
Со всплывающими подсказками попробую что то придумать.
я чего затронул эту тему с подсказками всплывающими, когда просил сделать запуск программ по одиночному клику, то понимал что нарушится функционал описаний к программам который уже имеется, поэтому и предложил. Тут автору решать ка сделать так чтоб при изменении настроек функционал не хромал.
хранить пароль в зашифрованном виде? Что бы прога запускалась только из лаунчера?
Да. Вот тут для примера можно посмотреть чтоб не расписывать 2k10@Next_ru

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

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

    [+] [-]
Stranger13, подсказки особо не нужны, но если кому нужны, то можно в режиме один клик выводить подсказки перемещением курсора стрелкой на клавиатуре, а также флаг в ini-файле чтобы выводить в виде всплывающей подсказки, вот например. Но мне кажется изучать софт нужно не по подсказкам.

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

    Stranger13
  • 31966
  • Стаж: 3 года 2 месяца
  • Сообщений: 64
  • Репутация:0

    [+] [-]
AZJIO
Но мне кажется изучать софт нужно не по подсказкам.
Полностью согласен! Но речь идет о гибкости и удобстве в использовании функционала лаунчера, в части описания к программам.
выводить подсказки перемещением курсора стрелкой на клавиатуре
Мне достаточно и этого, но для функциональности не мешалоб и клавишами и наведением мышки на нужную прогу отображать подсказки, к примеру как MinstAll.

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

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

    [+] [-]
106631
Цитата
хранить пароль в зашифрованном виде? Что бы прога запускалась только из лаунчера?
Да. Вот тут для примера можно посмотреть чтоб не расписывать 2k10@Next_ru
Stranger13, Вопрос по запуску запароленных архивов. Вы хотите использовать программы из сборки 2k10@Next_ru? Файлы с расширением .7К? Или свои собственные запароленные архивы? Я не совсем понимаю как запускаются файлы 7К. Понятно что сначала распаковывается архив и запускается определенный ехе файл. Как указать лаунчеру какой файл запускать? И для распаковки такого архива придется включать в лаунчер еще и консольный архиватор 7zip?

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

    Stranger13
  • 31966
  • Стаж: 3 года 2 месяца
  • Сообщений: 64
  • Репутация:0

    [+] [-]
motorboy
Вы хотите использовать программы из сборки 2k10@Next_ru? Файлы с расширением .7К? Или свои собственные запароленные архивы?
Конечно лучше для вашего лаунчера свой формат архивов установить и использовать, а утилиты с 2k10@Next можно будет и перепаковать которые нужны. ну или адаптировать лаунчер под 7к архивы, только там пароль специфический.
Как указать лаунчеру какой файл запускать?
Сильно не вникал, там в каждом архиве есть файл "*.wcs" со сценарием (какую разрядность запускать, устанавливает язык проги и.д.), лаунчер определяет файл запуска по нему.
И для распаковки такого архива придется включать в лаунчер еще и консольный архиватор 7zip?
походу придется
Добавить опцию ввода пароля под звездочками в окне добавления\редактирования и хранить пароль в зашифрованном виде? Что бы прога запускалась только из лаунчера?
как предложение внести пароль к архивам в общие настройки лаунчера, в обычном виде, без всяких звездочек.
ну а в окне добавления\редактирования делать наверное это лишнее, ну или только если для частных случаев.

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

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

    [+] [-]
Stranger13, я не понимаю, зачем обычный лаунчер подводить к какому то специфическому формату какой либо сборки? А завтра придёт ещё чел и скажет а сделай-ка мне коня в кубе.
Для начала автору нужно определится что это за лаунчер, что он будет делать.
1. Запускать проги, как замена меню пуск, в котором реклама, рекомендации, поиск по интернету, поиск по файлам.
2. Установщик программ. То есть как WPI, с показом информации о проги, которые клиент видит в первый раз и как-то ориентируется.
3. Кому-то надо запустить проги разом. Замена автостарта что-ли. А там ещё захочется прибить запущенные проги разом.
Вот просто почитаешь лог обновлений WPI и думаешь, так это же специфический софт, так и контроль процесса установки. Невозможно тупо сделать одновременно и WPI и лаунчер и автостартер, я уж не говорю про совсем специфические задачи, такие как анализировать чужой пакет со скриптами, ага, распаковать запустить скрипт, удалить следы распаковки.
Совместить лаунчер с функцией WPI ещё можно, если самостоятельно ждать установки и кликать следующее. Но реально контролировать процесс и автоматом запускать следующее это знать в том числе формат установщика, который может в конце запустить какой нибудь батник, а родительский процесс самзавершится и лаунчер будет думать что завершено, а на деле нет и будет параллельно две проги ставить и создавать дефрагментацию.
Если автор пойдёт по неправильному пути, вложит туда второстепенные вещи по уговору, то потом проворачивать такой код будет тяжело, то есть встраивание какой то фичи потребует проверки все ли модули после этой фичи будут стабильно работать.

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

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

    [+] [-]
Согласен с AZJIO. Не буду добавлять запуск специфических запароленных архивов. Если надо запустить прогу с паролем - поможет ключ -p12345 в аргументах командной строки. Все о чем просили я в лаунчер уже добавил (кроме увеличения иконок. этим займусь тогда когда все будет работать стабильно и запросов больше не будет).
Добавлена версия 1.2
-Добавлено Hover меню в трее.
-Добавлен 12 размер шрифта (может кому пригодится).
-Теперь в режиме запуска одним щелчком мышки при наведении курсора на прогу показывается описание.
-Добавлен запуск без ключей для Администратора и Системы.
-Исправлены вылеты и баги при удалении программ клавишей Del.
Добавлен фильтр скрытия програм для:
-WindowsPE
-Windows normal
-Windows x86
-Windowsx64
Скрытые программы будут отображаться при поиске и при отображении всех программ. Их фон будет подсвечен красным цветом.

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

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

    [+] [-]
motorboy, кинул пачку ярлыков своих программ и DateTime прописалась с именем RegExp. Остальные норм. Её основное отличие от остальных - она запускается от админа. Возможно не получила доступ к имени и взяла из старого буфера. Думаю надо обнулять переменную и если не получено имя то брать его из имени исполняемого файла.
При добавлении группы вставляется "Новая группа". Думаю этот текст не нужен, так как надо его затирать. Если пользователь нажмёт ОК с пустой группой надо вставить "Новая группа", а если крестик, то отменить. Но каждый раз затирать текст даже если можно нажать Ctrl+A и потом печатать, а кто-то сначала нажмёт Delete или вообще будет стирать текст многократным Delete, то будут недовольны.
Это InputRequester? Походу да, проверил, у меня также, поле узкое по высоте, текст плохо вмещается. Шрифт у себя выбрал 12 я таким пользуюсь, либо 11, либо 12. И в настройках тексты чекбоксов не умещаются. Может если пользователь выбрал шрифт 12, то сделать коэффициент ширины и полей для окна? Или зарегистрировать функцию изменения размера окна.
А почему не определить язык ОС при старте? Или если боишься ложного включения языка и пользователь не сможет переключить (хотя по иконке понятно где настройки), то выдать мессагу на английском типа "Switch to Russian" (если определёна русская ОС), тут любой поймёт. А также если найден внешний файл Language, то считываю с него.
Заметил что берётся иконка 32х32 и трансформируется в 16х16, потому что расплывчатая и у некоторых у меня другая форма, есть различия между 32 и 16.
Проверь на нерабочих ярлыках, добавил из папки, где есть нерабочие, снёс все ярлыки, остались живые только группы. И после этого надо перезапустить, потому что ничего не добавляет. С проги Everything не может взять значок.
Если добавляется дубликат в ту же группу, вроде напрашивается запрос типа "Добавить дубликаты прог?", по крайней мере если все значения совпадают.
А размер программы чего такой большой? Вроде графики особой нет, на 200-500 кб тянет. Или все модули графики и регвыров добавлены?
Можно ещё добавить предупреждения при добавлении кучи файлов о не исполняемых файлах (т.е. кроме exe, lnk, cmd, bat, scr). Когда один это обдумано, а когда кучей просто в папке могут затесаться другие файлы. Ещё как вариант добавление папки расценивать как добавление категории с именем папки, а лежащие в корне ярлыки добавляются во вновь созданную категорию.

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

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

    [+] [-]
106641кинул пачку ярлыков своих программ и DateTime прописалась с именем RegExp. Остальные норм. Её основное отличие от остальных - она запускается от админа. Возможно не получила доступ к имени и взяла из старого буфера. Думаю надо обнулять переменную и если не получено имя то брать его из имени исполняемого файла.
Как происходит добавление ярлыков в лаунчере . Когда в окно бросается ярлык 1. из ярлыка извлекается путь к файлу на который он ссылается 2. извлекаются параметры коммандной строки если они есть 3. пытаемся получить имя проги из файла и если его нет то используем в качестве имени имя файла без расширения .4 Получаем иконку из файла.
Так что все должно работать. Возможно DateTime имеет имя RegExp в самом файле (можно посмотреть в свойствах файла).
-
106641При добавлении группы вставляется "Новая группа". Думаю этот текст не нужен, так как надо его затирать. Если пользователь нажмёт ОК с пустой группой надо вставить "Новая группа", а если крестик, то отменить. Но каждый раз затирать текст даже если можно нажать Ctrl+A и потом печатать, а кто-то сначала нажмёт Delete или вообще будет стирать текст многократным Delete, то будут недовольны.
Это исправлю.
-
106641Это InputRequester? Походу да, проверил, у меня также, поле узкое по высоте, текст плохо вмещается. Шрифт у себя выбрал 12 я таким пользуюсь, либо 11, либо 12. И в настройках тексты чекбоксов не умещаются. Может если пользователь выбрал шрифт 12, то сделать коэффициент ширины и полей для окна? Или зарегистрировать функцию изменения размера окна.
Шрифт интерфейса лаунчера Segoeui 9. Я специально вшил его в ЕХЕ что бы избежать таких багов (в настройках тексты чекбоксов не умещаются) потому размер ехе такой большой - файл шрифта 980 кб. Когда выбирается шрифт в настройках то он применяется только к списку групп и програм. На другие элементы интерфейса он влиять не должен. Я пробовал изменять размер шрифта по умолчанию в винде а так же DPI. В окне настроек лаунчера ничего не менялось. Все тексты умещались. Не знаю почему у Вас так происходит. Но я наверное сделаю окно настроек шире. Если можно скинте скрин окна. Хочу посмотреть как это вглядит.
-
106641А почему не определить язык ОС при старте? Или если боишься ложного включения языка и пользователь не сможет переключить (хотя по иконке понятно где настройки), то выдать мессагу на английском типа "Switch to Russian" (если определёна русская ОС), тут любой поймёт. А также если найден внешний файл Language, то считываю с него.
Сделаю при первом запуске лаунчера маленькое окошко где можно будет выбрать язык.
-
106641Заметил что берётся иконка 32х32 и трансформируется в 16х16, потому что расплывчатая и у некоторых у меня другая форма, есть различия между 32 и 16.
Посмотрю в коде. Возможно где то ошибка и указано загружать иконки размером 16х16.
-
106641Проверь на нерабочих ярлыках, добавил из папки, где есть нерабочие, снёс все ярлыки, остались живые только группы. И после этого надо перезапустить, потому что ничего не добавляет. С проги Everything не может взять значок.
Мне не удалось воспроизвести этот баг. Опишите подробнее последовательность действий приведшую к этому багу.
Иконку для Everything (и некоторых других прог) не удается получить. Например Everything находится "C:\Program Files\Everything\Everything.exe", а лаунчер получает путь "C:\Program Files (x86)\Everything\Everything.exe".
С этим буду разбираться.
-
106641Если добавляется дубликат в ту же группу, вроде напрашивается запрос типа "Добавить дубликаты прог?", по крайней мере если все значения совпадают.
Сделаю.
-
106641Можно ещё добавить предупреждения при добавлении кучи файлов о не исполняемых файлах (т.е. кроме exe, lnk, cmd, bat, scr). Когда один это обдумано, а когда кучей просто в папке могут затесаться другие файлы.
Это тоже сделаю.
-
106641Ещё как вариант добавление папки расценивать как добавление категории с именем папки, а лежащие в корне ярлыки добавляются во вновь созданную категорию.
Здесь думаю сделать так. Если папка брошена на список категорий - добавлять группу, сканировать папку (и подпапки) на наличие исполняемых файлов и добавлять их в эту группу. Если попадутся левые файлы то их потом можно будет удалить из группы.

Страница 3 из 16


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

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

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


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