Article View: comp.sys.mac
Article #15806Calling "LAUNCH" from Pascal
From: Richard Siegel
Date: Tue, 28 Apr 1987 13:44
Date: Tue, 28 Apr 1987 13:44
62 lines
1823 bytes
1823 bytes
This bit of code does it:
PROCEDURE Transfer;
TYPE
pLaunchStruct = ^LaunchStruct;
LaunchStruct = RECORD
pfName : ^Str255;
param : integer;
END; {LaunchStruct}
VAR
Reply : SFReply;
ValidTypes : SFTypeList;
volRef : Integer;
Location : Point;
prompt : Str255;
pMyLaunch : pLaunchStruct;
myLaunch : LaunchStruct;
fName : Str255;
err : OSErr;
PROCEDURE LaunchIt (pLnch : pLaunchStruct);
INLINE
$205F, $A9F2;
BEGIN
SetPt(Location, 90, 90);
validTypes[0] := 'APPL';
SFGetFile(Location, prompt, NIL, 1, validTypes, NIL, Reply);
IF Reply.good THEN
BEGIN
pMyLaunch := @myLaunch;
WITH pMyLaunch^ DO
BEGIN
pfName := @Reply.fName; {pointer to our fileName}
param := 0; {we don't want alternate screen or sound buffers}
END; {With}
err := SetVol(NIL, reply.vRefNum);
LaunchIt(pMyLaunch);
END;
END;
This is the same technique used in Macintosh Technical Note #52.
--Rich
Richard M. Siegel
Materials Characterization Instrumentation Section
Mail Stop 231
NASA/Langley Research Center
Hampton, Virginia 23665
(804) 865-3036
Arpanet: rs4u@andrew.cmu.edu
Uucp: {your fave gateway}!seismo!andrew.cmu.edu!rs4u
Disclaimer? I don't even KNOW 'er!
Technical Details
Message-ID:
<cUZ=8jy00UhTFUs19-@andrew.cmu.edu>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-lcc!ames!ucbcad!ucbvax!ANDREW.CMU.EDU!rs4u#Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-lcc!ames!ucbcad!ucbvax!ANDREW.CMU.EDU!rs4u# From: rs4u#@ANDREW.CMU.EDU (Richard Siegel) Newsgroups: comp.sys.mac Subject: Calling "LAUNCH" from Pascal Message-ID: <cUZ=8jy00UhTFUs19-@andrew.cmu.edu> Date: Tue, 28-Apr-87 09:44:15 EDT Article-I.D.: andrew.cUZ=8jy00UhTFUs19- Posted: Tue Apr 28 09:44:15 1987 Date-Received: Wed, 29-Apr-87 07:18:33 EDT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 62