Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для Clandestin
20 / 20 / 9
Регистрация: 10.11.2010
Сообщений: 90
.NET 3.x

Чтение параметров приложения и их использование

02.04.2013, 18:06. Показов 1008. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Появилась следующая проблема. Имеется такой код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
private void MainForm_Load(object sender, EventArgs e)
{
    zipfilename = Properties.Settings.Default.LastPathToZipArchive;
}
 
private void LoadTablesFromMSTF()
{
    // Если имеется путь к последнему файлу-архиву
    if (zipfilename != "")
    {
        // Если файл по данному пути имеется
        if (File.Exists(zipfilename))
        {
            try
            {
                // Код загрузки файла
            }
            catch (Exception ex)
            {
                // Выводим сообщение об ошибке
                MessageBox.Show("Описание ошибки: " + ex.Message.ToString(), "Ошибка!!!",
                        MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        // Если файл не найден
        else
        {
            // Выводим предупреждение, что файл не найден
            MessageBox.Show("Файл " + Properties.Settings.Default.LastPathToZipArchive +
                    @" ненайден! Таблицы не будут загружены. Воспользуйтесь меню Файл->Открыть 
для поиска файла-архива.", "Ненайден последний файл!",
                        MessageBoxButtons.OK, MessageBoxIcon.Warning);
        }
    }
}
Так вот. Если я принудительно присваиваю значение пути к файлу переменной zipfilename во время инициализации, то архив загружается в форму. Но когда я считываю значение пути из настроек приложения, почему-то выводится сообщение, что помещено в блоке else. То есть архив не загружается. В чем может быть причина такого поведения?
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.04.2013, 18:06
Ответы с готовыми решениями:

Чтение параметров приложения из файла
Как сделать чтобы программа брала параметры из файла? Например: В файле написано Ip = 127.0.0.1 Как сделать чтобы программа...

Чтение параметров из файла
Всем привет) Застрял вот на чём: когда открыавать прогу, нужно штоб она читала параметри из текста, ну например пусть будет файл.txt, вот...

использование параметров
Люди как научиться использвать параметры... никак не могу подходящих ресурсов найти...

5
10 / 10 / 3
Регистрация: 28.08.2012
Сообщений: 57
02.04.2013, 18:26
поставь точку останова и посмотри что он берет в zipfilename в обоих твоих случаях. Т.е. убедить что со вводом из настроек нет проблем.
1
 Аватар для Clandestin
20 / 20 / 9
Регистрация: 10.11.2010
Сообщений: 90
02.04.2013, 18:51  [ТС]
Уже проверял. И в том и в другом случае одна и та же строка. Но в инструкцию:
C#
1
2
3
if (File.Exists(zipfilename))
{
}
В случае, если строка считана из настроек не заходит... Сейчас еще раз перепроверю.

Точнее заходит, но проверка выдает false.

Добавлено через 19 минут
Теперь стало выдавать false и при явном указании пути к файлу. Видимо проблема не в чтении значения из настроек приложения.
C#
1
zipfilename = @"C:\Users\...\test_tables.mstf";
Вот так задаю путь.
0
17 / 15 / 4
Регистрация: 28.03.2013
Сообщений: 54
02.04.2013, 19:34
У меня такое было... Давно правда. Строка одна и та же, а кодировка отличается... Я смотрел то что возвращает функция и то что вбивается с клавиатуры в ХЕКсе и они отличаются... Проверьте - просто совет
А еще в ILDasme посмотрите...

Добавлено через 9 минут
Вспомнил! Я тогда получал имя файла для запуска из винформы - когда вводил путь "строго", то работало когда получал из метода, то не работало - как переформатировал уже точно не вспомню...
0
 Аватар для Clandestin
20 / 20 / 9
Регистрация: 10.11.2010
Сообщений: 90
02.04.2013, 19:46  [ТС]
Спасибо большое. Буду копать в этом направлении. Я проект создал, все работало. Потом я переустановил ОС, предварительно сохранив проект. Снова установил студию и вот перестало работать. Интересный глюк.

Добавлено через 6 минут
Что интересно даже добавил прямое указание пути перед проверкой, все равно не считает путь за файл. А при открытии например при помощи OpenFileDialog вполне проходит проверку.
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
02.04.2013, 20:04
Clandestin, еще может быть проблемка в пути - то есть '\\' это же один символ. Посмотрите, чтоб с ним косяков не было
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.04.2013, 20:04
Помогаю со студенческими работами здесь

Чтение параметров в процедурах и функциях
Пытаюсь создать функцию или процедуру где входящими параметрами будут типа данных VARCHAR2. Собственно при компиляции ф или п всё...

Чтение параметров реестра с ресурса
Всем привет. Хочу реализовать для себя одну идею, но не знаю какой инструмент выбрать для изучения и реализации. Я имею поверхностные...

Чтение параметров реестра с ресурса
Всем привет. В программировании имею study-lvl, поэтому с вопросом к опытным специалистам. C# обладает возможностью прочитать...

Чтение параметров из .ini файла
Добрый день, я хочу сделать рпг, и хочу ещё сделать так, чтоб читалось ведённое в WindowTitle = "имя" Например Юзер изменит...

Чтение параметров из командной строки
есть програма которая считает количество строк. написана на с. через командную строку я её скомпилировал - она работает! подскажите плз...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru