Релиз Win+R Alias Manager 2.0

Кажется, я должен написать об этом заметку. В конце концов, Win+R Alias Manager - одно из тех приложений, за создание которого мне ничуть не стыдно, а это и не так часто случается.

Итак, доступен Win+R Alias Manager 2.0:

Программа подверглась обработке и переработке, и вот что из этого получилось.

  • Реализована сортировка по столбцам "Псевдоним" и "Путь"
  • Включена возможность менять размеры столбцов, так как я научился заполнять грид без косяков.
  • В программе теперь есть настройки, вот эти:
    - Подтверждать удаление
    - Подтверждать запуск
    - Подтверждать замену псевдонима. Замена - это если вы создаете новый псевдоним с именем, которое уже используется.
    - Маленькие иконки в списке
  • Экспорт выбранных псевдонимов в файл. В reg-файл. Несколько псевдонимов выбираются с CTRL или SHIFT.
  • Добавлен поиск. Поиск осуществляется по столбцам "псевдоним" и "путь" одновременно. Если в поле поиска нажать Enter - перейдете в список.
  • Главное окно теперь сохраняет своё положение и размер.
  • Флажок "Work with system-wide aliases" запоминает своё состояние.
  • Горячие клавиши, а именно:
    [k]Insert[/k] -добавить псевдоним
    [k]Alt[/k]+[k]E[/k] или [k]F2[/k] - изменить выбранный псевдоним
    [k]Ctrl[/k]+[k]F[/k] или [k]F3[/k] - перейти в окошко поиска/фильтра
    [k]Delete[/k] - удалить выбранный псевдоним
    [k]Ctrl[/k]+[k]Home[/k] или [k]Home[/k] - переход в начало списка
    [k]Ctrl[/k]+[k]End[/k] или [k]End[/k] - переход в конец списка
    [k]Alt[/k]+[k]R[/k] - запуск выбранного псевдонима
    [k]Alt[/k]+[k]B[/k] - показать в проводнике файл, для которого создан псевдоним
  • Исправлена ошибка - неверный запуск в привилегированном режиме. Я годами сажаю эту ошибку во всех программах, было бы странно не посадить её здесь.
  • Исправлено: разрешен символ плюса "+" в имени псевдонима
  • Исправлено: список не перематывается вверх при удалении псевдонима
  • Исправлено: не редактировалось имя псевдонима - курсор из середины текста всегда убегал в конец
  • И ещё  - REG_SZ использовался вместо REG_EXPAND_SZ. Это было не кошерно.

Ещё я немного оптимизировал код, но это обычно мало кого волнует.

Надеюсь, новая версия придется вам по нраву. Если вы прочитали пост до конца, но так и не поняли, что же делает эта программа - узнать об этом можно вот отсюда.

Все желающие могут скачать Win+R Alias Manager с его домашней страницы, которой волею моей легкой руки стало Winaero:

Скачать Win+R Alias Manager

Запасаюсь попкорном в ожидании комментариев.

