Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Senden von ID_FILE_NEW unterbinden?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
17.10.2004, 13:11 Uhr
Snoopy



hi zusammen,
ich habe eine SDI Anwendung, und möchte, das beim Start der Anwendung nicht das ID_FILE_NEW Commando geschickt wird. Kann ich das irgendwo unterbinden?
danke
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.10.2004, 07:22 Uhr
Tommix



Hallo,
das passiert in der InitInstance Deiner CWasWeissIchApp:

C++:
    // ...

    // Befehlszeile parsen, um zu prüfen auf Standard-Umgebungsbefehle DDE, Datei offen
    CCommandLineInfo cmdInfo;
    ParseCommandLine(cmdInfo);
    
    // Füge hinzu:

    if (cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew)
        cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;

    // Verteilung der in der Befehlszeile angegebenen Befehle
    if (!ProcessShellCommand(cmdInfo))
        return FALSE;

    // ...



Gruß, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.10.2004, 12:27 Uhr
Snoopy



Ja danke, aber dann ist in der darauffolgenden Zeile m_pMainWnd==NULL;

C++:
    // Das einzige Fenster ist initialisiert und kann jetzt angezeigt und aktualisiert werden.
    m_pMainWnd->ShowWindow(SW_SHOW);
    m_pMainWnd->UpdateWindow();



Was kann man dagegen tun?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.10.2004, 12:44 Uhr
Tommix



Hm, mein Code war aus 'nem MDI Projekt. Möglicherweise muß bei SDI immer genau ein View offen sein - dann geht es prinzipiell nicht.
- Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
18.10.2004, 12:52 Uhr
Snoopy



Trotzdem danke, Tommix.
Ich werds jetzt vorrübergehend mal so machen, dass ich ein Flag bFirstTime in der Dokumentklasse einführe, das im Konstruktor von CDoc auf TRUE gesetzt wird. Nur if(bFirstTime==FALSE) soll dann in OnNewDocument der entsprechende Code ausgeführt werden. Im else-Teil wird bFirstTime dann auf FALSE gesetzt. Ist zwar unsauber, aber im Moment die einzige Möglichkeit, die ich sehe.
gruß aus Franken
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: