Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Некорректный release 
:(
    Опции темы
dereyly
Дата 24.1.2007, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Вопрос в том что realease версия съедает одно из диалоговых окон... точнее моя проблема стоит еще шире при компиляции debug и release exe файлы не выводят Окошко (с деревом CTreeCtrl)... 
проверять весь код как было описано <url=http://www.rsdn.ru/article/vcpp/survrls.xml> здесь</url> влом т.к. заказчика нужно только напугать деревом, а потом он туда даже не посмотрит...
Поможите кто сталкивался  с такой проблемой
PM MAIL   Вверх
xTr1m
Дата 24.1.2007, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 692
Регистрация: 9.2.2005
Где: Москва

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



слова типа 
Цитата

съедает

и
Цитата

не выводят Окошко 

как всегда не объяснят твою проблему. нужен хотя бы кусок кода инициализации диалога (или дерева, а может еще чего)
PM MAIL WWW ICQ   Вверх
dereyly
Дата 24.1.2007, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



С эитим сложновато   код не мой и запутанный...
Parser.cpp
Код

.....
Rz=Forester.FillTree(TagVector);
....
return Rz;

Forester.cpp
Код

bool CParserInt::CForester::FillTree(pTagVector &TagVector)
{
    bool Rz=false;
    pTag *fTag,*fTop,*fSubTop;
    pTagVector::iterator PItem;
         .......
ну и так далее здесь дерево заполняется... 
         .......
        ShowTree(Parent->Root)
    Rz=true;
    return Rz;


Forester.cpp
Код

CParseTreeDlg Dlg;
void CParserInt::CForester::ShowTree(pTag* fTag)
{
    if(Dlg.m_hWnd==NULL)
        Dlg.Create(CParseTreeDlg::IDD,NULL);
    else
        Dlg.m_Tree1.DeleteAllItems();
    ShowTreeR(fTag);
}

И потом заполняется виндовая CParseTreeDlg
Forester.cpp
Код

void CParserInt::CForester::ShowTreeR(pTag* fTag,HTREEITEM Itm)
{
    if(fTag==NULL)
        return;

    PCHAR *TT=NULL;
    TString TName;
    TString TVal;
    CHAR TmpC[16];
    int i;
    HTREEITEM Itm2;
    if(fTag->IsContent)
    {
        Dlg.AddContent(fTag->Content.c_str(),Itm);
        return;
    }
    TName="";
    if(fTag->IsWrong)
        TName="!!!!  ";
    if(fTag->IsETag)
    {
        TName+="/";
        TName+=fTag->Name;
    }
    else
        TName+=fTag->Name;
    
    TName+="    D:";
    itoa(fTag->TreeDepth,TmpC,10);
    TName+=TmpC;
    if(fTag->Props.size()>0)
    {
        TT=new PCHAR[fTag->Props.size()+1];
        for(i=0;i<fTag->Props.size();i++)
        {
            TVal=fTag->Props[i].Name;
            TVal+='=';
            TVal+=fTag->Props[i].Value;
            TT[i]=new CHAR[TVal.length()+1];
            strcpy(TT[i],TVal.c_str());
        }
        TT[i]=NULL;
    }
    Itm2=Dlg.AddTag(TName.c_str(),TT,Itm/*,fTag->IsWrong*/);
    if(TT!=NULL)    
    {
        for(i=0;i<fTag->Props.size();i++)
        {
            delete TT[i];
        }
        delete TT;
    }
    if(fTag->Childs.size()!=0)
    {
        if(TT!=NULL) //WARNING: TT - is deleted, but not NULL
            Dlg.AddContent("=======",Itm2);
        std::vector<pTag*>::const_iterator Iter;
        Iter=fTag->Childs.begin();
        while(Iter!=fTag->Childs.end())
        {
            ShowTreeR(*Iter,Itm2);
            Iter++;
        }
    }
}

Parser.cpp
Код

.........
if(TemplaterDeReyly)
    {
        Rz=T2S->init();
        if(Rz)
            Rz=T2S->Do(Root,Result);
    }
    else
    {
        Rz=TryTemplates(Result);
    }
.......

Вот после Rz=T2S->init(); -- и выводит нужное мне окошко


Это сообщение отредактировал(а) dereyly - 24.1.2007, 17:43
PM MAIL   Вверх
Earnest
Дата 25.1.2007, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

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



Насчет дерева: проверь, есть ли где-нибудь вызов InitCommonControls ДО вызова окна с деревом.


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


 




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


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

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