Сложнее ли писать на Java сертифицированные приложения с логотипом Windows ™? - PullRequest
1 голос
/ 10 апреля 2009

Сторонние поставщики, использующие наше программное обеспечение в качестве компонента, считают сертификацию Windows Logo важным критерием выбора. 90% требований легко соблюдать, учитывая гибкость развертывания программ на Java. Возникают некоторые непосредственные трудности:

  • Пометка JAR-файлов строками ресурсов для информации о версиях.
  • Переход от файлов свойств к файлам .INI
  • Сокращенное имя пути / Длинное имя пути / UNC плохо поддерживается библиотеками
  • Требования к внешнему виду

Это потребует серьезной перекодировки для адресации. Возможно, я слишком близко интерпретирую спецификации. Я нашел один приличный пример приложения, которое получило сертификацию Windows 2000 . Внешний вид в этом случае относится только к любому видимому установщику, который мы представляем. Даже сами спецификации подразумевают вещи в описаниях, которые в действительности не отражены в названии требования.

1,5 Приложение не должно выполнять чтение или запись в Win.ini, System.ini, Autoexec.bat или Config.sys

выдержка:

Если ваше приложение использует информацию, которую вы не хотите вносить в реестр, создайте личный файл инициализации и поместите его в каталог с исполняемыми файлами приложения. Вы можете легко управлять установкой личного файла .ini, а также добавлять или удалять информацию из существующих файлов .ini , используя установщик Windows для установки приложения.

Любые отзывы приветствуются.

Ответы [ 2 ]

1 голос
/ 10 апреля 2009

Для внешнего вида, вызовите это в начале вашей функции main():

    log.info("Setting java look and feel");
    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    } catch (Exception e) {
        log.warn("Could not set system look and feel", e);
    }
    // Make sure we have nice window decorations.
    JFrame.setDefaultLookAndFeelDecorated(true);
    JDialog.setDefaultLookAndFeelDecorated(true);
0 голосов
/ 10 апреля 2009

Обратите внимание, что пример файла INI не должен восприниматься как мандат. То, что вы называете «титулом», на самом деле само требование Причина этого заключается в том, что спецификации предназначены (помимо прочего) для предотвращения установки приложений друг с другом. Переход к частным конфигурациям (будь то в файловой системе или в реестре) поддерживает это.

Фактически, текущее предложение - это уже не INI-файлы, а реестр для небольших частей конфигурации и XML-файлы в %APPDATA%, если у вас их много.

...