Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > MFC MDI Splash-форма мерцание главного окна


Автор: yavafree 26.5.2010, 12:48
Привет.
Пишу MFC MDI приложение со Splash-формой и проверкой серийного номера. Столкнулся с такой проблемой, что когда создается главное окно, то никак не получается скрыть его, при старте перед скрытием оно все равно на пол-секунды показывается. 
Можно ли это исправить?
Примечание: нашел ссылку: http://www.codeguru.com/cpp/controls...ystem-Tray.htm
Все сделал, как там написано, но все равно тоже самое.
Вот код главной функции:
Код

BOOL CApp::InitInstance()
{
        
        // InitCommonControlsEx() is required on Windows XP if an application
        // manifest specifies use of ComCtl32.dll version 6 or later to enable
        // visual styles.  Otherwise, any window creation will fail.
        INITCOMMONCONTROLSEX InitCtrls;
        InitCtrls.dwSize = sizeof(InitCtrls);
        // Set this to include all the common control classes you want to use
        // in your application.
        InitCtrls.dwICC = ICC_WIN95_CLASSES;
        InitCommonControlsEx(&InitCtrls);
 
        CWinAppEx::InitInstance();
 
        // Standard initialization
        // If you are not using these features and wish to reduce the size
        // of your final executable, you should remove from the following
        // the specific initialization routines you do not need
        // Change the registry key under which our settings are stored
        // TODO: You should modify this string to be something appropriate
        // such as the name of your company or organization
        SetRegistryKey(_T("Reconsonance Software Engine"));
        LoadStdProfileSettings(0);  // Load standard INI file options (including MRU)
 
        InitContextMenuManager();
        InitShellManager();
 
        InitKeyboardManager();
 
        InitTooltipManager();
        CMFCToolTipInfo ttParams;
        ttParams.m_bVislManagerTheme = TRUE;
        theApp.GetTooltipManager()->SetTooltipParams(AFX_TOOLTIP_TYPE_ALL,
                RUNTIME_CLASS(CMFCToolTipCtrl), &ttParams);
 
        // Register the application's document templates.  Document templates
        //  serve as the connection between documents, frame windows and views
        CMultiDocTemplate* pDocTemplate;
        pDocTemplate = new CMultiDocTemplate(IDR_ReconsonanceEngTYPE,
                RUNTIME_CLASS(CEngineDoc),
                RUNTIME_CLASS(CChildFrame), // custom MDI child frame
                RUNTIME_CLASS(CEngineView));
        if (!pDocTemplate)
                return FALSE;
        AddDocTemplate(pDocTemplate);
 
        // create main MDI Frame window
        CMainFrame* pMainFrame = new CMainFrame;
        if (!pMainFrame || !pMainFrame->LoadFrame(IDR_MAINFRAME))
        {
                delete pMainFrame;
                return FALSE;
        }
 
        m_pMainWnd = pMainFrame;
        
        // call DragAcceptFiles only if there's a suffix
        //  In an MDI app, this should occur immediately after setting m_pMainWnd
 
 
        // Parse command line for standard shell commands, DDE, file open
        CCommandLineInfo cmdInfo;
        ParseCommandLine(cmdInfo);
 
 
        // Dispatch commands specified on the command line.  Will return FALSE if
        // app was launched with /RegServer, /Register, /Unregserver or /Unregister.
        if (!ProcessShellCommand(cmdInfo))
                return FALSE;
        // The main window has been initialized, so show and update it
        
        this->m_nCmdShow = SW_HIDE;
        m_pMainWnd ->ShowWindow(m_nCmdShow);
        //pMainFrame->UpdateWindow();
 
        CChecker* ch = new CChecker();
        if(ch->IsValid()==0)
        {
                this->StartMainWnd();
        }
        else
        {
                CSerialWnd* sw = new CSerialWnd();
                sw->ShowWindow(SW_SHOW);     
                sw->UpdateWindow();
        }
 
 
 
        return TRUE;
}


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