home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!haven.umd.edu!darwin.sura.net!wupost!waikato.ac.nz!ldo
- From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
- Newsgroups: comp.sys.mac.programmer
- Subject: Re: Patching the _Launch Trap
- Message-ID: <1992Sep9.184936.10712@waikato.ac.nz>
- Date: 9 Sep 92 18:49:36 +1200
- References: <1992Sep8.024049.20121@Arco.COM> <1992Sep8.145100.26889@Arco.COM> <gvrn-n#.leonardr@netcom.com>
- Organization: University of Waikato, Hamilton, New Zealand
- Lines: 27
-
- In article <gvrn-n#.leonardr@netcom.com>, leonardr@netcom.com (Leonard Rosenthol) writes:
-
- > One way that might work, assuming that you only care about System 7
- > would be to intercept 'osel' events in the Finder. When the Finder "opens"
- > anything, file, folder, disk, etc. it will send itself an 'osel' event - also
- > many launching utils will also send the same event to the Finder in order to
- > have things opened.
- >
- > There are two ways to intercept Apple events. The hard way is to patch
- > _Pack8 (Apple Event manager), the easy (but undocumented way) is to install
- > something called a PHAQHandler. A PHAQHandler is the equivalent of a head
- > patch on an Apple event handler, so you could just grab the data for the event
- > and then pass it along. You might also be able to do the same thing by
- > getting the address of the current 'osel' handler, installing your own and
- > then calling the original...
-
- This may work with Finder 7.1 (not that I've seen it), but it certainly won't
- work with Finder 7.0. Finder 7.0 doesn't use the Apple Event Manager for doing
- its own event handling, so it's no good trying to intercept Finder events by
- doing anything to or with the Apple Event Manager. Not from within the Finder's
- process context, anyway. You'll have to patch AcceptHighLevelEvent.
-
- Lawrence D'Oliveiro fone: +64-7-856-2889
- Computer Services Dept fax: +64-7-838-4066
- University of Waikato electric mail: ldo@waikato.ac.nz
- Hamilton, New Zealand 37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00
- This line intentionally left unfunny.
-