Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!usc!trwind!venice!press From: press@venice.SEDD.TRW.COM (Barry Press) Newsgroups: comp.windows.ms.programmer Subject: Re: What does Yield do? Message-ID: <1097@venice.SEDD.TRW.COM> Date: 16 May 91 20:53:12 GMT References: <1991May16.121553.3876@maytag.waterloo.edu> <1095@venice.SEDD.TRW.COM> <1991May16.190243.27809@maytag.waterloo.edu> Reply-To: press@venice.sedd.trw.com (Barry Press) Organization: TRW Systems Engineering & Development Division, Redondo Beach, CA Lines: 29 In article <1991May16.190243.27809@maytag.waterloo.edu> dmurdoch@watstat.waterloo.edu (Duncan Murdoch) writes: > ... >begin > if Getmessage(msg,0,0,0) then > begin > Translatemessage(msg); > Dispatchmessage(msg); > end; >end; > >As long as I call this frequently enough, things are fine. (I have a Unless I misunderstand what you've done, you're processing any and all messages here. What this implies is that you've got this loop that runs, effectively, as a background process WHILE ALL FUNCTIONS OF YOUR PROGRAM ARE OPERATIONAL AND ACCESSIBLE TO USERS -- i.e., you can (recursively) call any function within your software. Did you really intend that? What you desribed led me to believe that you just wanted to let other Windows programs (not yours) run while you finished this loop. I concluded that your program itself was "busy" during that time. If that's really what you wanted, then you'd best not allow any message at all, just the ones related to focus. -- Barry Press Internet: press@venice.sedd.trw.com