Anwendung aus anwendung starten
-
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
-
sorry in dlg ist showwindow vorhanden, du hattest erst app geschrieben und da ist showwindow nicht vorhanden.
Muss dich aber enttäuschen es geht jetzt auch nicht, muss mich mal um das erste fenster kümmern denke das es daran liegt, melde mich dann wieder
und danke für deine Hilfe und deine geduld
