Appendix F. Deploying Applications
Deploying an application to an
executable (.exe) file requires Dolphin Smalltalk 4.01 Professional (see
http://www.object-arts.com/Products.htm).
Procedure for creating the Lunar
Lander executable
It should be possible for you to deploy
your own application by making some small changes to the following procedure
used to package the Lunar Lander demo.
1) Load and test your application in
your working Dolphin image.
2) Create a subclass of
RunTimeSessionManager called CcLanderSessionManager (The fileout for this class is
located in the ST3D "Extras" folder).
3) Create a #main method on
CcLanderSessionManager with the code required to open the Lander shell.
e.g.,
CcLanderSesionManager>>main
CcOpenglView resetAllDefaultPixelFormatIndices.
CcRenderingContext reset.
LmSimulatorShell show "Open the app"
The first two lines of the #main method
are needed to ensure that the correct pixel format is chosen for the system and
graphics adapter the application is run on (as opposed to the pixel format being
used at the time when the Deployment Wizard created the .exe).
4) Add CcLanderSessionManager to the
"CC Lander" package.
5) File in the class
CcSt3dImageStripper located in the ST3D "Extras" folder. Add
CcSt3dImageStripper to the "CC Lander" package.
6) With the package for your main
application selected, invoke the "Deploy executatable" from the package browser.
7) Follow the instructions in the
Lagoon Deployment Wizard. In step 1, select CcSt3dImageStripper as the
image stripper to use. In step 2, choose CcLanderSessionManager as the
runtime session manager.
8) Accept all Deployment Wizard
defaults to minimize the executable size. Be sure to uncheck the
"Remove deprecated methods" and "Compile External Structures" options.
9) Once the "Deploy" button is pressed,
ignore any warnings about dependencies on "Development System". It will
not be necessary to include any development system components with the deployed
app.
Deployment Folder
The deployment folder should be
organized as follows:
lander.exe (or other executable file)
ccutils.dll
dolphincr004.dll
dolphinvm004.dll
ST3D folder
Be sure to include the dll files
listed.
All resources required by the
executable must be included in the ST3D folder hierarchy. Care should be
taken to place each type of resource in the appropriate subfolder (e.g.,
bitmaps belong somewhere beneath the "Images" subfolder).
|