Bandwidth Monitor
SQLDTS.comSQLIS.comSQLIS Wiki
Redistributing DTS with your program
By Darren Green
Version 7.0/2000
Level Intermediate

If you've written a program that utilises DTS then you will need to distribute the DTS files along with your new program. Programs such as the Visual Studio Package and Deployment Wizard will not automatically include all of the files required. The definitive reference for redistributing SQL Server components is the redist.txt file found on the root of your SQL Server CD-ROM, or in the service pack extraction directory (the directory that the files are extracted to if using the self-extracting archive downloaded from Microsoft). There are two sections about DTS, the first lists all of the files required, the second details which files must be registered and one or two that must placed in the Windows system directory.

As well as the usual dynamic-link libraries (DLLs) there are also some localized resource files (RLLs) listed. Resource files should be placed in a sub-directory structure under the DLLs, \Resources\XXXX\, where XXXX represents the language of the SQL Server instance. 1033 is the language identifier for "English, US", so assuming the DLLs are in the ApplicationDirectory, the RLLs would be in C:\Program Files\ApplicationDirectory\Resources\1033\

The following table summarises the files, their locations and any registration requirements:

Filename Description Installation Folder Register
sqlresld.dll Satellite Resource DLL Loader X:\Program Files\ApplicationDirectory\
dtsffile.dll DTS Flat File OLE DB Provider X:\Program Files\ApplicationDirectory\ Yes
dtsffile.rll DTS Resource File X:\Program Files\ApplicationDirectory\
Resources\1033\
dtspkg.dll DTS Package X:\Program Files\ApplicationDirectory\ Yes
dtspkg.rll DTS Resource File X:\Program Files\ApplicationDirectory\
Resources\1033\
dtspump.dll DTS Datapump X:\Program Files\ApplicationDirectory\ Yes
dtspump.rll DTS Resource File X:\Program Files\ApplicationDirectory\
Resources\1033\
axscphst.dll DTS ActiveX Script Host X:\Program Files\ApplicationDirectory\ Yes
axscphst.rll DTS Resource File X:\Program Files\ApplicationDirectory\
Resources\1033\
dtsrun.exe DTSRun Command Line Utility
to Execute a DTS Package
X:\Program Files\ApplicationDirectory\
dtsrun.rll DTS Resource File X:\Program Files\ApplicationDirectory\
Resources\1033\

SQL Server 7.0 Only
sqlwoa.dll SQL Server Unicode /
ANSI Translation Layer
C:\Winnt\System32 Or C:\Windows\System
sqlwid.dll SQL Server Unicode /
ANSI Translation Layer
C:\Winnt\System32 Or C:\Windows\System

SQL Server 2000 Only
custtask.dll DTS Custom Tasks File X:\Program Files\ApplicationDirectory\ Yes
custtask.rll DTS Custom Tasks Resource File X:\Program Files\ApplicationDirectory\
Resources\1033\
sqlunirl.dll SQL Server Unicode /
ANSI Translation Layer
C:\Winnt\System32 Or C:\Windows\System

As indicated in the table above, some DLLs require registration on the destination machine. To register a DLL you use the Regsvr32.exe utility, so to register dtsffile.dll, use the following command in the Windows run dialog or at the command prompt:

Regsvr32.exe "X:\Program Files\ApplicationDirectory\dtsffile.dll"

The additional DTS Custom Tasks files in SQL Server 2000 are for the new Message Queue task, FTP task and the Dynamic Properties task. There is an error in Redist.txt, as it does not list custtask.dll as one of the DLLs to register.

To get these files you can take them from any machine with the SQL Server management tools installed. The files are in the SQL Server binn directory, c:\mssql7\binn\ for SQL Server 7.0, or C:\Program Files\Microsoft SQL Server\80\Tools\Binn for SQL Server 2000. The exception is of course the SQL Server Unicode/ANSI Translation Layer DLL(s) which are in your Windows system directory. The files can also be taken direct from your SQL Server CD-ROM or service pack extraction folder. It is important to remember that these files can be updated by service packs so it is recommended that you take them either from a machine with the appropriate service pack installed, or from the service pack directory itself. The relevant CD-ROM or service pack extraction directories are \x86\binn, \x86\binn\res\1033, and \x86\system.

By following the guidance above and that contained in redist.txt, DTS can be installed on Microsoft Windows NT 4.0, Windows 2000, Windows Me, and Windows 98. DTS under SQL Server 7.0 is supported on Windows 95, but the SQL Server 2000 version is not. This limitation is true for all SQL Server 2000 client tools.