Получите Приложение. Конфигурация другого Exe

List<String> strings=new ArrayList<String>(){};

while(strings.size() > 0) {

 String str = strings.remove(0);
}
22
задан Graviton 24 February 2015 в 07:31
поделиться

6 ответов

После некоторого тестирования я нашел способ сделать это.

  1. Добавляют Приложение. Файл конфигурации к тестовому проекту. Используйте опцию "Add as a link".
  2. Использование System.Configuration.ConfigurationManager.AppSettings["myKey"] для доступа к значению.
5
ответ дан Graviton 29 November 2019 в 05:19
поделиться

ConfigurationManager. Метод OpenMappedExeConfiguration позволит Вам делать это.

Образец от страницы MSDN:

static void GetMappedExeConfigurationSections()
{
    // Get the machine.config file.
    ExeConfigurationFileMap fileMap =
        new ExeConfigurationFileMap();
    // You may want to map to your own exe.comfig file here.
    fileMap.ExeConfigFilename = 
        @"C:\test\ConfigurationManager.exe.config";
    System.Configuration.Configuration config =
        ConfigurationManager.OpenMappedExeConfiguration(fileMap, 
        ConfigurationUserLevel.None);

    // Loop to get the sections. Display basic information.
    Console.WriteLine("Name, Allow Definition");
    int i = 0;
    foreach (ConfigurationSection section in config.Sections)
    {
        Console.WriteLine(
            section.SectionInformation.Name + "\t" +
        section.SectionInformation.AllowExeDefinition);
        i += 1;

    }
    Console.WriteLine("[Total number of sections: {0}]", i);

    // Display machine.config path.
    Console.WriteLine("[File path: {0}]", config.FilePath);
}
<час>

РЕДАКТИРОВАНИЕ: Это должно произвести значение "myKey":

ExeConfigurationFileMap fileMap =
    new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = 
    @"C:\test\ConfigurationManager.exe.config";
System.Configuration.Configuration config =
    ConfigurationManager.OpenMappedExeConfiguration(fileMap, 
    ConfigurationUserLevel.None);
Console.WriteLine(config.AppSettings.Settings["MyKey"].Value);
23
ответ дан stevethethread 29 November 2019 в 05:19
поделиться

Я думаю, что Вы ищете:

System.Configuration.ConfigurationManager.OpenExeConfiguration(string path)
4
ответ дан Chuck Norris 29 November 2019 в 05:19
поделиться

Я был бы точка второго Gishu, что существует иначе. Разве это не было бы лучше к abstact общее / "общедоступная" часть EXE в DLL создает EXE обертки для выполнения его? Это - конечно, более обычный шаблон разработки. Только материал, который Вы хотите использовать, вошел бы в DLL, и EXE сделает весь материал, который это в настоящее время делает, минус то, что вошло в DLL.

0
ответ дан alastairs 29 November 2019 в 05:19
поделиться

Это - xml файл, можно использовать Linq-XML, или DOM основывал подходы для парсинга релевантной информации.
(который сказал, что я подвергну сомнению, нет ли лучшего дизайна для того, что это.. Вы пытаетесь достигнуть.)

-1
ответ дан Gishu 29 November 2019 в 05:19
поделиться

Добавление ссылки в IDE только помогло бы во время разработки. Я думаю, что lomaxx имеет верное представление: System.Configuration.ConfigurationManager.OpenExeConfiguration.

-1
ответ дан Chuck Norris 29 November 2019 в 05:19
поделиться
Другие вопросы по тегам:

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