child-window bei MDI-anwendung



  • HALL0.

    bei der vc++2005 professional edition kommt es bei der ausführung einer vom MFC erstellten MDI-anwendung im startmodus zur erstellung eines child-windows. wie kann ich diese voreinstellung entfernen? (will am anfang also kein child-window angezeigt bekommen)

    DANKE.
    STICK.


  • Mod

    Es wird ja ein CCommandLineInfo Objekt gefüllt. In diesem steht m_nShellCommand normalerweise auf FileOpen. Setze den Wert auf FileNothing.



  • BEGIN_MESSAGE_MAP(CMDIApp, CWinApp)
    	ON_COMMAND(ID_APP_ABOUT, &CMDIApp::OnAppAbout)
    	// Standard file based document commands
    	ON_COMMAND(ID_FILE_NEW, &CWinApp::OnFileNew)
    	ON_COMMAND(ID_FILE_OPEN, &CWinApp::OnFileOpen)
    	// Standard print setup command
    	ON_COMMAND(ID_FILE_PRINT_SETUP, &CWinApp::OnFilePrintSetup)
    END_MESSAGE_MAP()
    

    danke.
    meintest du in diesem abschnitt? ich kann nämlich ansonsten nirgends 'FileOpen' in diesem projekt finden 😞


  • Mod

    Nein in InitInstance! Dor wird ein CCommandInfo angelegt geparst und ausgeführt.



  • hi MARTIN.

    danke für deine hilfe. ich finde es echt schwer, wenn man solche kleinen probleme hat, die passende lösung im netz oder irgendwelchen hilfen zu finden!

    deinen vorschlage habe ich nun wie folgt umgesetzt:

    CCommandLineInfo cmdInfo;
    	cmdInfo.FileNothing;
    	ParseCommandLine(cmdInfo);
    

    leider geht aber immer noch ein fenster auf. was habe ich falsch gemacht?

    DANKE.
    STICK.


  • Mod

    Ein bischen Handbuch lesen ist doch drin oder? Zudem habe ich doch alles geschrieben oder? Stichworte: CCommandLineInfo, m_nShellCommand, FileNothing 🕶

    CCommandLineInfo cmdInfo;
    cmdInfo.nShellCommand = CCommandLineInfo::FileNothing;
    ParseCommandLine(cmdInfo);
    


  • danke erstmal für deine hilfe. hatte natürlich auch in der hilfe nachgeschaut, habe allerdings zuvor deinen hinweis über 'm_nShellCommand' gekonnt übersehen. sorry!

    STICK.


Anmelden zum Antworten