Anwendung aus anwendung starten



  • In den Eigenschaften.



  • du meinst fenster markieren und über rechte maustaste ->eigenschaften oder wie
    weil so ändert das nicht viel...
    es sei den ich hab wieder mal alles verdreht....



  • Das kam mir in den Sinn.
    Wenn du willst kannst du mir den Code mal zusenden und ich schaue mir mal an wo der Fehler sein könnte.
    Ferndiagnosen sind immer schlecht 😃



  • So kannst mir nicht sagen wo ich die grösse des fensters verändern kann,
    vieleicht sollte ich die sdi anwendung immer in den vordergrund setzen.....
    wäre aber auch blöd weil die fenster im hintergrund noch weiter bearbeiten müsste



  • Wieso auf einmal die größe???
    Denn so wie ich das kapiere willst du aus dem Dialog eine SDI Anwendung starten und diese dann nach vorne setzten.
    Entweder du gehst in den Resourcen Editor deines Dialoges und rufst die Eigenschaften deines Dialoges auf um nach zu schaun ob du eventuell dein Dialog immer in den Vordergrund stellst, oder du Minimierst deinen Dialog mit:

    ::ShowWindow(this,SW_SHOWMINIMIZED);
    

    Dein Dialog ist dann noch da, aber die SDI ist vorne.

    MFG

    RS



  • Hallo,
    das mit der grösse war nicht gemeint, da war ich wohl noch ein wenig in gedanken... 😉

    aber was schreib ich vor ::ShowWindow(this,SW_SHOWMINIMIZED);
    und voralendingen wo setzte ich das hin??? 😕 😕



  • WinExec("k:\\\\...\\toll.exe",SW_SHOW);  
        Sleep(2500); 
        HWND hHandle = ::FindWindow(NULL, "toll"); //Der Fenstername steht oben in der Titelleiste  
    
        CWnd* pCwnd = FromHandle(hHandle);   
    
                if (pCwnd)  
                { 
                pCwnd->SetForegroundWindow(); 
                ::ShowWindow(this,SW_SHOWMINIMIZED);
                } 
                else 
                { 
                MessageBox("nix"); 
                }
    

    MFG

    RS



  • zeigt es mir folgenden fehler an:

    \Mat4x4Dlg.cpp(178) : error C2664: 'ShowWindow' : Konvertierung des Parameters 1 von 'class CMat4x4Dlg *const ' in 
    'struct HWND__ *' nicht moeglich
            Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert
     einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
    Fehler beim Ausführen von cl.exe.
    

    😞 😞 😕 😕



  • Schreibe mal folgendes rein:

    ::ShowWindow(SW_SHOWMINIMIZED);
    

    sollte auch gehen.



  • dann kommt das:

    ShowWindow' : Funktion akzeptiert keine 1 Parameter

    tue ich vorne statt this NULL reinschreiben zeigt es zwar keine fehler,
    öffnet aber nicht das programm...



  • Du musst ja noch das HWND mitgeben, oder wenn du in einem CWnd bist die Doppelpunkte weglassen. Ist es so schwer mal in der Doku zu lesen?



  • Dann setze es mal vor den SetActiveWindow...bla und füge als ersten wert GetActiveWindow(),... ein.

    MFG

    RS



  • ich weiss das ich keine ahnung habe, aber wo steht das mit diesem setaktivewindow??????



  • Sorry ich meinte pCwnd->SetForegroundWindow();



  • und wie sieht das dann ausgeschrieben aus??



  • WinExec("k:\\\\...\\toll.exe",SW_SHOW);   
        Sleep(2500);  
        HWND hHandle = ::FindWindow(NULL, "toll"); //Der Fenstername steht oben in der Titelleiste   
    
        CWnd* pCwnd = FromHandle(hHandle);    
    
                if (pCwnd)   
                {  
                ::ShowWindow(GetActiveWindow(),SW_SHOWMINIMIZED); 
                pCwnd->SetForegroundWindow();  
                }  
                else  
                {  
                MessageBox("nix");  
                }
    


  • ja so dachte ich mir das auch ....

    nur fehler :

    ...ShowWindow'...konvertierung des Parameters 1 von 'class CWnd *' in 'struct HWND__ *' nicht moeglich....
    +
    ...SetForegroundWindow...funktion akzeptiert keine 1 Parameter



  • Dann erstzte ::ShowWindow(GetActiveWindow(),SW_SHOWMINIMIZED); mal durch:
    CDeineApp::ShowWindow(SW_SHOWMINIMIZED);
    MFG
    RS



  • danke nur noch ein fehler aber
    showWindow ist kein element von meiner app....
    wie mach ich das???
    ich steh voll auf dem schlau....



  • Ok also langsamm zweifle ich an meinem Verstand. 😡
    Wenn ich eine Dialogbasirende Anwendung erstelle bekomme ich verschiedene klassen geliefert.
    Beispiel mit test.
    1. CtestApp
    2. CtestDlg
    ....
    Wenn ich jetzt CtestDlg:: schreibe muss Intelisense mir eine auswahl der funktionen geben.
    Darunter muss auch ShowWindow sein.
    in deinem fall (ich gehe jetzt davon aus das deine App test heist) würde das bedeuten das du CtestDlg::ShowWindow(SW_SHOWMINIMIZED); schreibst 💡 .
    ShowWindow ist fast überall enthalten.
    Ich kann das auf einen Button genauso anwenden wie auf einem Fenster.

    MFG

    RS


Anmelden zum Antworten