Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
chi100v
0 / 0 / 0
Регистрация: 21.11.2012
Сообщений: 22
1

Как применить настройки без перезапуска приложения

28.11.2012, 07:57. Просмотров 635. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Ситуация следующая, в процессе работы программа записывает некоторую информацию в .ini файл. Когда наступает очередь воспользоватся записанной в .ini информацией, приходится перезапускать приложение т.к. иначе в файле остается старая (записанная таким же способом ранее) информация или если файл был до этого пустой, то вообще ничего не происходит (ну это и логично).
Попытался автоматизировать перезапуск приложения после записи в файл информации через:
vb.net
1
Application.Restart()
, но что-то мне подсказывает что это довольно грубый способ и наверняка есть что-нибудь более элегантное в исполнении.

Запись в файл осуществляется этим кодом:
vb.net
1
 My.Computer.FileSystem.WriteAllText("conf.ini", GamePath, False)
подскажите как сделать все "красиво" =)
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2012, 07:57
Ответы с готовыми решениями:

Применить настройки из файла
Как применить настройки из файла? Например цвет формы И главное записать измененные настройки...

Сохранение элементов ListBox после перезапуска приложения
Как можно сохранить данные в ListBox после выхода из проги? В Aplication Setting, создавал параметр...

Сохранение значения TextBox после перезапуска приложения
Здрасти. Мне нужно сохранять значения textbox после перезапуска софта. Смотрите, допустим у меня...

Как применить все необходимые настройки "на лету", без перезапуска программы
Есть проект на C# + WPF, имеются два окна: MainWindow и SettingsWindow. Необходимо чтобы после...

Изменение номера com-порта без перезапуска приложения
Добрый день. Снова проблема. Есть form1 с основной программой опроса порта и есть form2 с...

4
XIST
1189 / 896 / 122
Регистрация: 01.10.2009
Сообщений: 2,689
Записей в блоге: 1
28.11.2012, 08:07 2
Так а в чем проблема, как читаете информацию, вынесите в отдельную процедуру и вызывайте ее, после запсиси новых данных
0
chi100v
0 / 0 / 0
Регистрация: 21.11.2012
Сообщений: 22
28.11.2012, 08:18  [ТС] 3
считываю вот так:
vb.net
1
Path = My.Computer.FileSystem.ReadAllText("conf.ini")
вынести в отдельную процедуру не удастся, вот весь код:
vb.net
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
Dim GamePath As String
        Dim SoursPath As String
        Dim FolderBrowserDialog1 As New FolderBrowserDialog()
        Dim Path As String
        SoursPath = My.Computer.FileSystem.CurrentDirectory
        FolderBrowserDialog1.Description = "Укажите путь к папке"
        If My.Computer.FileSystem.FileExists("conf.ini") Then
            Path = My.Computer.FileSystem.ReadAllText("conf.ini")
            If Path = Nothing Then
                MsgBox("Файл конфигурации пуст")
                GoTo 6
            End If
         Else
            MsgBox("Не могу найти файл конфигурации")
            My.Computer.FileSystem.WriteAllText("conf.ini", GamePath, False)
6:          If FolderBrowserDialog1.ShowDialog = System.Windows.Forms.DialogResult.OK Then
                My.Computer.FileSystem.CurrentDirectory = FolderBrowserDialog1.SelectedPath
                If My.Computer.FileSystem.FileExists("1.exe") Or My.Computer.FileSystem.FileExists("2.exe") Or My.Computer.FileSystem.FileExists("3.exe") Then
                    Me.Show()
                    GamePath = FolderBrowserDialog1.SelectedPath
                    My.Computer.FileSystem.CurrentDirectory = SoursPath
                    My.Computer.FileSystem.WriteAllText("conf.ini", GamePath, False)
                    MsgBox("Конфигурация успешно обновлена")
                    Application.Restart()
                Else
                    MsgBox("Указан неверный путь", MsgBoxStyle.Information)
                    GoTo 6
                End If
            End If
        End If
0
Flamberg
34 / 34 / 1
Регистрация: 14.11.2012
Сообщений: 168
28.11.2012, 10:27 4
так после обновления и примени
vb.net
1
Path = My.Computer.FileSystem.ReadAllText("conf.ini")
0
chi100v
0 / 0 / 0
Регистрация: 21.11.2012
Сообщений: 22
28.11.2012, 10:36  [ТС] 5
действительно =) спасибо =)
0
28.11.2012, 10:36
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.11.2012, 10:36

Как применить настройки для Explorer'a?
Типа изменяешь что-то в св-вах обозревателя и нажимаешь кнопку Применить, только програмно?

Как убрать иконки из трея после перезапуска приложения?
Перезапускать приложение я научился, но теперь возникла другая проблема: после каждого перезапуска...

Как применить настройки только к конкретному слайдеру (CSS)?
Сайт на WP с пэдж билдером. У меня были проблемы со слайдером, он не был в размер экрана. Я...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.