Релиз Win+R Alias Manager 2.0: 21 комментарий

  1. Сергей, я запустил Вашу программу под Win XP+SP3 из под пользователя, входящего в группу Администраторы, все нормально работает, настройки сохраняет и читает. Дома у меня Vista+SP2. Ваша программа нормально работает только если запущена из под администратора (Run as administrator). При запуске из под обычного пользователя настройки не сохраняет и не читает. Чего-то Вы перемудрили в работе с реестром. Записывать и читать ветку HKEY_CURRENT_USER могут любые пользователи. Я писал программу на C# для проверки контрольных сумм файлов (MD-5 и SHA-1). Моя программа сохраняет в реестре в ветке HKEY_CURRENT_USER и читает имя последнего проверенного файла. Все работает из под любого пользователя. Я использовал стандартный класс для работы с реестром Microsoft::Win32::RegistryKey. Можно получить Ваши исходники? Я посмотрю их дома и помогу Вам в поиске ошибок.

  2. Записывать и читать ветку HKEY_CURRENT_USER могут любые пользователи, вот только под вистой надо читать и писать в HKLM.
    HKCU-псевдонимы появились только в Windows 7 и выше, MSDN не даст соврать.
    Я, кажется, в прошлой статье это писал.
    Под вистой программа должна работать также, как под XP. Если это не так — это ошибка, и я её исправлю. Сегодня проверю.

  3. Сергей, я писал выше, что у меня под Vista+SP2 моя программа нормально работает с ключом в ветке HKEY_CURRENT_USER. Я пишу RegistryKey RootKey=Registry.CurrentUser; и далее использую RootKey для открытия ключа и записи в него и все работает, и даже не спрашивает пароль администратора. Где в MSDN написано, что «HKCU-псевдонимы появились только в Windows 7 и выше» я не нашел. Похоже, все-таки у Вас где-то ошибка при работе с реестром.

  4. Using the App Paths Subkey

    An application that is installed for all users of the computer can be registered under HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths. In Windows 7 and later, an application that is installed for only one user can be registered under HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths.

    http://msdn.microsoft.com/en-us/library/windows/desktop/ee872121%28v=vs.85%29.aspx#appPaths
    Вы начинаете меня нервировать.

  5. Сергей, Вы какой-то непонятливый… Я Вам пишу, что у меня под Vista+SP2 моя программа нормально работает с ключом в ветке HKEY_CURRENT_USER, а Вы приводите мне ссылку совсем на другое. Лучше потестируйте свою программу под Vista и тогда увидите в чем проблема.

    1. Вы молодец! Я очень рад за вас!
      Вот только попробуйте уяснить себе вот это:
      Моя программа в Vista не работает с разделом HKCU. Вообще! Потому что подраздел …\App Paths из HKCU начал обрабатываться только в Windows 7 — это явно написано по моей ссылке, и более того, я вам привел цитату оттуда.
      Уяснили? Теперь давайте разбираться. Только что запустил программу на Vista SP2.
      Ожидаемый порядок действий:
      1. Запуск программы.
      2. Появляется запрос UAC или запрос на запуск с повышенными правами, если текущий пользователь — не админ
      3. Если пользователь нажал «Отмена» — выход из программы.
      4. Если пользователь нажал «Продолжить»/предоставил данные учётки админа — отображаем псевдонимы раздела HKLM.
      5. При добавлении нового псевдонима создаем его в разделе HKLM.

      У меня в точности совпадает по всем 5 пунктам.
      У вас что-то не так из этого списка?

  6. Сергей, Вы тоже молодец! Но я совсем не рад за Вас. Я писал Вам, что Ваша программа не сохраняет свои настройки, если она запущена не из под администратора (Run as administrator), а Вы мне упорно пытаетесь доказать «что подраздел …\App Paths из HKCU начал обрабатываться только в Windows 7». Это похоже на разговор слепого с глухим. Ваша программа сохраняет свои настройки в ключе HKEY_CURRENT_USER\Software\Winaero.com\Win+R Alias Manager\Settings. Причем здесь долгие объяснения о том, «что подраздел …\App Paths из HKCU начал обрабатываться только в Windows 7»? Потестируйте сохранение и чтение настроек Вашей программы под Vista.

    1. Чёрт, я вас действительно не так понял.
      Простите великодушно.
      Прямо сейчас нет возможности под ограниченной учёткой проверить программу, дома создам учётку без прав Администратора и проверю на ней.

  7. Сергей, я на Вас не обижаюсь 🙂 Кстати, у меня дома под Vista я проверял Вашу программу под юзером из группы Администраторы. Юзеров из групп Пользователи и Гости у меня нет. Желаю успеха и поздравляю с днем программиста!

    1. Спасибо. Если проблема действительно имеется (а я таки склонен вам верить), новая версия программы будет сегодня

  8. @Nikita
    Спасибо вам большое, баг имел место быть и устранен в версии 2.0.0.1, которую я отрелизил. Вы должны были получить уведомление от программы.

  9. Сергей, спасибо за доверие. Оперативно Вы работатете. 🙂 Я сегодня вечером доберусь дома до своего ноута и посмотрю новую версию.

  10. Сергей, вы проделали большую работу — программа работает без ошибок.

  11. Спасибо за интерес и за участие. Мне очень приятно, что в итоге программа соответствует вашим запросам.

  12. Сергей Ткаченко, ты делаешь нужно дело, спасибо за обновление!
    твой софт когда-нибудь станет на уровне Нира Софера 🙂

  13. Сергей, спасибо вам за программу. Но всё же хотелось бы видеть и русскую версию. И ещё презентуйте, пожалуйста, свою программу на http://lifehacker.ru/ . По моему она как раз подходит под формат этого ресурса.

  14. Некоторые (плохо написанные) программы ожидают информацию о рабочей директории (например вот эта: http://www.thediction.com/).

    В этом случае Win+R Alias Manager запускает программу с ошибкой.

    1. есть же галка в настройках псевдонима. Если включить её — программа получит информацию о рабочей директории. Она для подобных случаев там и сделана.

Обсуждение закрыто.