IBUC 2006 Abstract

Experiences with Dynamic Link Libraries
Youhong Liu & Gina-Qian Cheung ; University of Michigan, USA

Blaise supports the use of Dynamic Link Libraries (DLLs) to perform a process or action that is not currently
available in Blaise itself. A DLL can be considered as external subroutines that can be called by the Blaise Data
Entry Program (DEP) or Manipula. The Blaise instrument passes information to the DLL, and the DLL acts on the
information and passes the modified or new information back to the instrument. The Blaise instrument then stores
or acts on the modified information. There are two types of alien references. Those that perform calculations are
called alien procedures and those that ask questions are called alien routers.

Previously, DLLs can only be developed by using Borland Delphi. The Delphi DLL itself can then communicate with
DLLs that are developed using different development environment, such as C++, VB. From Blaise version 4.6,
Alien procedures and alien routers in data models and Manipula setups now also support the use of ActiveX. The
alien is implemented by using a COM object method.

One of the projects conducted by the Institute for Social Research is Dioxin Exposure Study. In this project,
respondents were asked about several events during their life time. It requires special grids to achieve this
interface - we called them Event History Calendar (EHC). The normally Blaise simply can not provide the interfaces
and functionalities that the EHC required. We decided to implement the EHCs with alien router technique. In this
paper we will discuss how the EHCs were implemented via alien router and what are the advantages of using alien
router.

Contact: qianyang@umich.edu