Инициализация user.config или app.exe.config во время установки

Другое событие NullPointerException возникает, когда объявляется массив объектов, а затем сразу же пытается разыменовать его внутри.

String[] phrases = new String[10];
String keyPhrase = "Bird";
for(String phrase : phrases) {
    System.out.println(phrase.equals(keyPhrase));
}

Этот конкретный NPE можно избежать, если порядок сравнения отменяется ; а именно, использовать .equals для гарантированного непустого объекта.

Все элементы внутри массива инициализируются их общим начальным значением ; для любого типа массива объектов, это означает, что все элементы null.

Вы должны инициализировать элементы в массиве перед доступом или разыменованием их.

String[] phrases = new String[] {"The bird", "A bird", "My bird", "Bird"};
String keyPhrase = "Bird";
for(String phrase : phrases) {
    System.out.println(phrase.equals(keyPhrase));
}

11
задан Chris 26 September 2008 в 18:47
поделиться

3 ответа

Если Вы создаете это приложение для более крупных компаний, то необходимо взглянуть на Групповую политику. К сожалению, это возвратит Ваше приложение Золотому Веку реестра. Я понимаю, что это было бы огромным изменением в Вашей программе, но это - путь к этому.

Однако, если URL веб-сервиса является единственной вещью, необходимо установить этот путь, затем GPO мог бы быть излишеством. В этом случае я был бы hardcode имя исполняемого файла.

3
ответ дан 3 December 2019 в 11:52
поделиться

Если это приемлемо для Вас для hardcode по крайней мере одна установка в файле конфигурации, можно использовать это для указания на базу данных или веб-сервис или путь сетевого файла, где все пользовательские настройки конфигурации могут быть сохранены. Использование Системы. Конфигурация. ConfigurationManager. OpenExeConfiguration () можно затем обновить файл конфигурации от этого местоположения или на первом показе или каждый раз, когда приложение запускает.

0
ответ дан 3 December 2019 в 11:52
поделиться

Я знаю, что это не точно ответ, который Вы ищете, но необходимо выбрать более "серьезный" установщик. Мы используем Усовершенствованный Установщик, и это - уничтожение, делает что-либо и все, о чем можно думать.

1
ответ дан 3 December 2019 в 11:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: