Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > как пользователю сохранить свои настройки???


Автор: xkodex 30.4.2005, 23:20
Я пишу MACROS на VB для ms excel. В процессе работы макроса пользователь может изменить содержание ComboBox. То есть настроить программу под себя. Но при повторном запуске макроса естественно всё что он добавил в комбо лист исчезает и опять становится стандартным. Как сделать чтобы программа смогла запомнить его настройки?

Автор: cardinal 30.4.2005, 23:29
Вроде в VBA такое тоже есть:
http://forum.vingrad.ru/index.php?showtopic=16150

Автор: Gannibal 30.4.2005, 23:41
а если так?

Код

'ЗАПИХАТЬ:

Open App.Path & "\" & App.EXEName For Binary As #1
a = vbCrLf & "###"
Put #1, LOF(1) + 1, a
a = "12345"
Close #1

'ВЫТАЩИТЬ:

Open App.Path & "\" & App.EXEName For Binary As #1
Do
Line Input #1, a
Loop Until a = "###"
Line Input #1, a
MsgBox a
Close #1


должно в саму прогу запихивать

Автор: xkodex 1.5.2005, 00:10
Спасибо большое! Обязательно попробую!) Когда всё сделаю обязательно напишу что же всё таки мне помогло. На первый взгляд мне понравился мпомоб сохранения через риестр. Ещё раз спасибо!

Автор: Gannibal 1.5.2005, 13:01
Цитата(xkodex @ 30.4.2005, 23:10)
На первый взгляд мне понравился мпомоб сохранения через риестр.
ну в реестр сохронять это хорошо.. но а если тебе надо будет прогу перенести на другую платформу с теми же настроиками.. ? конечно можно и реестр перенести.. но проще ИКЗЕШНИК перенести smile я так думаю

Автор: Akina_At_Home 1.5.2005, 14:43
А если на одном компе 2 пользователя, и каждый хочет свое?
В реестр, в реестр адназначна... а один раз при переносе на другой комп на новом месте настроить под себя - это нормально.

Автор: Exception 2.5.2005, 11:35
А INI-файлы чем плохи? Если надо, могу написать пару функций, инкапсулирующих апи-функции работы с ними smile

Автор: xkodex 2.5.2005, 17:34
Через EXE'шнгик хорошо. Только есть одна проблема. Я пишу МАКРОС, а это не екзе файл! Так что этот способ для меня точно не подходит. Если ты напишешь мне собособ через INI буду благодарен тебе Run-time error smile)) Возьму его на вооружение.

Автор: Voldemar2004 2.5.2005, 18:21
Цитата

А если на одном компе 2 пользователя, и каждый хочет свое?
В реестр, в реестр адназначна... а один раз при переносе на другой комп на новом месте настроить под себя - это нормально.


Так ведь проще будет наверное в папки учетных записей юзеров сохранять индивидуальные настройки в ini-файл? Но перед этим настроить ini-файл как надо по defaultу.

Добавлено @ 18:23
Так например c:\Documents and Settings\User1\Proga\MyUser1.ini
c:\Documents and Settings\User2\Proga\MyUser2.ini

и т.п. smile

Автор: Akina 3.5.2005, 07:51
Цитата(Voldemar2004 @ 2.5.2005, 19:21)
проще будет наверное в папки учетных записей юзеров сохранять индивидуальные настройки в ini-файл?

Нет имхо. В реестр сохранять и оттуда восстанавливать - 2 встроенных функции, в INI - доп. модуль (т.е. на самом деле в API есть функции работы с INI, но гемор еще тот... кстати, они эмулируют обращение в реестр, как ни странно...).

Автор: Papirus 3.5.2005, 12:00
А почто в ячеечках на лситочке екселевском не хранить раз макрос, да еще в екселе? Нежто все 256 задействованы? Тады в отдельную книжку можно. А то и в этой (рабочей). Все что он в комбик наковырял - в ячеечки сбросить - диапазончику имя юзверевское присобачить. Снова откроет, а комбик ему с его диапазона значения то и возьмет! Ась? smile

Автор: Akina 3.5.2005, 12:12
Papirus
А оно тебе надо - на листе лишние, не тобой заведенные данные? да еще ненароком строку вставишь выше - и плакали твои настройки (хотя имя...)... не, некрасиво... впрочем если делаешь приложение в форме Эксельной книги - тогда может и да, тогда отдельный лист настроек можно держать... впрочем лично мне такое не очень нравится - чисто инстинктивно... нет защиты от дурака, в отличие от самого дурака, который всегда есть...

Автор: Exception 3.5.2005, 12:18
Я так и не понял, чем реестр не подходит? Просто если надо, экспорт-импорт (reg-файл) и все smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)