Пользовательский значок для пользовательского файла в Java - PullRequest
2 голосов
/ 21 мая 2019

Я пишу Windows-программу на Java (что-то вроде наклейки на экране для написания важных заметок и т. Д.).Автоматически, он сохраняет и кодирует все, что вы вводите, когда он закрыт.Для сохранения я сделал собственное расширение файла (.T22), но оно отображается как пустая страница.Я хочу изменить это автоматически при первом запуске программы.По сути, я хочу использовать собственный значок для сохранения файлов, например, у photoshop есть файлы .psd, но все они сделаны на java.

Я пробовал просматривать много сайтов, но не смог найти никого, кто бы даже говорил об этом..

1 Ответ

1 голос
/ 21 мая 2019

Этого нельзя достичь с помощью Java.Ну хотя бы без прав администратора.Windows отображает значки для расширений файлов, принимая значения из Реестры Windows. Дело в том, что когда появляется значок, он должен принимать всех пользователей согласно этой ссылке. В ссылке, HKEY_CLASSES_ROOT указано для достижения этого.Вот где приходит часть «Права администратора».Стоит отметить, не будучи на 100% уверенным, что файл .JAR (Java-приложение) может быть выполнен с правами администратора, только если вы выполните cmd как администратор , а затем java -jar myapp.jar.Я потратил много часов один день, чтобы редактировать эти реестры с Java, и мне не удалось сделать это без прав администратора.(Если вы это сделаете, дайте мне знать, как вы это делали :))

Теперь предположим, что у вас есть права администратора, в одну сторону, будет простая команда reg от привилегированного администратора cmd.

Как описано в предыдущей ссылке, вы не можете просто (я не уверен) изменить значок расширения файла, не указав полный путь к исполняемому файлу вашей программы (.exe).Да, вы догадались, ваша программа не является исполняемым файлом Windows.Это просто сжатый файл.Итак, это также отклоняется.

Теперь ваша проблема направлена ​​прямо к Как я могу преобразовать файл JAR в файл EXE? .Затем, плюс права администратора, вы можете сделать это.

Мой личный совет - найти конвертер JAR в EXE, который дает эту возможность во время установки программы.Я имею в виду, я уверен, что вы видели в установке Windows что-то вроде «Связать TXT-файлы с Notepad ++».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...