DLL Programmer's Guide for TNS/E Systems
DLLs on a TNS/E System
DLL Programmer’s Guide for TNS/E Systems—527252-006
1-11
Linkfiles and Archives
DSM/SCM creates an initial registry file, listing all the public DLLs by name. This is an
edit file (filecode 101). Use DSM/SCM to add your public DLLs to those provided by
HP.
Entries to the file consist of a series of statements. The dll statement describes a public
DLL. In its simplest form, it is just a name, for example:
dll file ztestdll;
Here is another example; it contains the license attribute. A licensed DLL is one that
contains privileged code. Unless you use this attribute along with the value “1”, the
default is “0”, which means the DLL is unlicensed.
dll license 1, file privdll;
There are other attributes which are created automatically, for example the timestamps
that you and the tools can use for version control. Here are two examples, the
link_timestamp (from when the linker first created the DLL), and the update_timestamp
(from when the linker last updated the DLL, or when another tool rebases or presets it):
dll file zredll,
link_timestamp 2004-08-01 16:34:41.213592,
update_timestamp 2004-08-01 17:15:17.119634;
From these examples you can see that attributes can be in any order, attributes are
separated by commas, and statements are terminated by semicolons.
Linkfiles and Archives
When the linker is building a new loadfile, its command stream must contain the names
of one or more linkfiles to be transformed into the loadfile. A programmer brings
together linkfiles to make a loadfile because these linkfiles are designed to work
together and they often cross-reference each other.
A linkfile can also be stored in an archive, which is a file that holds one or more
linkfiles. Normally an archive stores what might be called auxiliary linkfiles, which serve
general purposes and can be included in different links. For example, you might store a
number of utility routines as linkfiles in an archive and incorporate them as needed.
Import Controls
Import controls allow you to determine from which other loadfiles your loadfile can
import symbols. These controls take the form of attributes that you assign to your
loadfile. This topic is discussed in detail in Import Controls and SearchLists
on
page 4-5. The three variants of import controls are:
Localized — A localized loadfile can import symbols from certain libraries in this
loadfile’s loadList. The choice of libraries is discussed in detail in The SearchList
for a Localized Loadfile on page 4-5.
Globalized — A globalized loadfile can import symbols from the program it is
loaded with and any loadfile in the program’s loadList.










