whizzle Geschrieben 25. April 2001 Geschrieben 25. April 2001 Moin! Kann mir jemand von Euch erklären, wie man den Funktionsaufruf "ShowWindow(SW_HIDE)" sinnvoll nutzen kann? Nach dem Rücksprung ist das Fenster unsichtbar und scheinbar nur noch im Task-Manager zugänglich. Inaktiv ist es auch, also wie kann es weiter Nachrichten verarbeiten? Danke im voraus Zitieren
Strato Geschrieben 25. April 2001 Geschrieben 25. April 2001 Hallo! Wenn ein Fenster doch nicht mehr sichtbar ist, welche Nachrichten sollte es dann erhalten (außer WM_TIMER)? Du könnest aber die Nachrichtenbearbeitung ändern, so daß Dein Prog dauerhaft irgendwas macht, im Gegensatz zu Nachrichtenbearbeitung mit while( GetMessage(...) ), da dort nur etwas geschieht wenn Nachrichten ankommen. Dies würde in etwa so aussehen: while( 1 ) { if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { if( msg.message==WM_QUIT ) break; else { TranslateMessage(&msg); DispatchMessage(&msg); } ... deine spezielen Anweisungen ... } } Ich hoffe das Dich das irgendwie weiter bringt! Wenn nicht frag' nochmal genauer! Gruß Daniel [ 25. April 2001: Beitrag editiert von: Strato ] Zitieren
whizzle Geschrieben 25. April 2001 Autor Geschrieben 25. April 2001 Hallo Daniel, erstmal Danke für die Antwort. Ich habe eigentlich nichts spezielles vor, aber mich interessiert einfach, welche Möglicheiten man mit dieser Option (SW_HIDE) hat. Lege ich mit Deiner Lösung nicht das ganze System lahm? Wäre da ein Hintergrundthread nicht besser? Und wie kann ich meinem Fenster WM_QUIT-Nachrichten (oder andere Userbefehle) zukommenlassen? Zitieren
Strato Geschrieben 26. April 2001 Geschrieben 26. April 2001 Hallo! 1. Mit dieser Lösung legst Du keine Systeme lahm da das Programm ja auch nur eine begrenzte CPU-Zeit bekommt (die meisten Computerspiele verwenden diese Lösung). 2. Nachrichten wie etwa WM_QUIT muss sich das Programm selbst schicken wenn seine Aufgabe erledigt ist, oder Du hookst dich an die System-Nachrichtenschleife, dann kannst Du immer noch alle bzw. die gewünschten Nachrichten erhalten und darauf Reagieren! Zitieren
whizzle Geschrieben 26. April 2001 Autor Geschrieben 26. April 2001 Hi Daniel, wie hook ich mich denn an die Systemschleife? Ich hab leider recht wenig Erfahrung mit den "Dingen hinter der Kulisse", da ich bis jetzt nur MFC benutze. Dank und Gruß Zitieren
Strato Geschrieben 26. April 2001 Geschrieben 26. April 2001 Hallo! Zu erklären wie man die Hauptnachrichtenschleife anzapft würde jetzt den Rahmen sprengen! Ist nicht sehr kompliziert, finde ich! Wenn Du mir deine eMail-Adresse gibst könnte ich Dir einen gescannten Artikel aus der c't senden der dies Beschreibt! Grüße aus dem Ruhrpott in den Ruhrpott! P.S. Vergiss die MFC! [ 26. April 2001: Beitrag editiert von: Strato ] Zitieren
maddin Geschrieben 27. April 2001 Geschrieben 27. April 2001 @strato, wäre sehr nett, wenn du mir den artikel auch einmal zusenden könntest. meine adresse ist lange-m@web.de ps: bitte nicht die aus dem profil verwenden. unser mailserver ist nicht am netz. Zitieren
Strato Geschrieben 27. April 2001 Geschrieben 27. April 2001 @maddin Ist die obige Adresse richtig? Ich bekomme immer nur Fehler-Mails zurück! Gruß Daniel Zitieren
maddin Geschrieben 2. Mai 2001 Geschrieben 2. Mai 2001 eigentich schon. oder hast du doch die adresse aus dem profil genommen. das ist nämlich eine andere und die funzt net. jedenfalls jetzt nicht. Zitieren
Strato Geschrieben 2. Mai 2001 Geschrieben 2. Mai 2001 @maddin Ich habe die Adresse genommen die du oben angegeben hast, nicht die aus deinem Profil! Ich habe die Mail aber schon zum 2 mal zurück bekommen! Wie groß dürfen den bei dir die Mails + Anhänge sein? Zitieren
maddin Geschrieben 3. Mai 2001 Geschrieben 3. Mai 2001 gute frage. ich stell sie mal öffentlich in den raum. wie groß dürfen anhänge bei web.de sein. meiner meinung nach 2mb. Zitieren
Strato Geschrieben 3. Mai 2001 Geschrieben 3. Mai 2001 Tja, das Zip-Packet ist 4,5MB groß! :confused: Zitieren
maddin Geschrieben 4. Mai 2001 Geschrieben 4. Mai 2001 problem ist, das unser mailserver in der firma gerade umgezogen ist. zusammen mit der ausbildungsabteilung und die leute es in zwei wochen nicht geschafft haben, das ding wieder ans netz zu hängen. vielleicht wäre es eine möglichkeit das packet zu teilen oder in ein bis zwei wochen nocheinmal zu schicken. ps: wenn die ct nach dem 1.1.2000 erschienen ist, würde es auch reichen, wenn du die ausgabe postest Zitieren
Strato Geschrieben 4. Mai 2001 Geschrieben 4. Mai 2001 Die c't Ausgabe ist von 5.99 (glaube ich)! Wenn Du willst kann ich Dir den Artikel schicken wenn euer Server wieder läuft! Musst Dich halt nur mal bei mir melden! Gruß Daniel Zitieren
eax Geschrieben 18. Januar 2002 Geschrieben 18. Januar 2002 sers. ich weiss nicht, ob ihr inzwischen eine Loesung gefunden habt, habe aber gesehen das das Thema erneut angesprochen wurde...hier steht wie es bei der winapi geht also bei der Winapi kenne ich 2 Möglichkeiten, dass Programm unsichtbar zu machen.... die Funktionen ShowWindow und UpdateWindow entfernen oder kurz vor der ShowWindow-Funktion iCmdShow = SW_HIDE; einfuegen... Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.