Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Загрузка полей диалога при старте Windows 
:(
    Опции темы
Gremlin
Дата 25.6.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 119
Регистрация: 28.8.2006

Репутация: нет
Всего: нет



Столкнулся с такой проблемой:
Приложение на основано на диалоге и экхешник добавлен в авторан реестра.
При инициализации диалога:
Код

BOOL CMyPensionDlg::OnInitDialog()
{
    CDialog::OnInitDialog();
........
    // TODO: Add extra initialization here
    if (CanSerialize())
    {
        CFile file;
        CFileException fe;
        if (file.Open(DATA_FILE,
            CFile::typeBinary | CFile::modeRead, &fe))
        {
            CArchive ar(&file, CArchive::load);
            Serialize(ar);
            UpdateData(false);
            m_Name = m_myDate.m_Name;
            m_Birthday = m_myDate.m_Birthday;
            m_Pension = m_myDate.m_Pension;
            m_WorkMode = m_myDate.m_WorkMode;
            m_Hollyday = m_myDate.m_Hollyday;
            m_Aload = m_myDate.m_Aload;
        }
        /////////////////////////////////
        .....
}

загружаю поля из файла.
Если я сам вызываю диалог то поля загружаются без проблем, а при старте виндовса почему то не, хотя сам диалог появляется но пустой(файл данных существует).
Может какая хитрость есть при автозагрузке? поделитесь плз!
PM MAIL   Вверх
zkv
Дата 25.6.2007, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 16
Всего: 92



DATA_FILE - путь абсолютный или относительный? Если относительный, то возможно текущий каталог неправильно установлен. Вообще то исключений должно  таком случае кидаться, вы их отлавливаете?
сделайте трассировку куда-нить в файл, или MessageBox'ами хотя бы просмотрите, что происходит.
PM MAIL   Вверх
Coocky
Дата 26.6.2007, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(Gremlin @  25.6.2007,  17:27 Найти цитируемый пост)
Может какая хитрость есть при автозагрузке? поделитесь плз

Делюсь секретом.При автозагрузке хитрости нет! smile
Давно б уже сам отладил. Файл-то хоть открывается? smile Думаю нет smile


zkv, правильно сказал-посмотрел бы значение DATA_FILE


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Gremlin
Дата 26.6.2007, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 119
Регистрация: 28.8.2006

Репутация: нет
Всего: нет



smile #define DATA_FILE _T("my.dat")

Добавлено через 2 минуты и 38 секунд
исключений не делаю :( Репутации не хватает smile))
PM MAIL   Вверх
zkv
Дата 27.6.2007, 09:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 16
Всего: 92



Цитата(Gremlin @  26.6.2007,  17:20 Найти цитируемый пост)
#define DATA_FILE _T("my.dat")

Цитата(zkv @  25.6.2007,  22:40 Найти цитируемый пост)
Если относительный, то возможно текущий каталог неправильно установлен.

попробуй, в качестве теста указать абсолютный путь, если заработает, то проблема тут, и решение в этом случае - указать каталог, в котором лежит екзешник.
PM MAIL   Вверх
Coocky
Дата 27.6.2007, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Код

  TCHAR buffer [256];
           GetModuleFileName(NULL, buffer, 256);
           CString appPath;
           appPath.SetString(buffer);
appPath.Replace ("имя ехе","имя файла")

Возьми и запиши себе как заповедь в библии. Очень много нюансов есть в работе с файлами (очень много подводных камней в путями) и потому путь задается либо полный, как в данном примере отталкиваяь от расположения ехе,либо полный (абсолютный),где вместо имени диска используется переменая окружения.
Задавать ОТНОСИТЕЛЬНЫЙ путь-плохой тон, с большими проблемами. 


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0486 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.