[comp.sys.mac.hypercard] Self-Starting Demos

BOLDUAN@oregon.uoregon.edu (Karen Bolduan) (02/28/90)

I am a graduate architecture student, presently engaged in creating a stack
that will, I hope, eventually be a self-running demonstration of a newly
developed energy efficiency design/analysis software package. The stack will
most likely be packaged with the software as a separate disk. My problem is
this:
Is it possible to get this stack to run itself as soon as the disk is inserted
into the drive? The stack and application will fill the disk, so there isn't
room for a system. Any ideas?

Also, if anyone sees any possible problems with distributing HyperCard in this
way, I'd appreciate hearing about them. Thank you!

R. Sanders
University of Oregon

Responses to:     Bolduan@Oregon.bitnet

bskendig@phoenix.Princeton.EDU (Brian Kendig) (03/01/90)

In article <16578@oregon.uoregon.edu> BOLDUAN@oregon.uoregon.edu (Karen Bolduan) writes:
>I am a graduate architecture student, presently engaged in creating a stack
>that will, I hope, eventually be a self-running demonstration of a newly
>developed energy efficiency design/analysis software package. The stack will
>most likely be packaged with the software as a separate disk. My problem is
>this:
>Is it possible to get this stack to run itself as soon as the disk is inserted
>into the drive? The stack and application will fill the disk, so there isn't
>room for a system. Any ideas?

Yes, it's possible, and there are two ways to do it.

You don't want to use the first way.  It would involve creating a
resource that pulls a mean 'n' nasty trick on the Finder by getting it
to launch HyperCard with your stack, and having that resource
masquerade as something important so that it gets run.  Shades of
WDEF, anyone?

The second way is to either include instructions with the disk, print
instructions on the disk's label, or put instructions on the disk so
that even the most technologically-illiterate user could figure it
out.  Difficult, but possible.

>Also, if anyone sees any possible problems with distributing HyperCard in this
>way, I'd appreciate hearing about them. Thank you!

I think it's a problem.  Having your machine do all sorts of funky
things as soon as you put a disk into it is, at the very least,
non-intuitive.  At the very most, it's dangerous.  Don't try it.
Instead, use my Method #2 above to tell the user how to start the
program on his own.

     << Brian >>
-- 
| Brian S. Kendig      \ Macintosh |   Engineering,   | bskendig             |
| Computer Engineering |\ Thought  |  USS Enterprise  | @phoenix.Princeton.EDU
| Princeton University |_\ Police  | -= NCC-1701-D =- | @PUCC.BITNET         |
|   Systems Engineering, NASA Space Station Freedom / General Electric WP3   |

mithomas@bsu-cs.bsu.edu (Michael Thomas Niehaus) (03/01/90)

With the original HyperCard, you could do this:  Create a disk with
just the System file, HyperCard, the Home stack, and the stack that you
want to run.

When the system starts up, it will open HyperCard and the Home stack.
Now, go into the on openStack handler in the Home stack and have it go
to your stack.

Of course if you want to distribute HyperCard and System on your disks
you need to get in touch with Apple Software Licensing...

-Michael

-- 
Michael Niehaus        UUCP: <backbones>!{iuvax,pur-ee}!bsu-cs!mithomas
Apple Student Rep      ARPA:  mithomas@bsu-cs.bsu.edu
Ball State University  AppleLink: ST0374 (from UUCP: st0374@applelink.apple.com)

nayeri@takahe.cs.umass.edu (Farshad Nayeri) (03/08/90)

   With the original HyperCard, you could do this:  Create a disk with
   just the System file, HyperCard, the Home stack, and the stack that you
   want to run.

   When the system starts up, it will open HyperCard and the Home stack.
   Now, go into the on openStack handler in the Home stack and have it go
   to your stack.

 As far as I could remember, you have to modify a resource in the System
 file to tell it that your startup appliaction is not Finder, but HyperCard.
 I did a stack that had to be standalone once, and to solve this problem, we
 did things a more tricky way (we were under time pressure.)  System will run
 any file which has the name "Finder" in the same folder.  So just rename
 HyperCard to "Finder" and put it in the same folder as the Home stack and the
 System file, and reboot.  I think that the original hypercard disks worked
 the way they did because the System was modified.

 Anyone knows how to tell the system to look for a file different than the
 finder? 

--
 Farshad Nayeri
 Graduate Student
 COINS Department
 University of Massachusetts

dale@bcm.tmc.edu (Dale A. Samuelsen) (03/08/90)

In article <10850@bsu-cs.bsu.edu> mithomas@bsu-cs.bsu.edu (Michael Thomas 
Niehaus) writes:
> With the original HyperCard, you could do this:  Create a disk with
> just the System file, HyperCard, the Home stack, and the stack that you
> want to run.
> 
> When the system starts up, it will open HyperCard and the Home stack.
> Now, go into the on openStack handler in the Home stack and have it go
> to your stack.

Note that with this method you are distributing a Home stack with your 
stack.  When you do so, you need to be certain that the user of your stack 
& home stack (who may not be a mac or hypercard guru) knows _NOT_ to copy 
the home card to his/her hard drive and by so doing, overwrite the home 
stack there.

With that caveat,  Michael's idea a good one & will work nicely.

Dale A. Samuelsen
Baylor College of Medicine
dale@bcm.tmc.edu
--Any opinions expressed are mine alone and do not necessarily represent 
those of Baylor College of Medicine.

jpb@umbio.miami.edu (Joe Block) (03/11/90)

In article <NAYERI.90Mar7195728@takahe.cs.umass.edu> Nayeri@cs.umass.edu writes:
> Anyone knows how to tell the system to look for a file different than the
> finder? 

Use the Set Startup command in the Finder.

JB
--
Joe Block         jpb@umbio.miami.edu
There was a young poet named Dan, whose poetry would never scan,
when told this was so, He said, Yes I know,
It's because I try to fit every possible sylable into the last line that I can.