Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!uwm.edu!zaphod.mps.ohio-state.edu!wuarchive!uunet!zephyr.ens.tek.com!tektronix!gvgpsa!gvgpvd!andyp From: andyp@gvgpvd.GVG.TEK.COM (Andy Peterman) Newsgroups: comp.sys.mac.programmer Subject: Re: Is multifinder or finder running?? Message-ID: <1451@gvgpvd.GVG.TEK.COM> Date: 12 Dec 89 05:28:11 GMT Reply-To: andyp@gvgpvd.GVG.TEK.COM (Andy Peterman) Organization: Grass Valley Group, Inc.; PVD Lines: 20 ARGH!!!! I can't stand it anymore. Here's method of determining if MultiFinder is running (in C): WindowPtr deskTop; /* usable if mfActive is false */ Boolean mfActive; /* true if MultiFinder is running */ GetWMgrPort (&deskTop); mfActive = (PtrZone ((Ptr)deskTop) == GetZone()); As long as the the call GetWMgrPort works (which Apple has said not to use because "its going away") this will determine if MultiFinder is active. It uses the assumption that if the Window Manager's Port is in your heap, then MultiFinder must not be running (since when it is running, it has control of it). This has worked for me since long before MultiFinder was released and has not presented any problems yet. It may even continue to work under System 7.0 (which is always MultiFinder) if the GetWMgrPort continues to work. Andy Peterman andyp@gvgpvd.gvg.tek.com