Appendix: Additional software distribution information

This chapter explains how to use LANDesk Management Suite's software distribution (SWD) to distribute software and files to devices throughout your network.

Read this chapter to learn about:

Processing custom scripts

Custom scripts that control scheduled tasks (Tools > Distribution > Scheduled tasks) are processed in three sections:

Custom Script Commands

Custom scripts support various local and remote commands:

Command-line parameters

Software distribution is facilitated by a deployment script. SDCLIENT.EXE manages the packages using command-line parameters from the script file that are passed to the application.

SDCLIENT.EXE supports the following command-line parameters:

sdclient.exe /p="<package path>" [/g=<pkg guid>] [/All] [/R] [/N] [/An] [/Ac] [/Ab] [/fui] [/msi] [/exe] [/bw=xxx] [/E]


Parameter name Description

/p=<package path>

Package path. The package path must be specified, regardless of the package type. This parameter specifies the UNC or URL path to the package that is to be installed on the local device.

/g=<pkg guid>

Package GUID. For SWD or AutoInstall packages. This parameter specifies the GUID for the package. The package GUID is used to check the local .cfg file cache for a copy of the package's .cfg file.

/All

Uninstall flag. This flag is set to indicate that the SWD or MSI package should be uninstalled rather than installed. This flag is case-sensitive (/all won't work).

/R

Always reboot flag. This flag indicates that the device should always be rebooted after the package installation. Not all MSI packages follow this guideline.

/N

Never reboot flag. This flag indicates that the device should never be rebooted after the package installation.

/An

Silent installation flag. This flag indicates that the installation should be silent. This means that no UI, or the smallest amount of UI possible, should be displayed during the installation.

/Ac

Disable cancel flag. This flag prohibits the user's ability to cancel the installation.

/Ab

No background flag. This flag only applies to SWD packages. When a package is being installed, the blue background won't be displayed.

/fui

Full UI flag. This flag indicates that the full UI for legacy and MSI packages should be used.

/msi

MSI package flag. This flag indicates that the package path points to an MSI package file.

/exe

Executable package flag. This flag indicates that the package path points to a legacy package or a generic executable file.

/bw=xxx

Bandwidth requirements. Specifies a minimum bandwidth requirement for the package script to be run.

/F

Generic file flag. This flag causes SDCLIENT.EXE to download the file to the LDClient folder.

/msg=""

Sends a message to the core server while the task is executing. This message appears in the task status inside the Scheduled tasks window's Message column.

HTTP and UNC paths

These are examples of software distribution .ini files that reflect the differences between HTTP and UNC path script files.

HTTP path script file:

; This file was generated by Desktop Manager

[MACHINES]

REMEXEC0=C:\Program Files\LANDesk\LDClient\sdclient.exe -p=http://<web server>/packages/test package.exe -g={6DD454C0-11D3A0D1-a000B3B5-9BACBBC99CFC6D-9CE3504801A0D4B2FZ0829F08} -Ac -Ab

UNC path script file:

; This file was generated by Desktop Manager

[MACHINES]

REMEXEC0=C:\Program Files\LANDesk\LDClient\sdclient.exe -p=\\sample_core\onefile\test package.exe -g={6DD454C0-11D3A0D1-a000B3B5-9BACBBC99CFC6D-9CE3504801A0D4B2FZ0829F08} -Ac -Ab

Notice that both .ini files have similar elements. In the MACHINES section, the -P option designates the path where the device will download the software package. In the HTTP example, the path is http://<web server>/packages/test package.exe.

The next option is the -G option, which is the GUID, a unique number identifier for each package. This number identifier is generated by the Package Builder, and it helps prevent confusion during installation between packages with similar names.

Scripting guide for deployment scripts (.ini) files

You don't have to use the Create software distribution script window to create the deployment script file. A deployment file is an .ini file containing the settings the device should use for installing a package. You can create your own deployment files in a text editor such as Notepad if you prefer.

A software distribution .ini script file has these components:

[MACHINES]

REMEXEC0=C:\Program Files\LANDesk\LDClient\sdclient.exe

/p="http://computer_name/95Packages/Acro32_95.exe"

/g={281B46C0-11D3766F-a0008bab-F9751AC966F808-66E3BC2DF01A0D4B2F88670DE4}

/Ac

/N

REMEXEC0 command parameters

The parameters for the REMEXEC0 command have been placed on separate lines to make the components more visible. When placed in an .ini file, the command needs to be on one line.

REMEXEC0 is the Remote Execute command. If you want to use more than one REMEXEC0 command in a single script file, increment the command each time it is used. For example, if you used three REMEXEC calls in a single .ini file, they should be REMEXEC0, REMEXEC1, and REMEXEC2. These commands don't need to increment if they're in separate files.

The C:\Program Files\LANDesk\LDClient parameter is the correct path to the SWD agent.

Understanding software distribution error codes

From the console, the right panel in the Scheduled tasks window displays the task status. If you click Failed under the task, you can see devices that failed the job and the resulting messages and logs. The status and errors are logged to the following files:

These log files are stored on each device. The following table lists the error codes you may encounter in these files.

Error code Definition

101

The user cancelled the install.

102

File access was denied.

103

The password used isn't valid.

104

No network found, or incorrect path provided.

105

A download error occurred.

106

A socket could not be created.

107

Unable to open an HTTP session.

108

A CFG download error occurred.

109

A save CFG error occurred.

110

No save CFG folder exists.

111

A file access error occurred.

112

A get CFG error occurred.

113

Unable to create a backup CFG.

114

A spawn error occurred because another package is already being installed.

117

The backup directory can't be created.

180

Networking error. Can't initialize.

188

Timed out while downloading over HTTP.

189

HTTP connection aborted.

191

Host not found.

197

HTTP file not found.

201

The UNC file cannot be found.

202

The file was not found on the installation disk.

203

Unable to create a file in the specified location.

204

Not enough disk space on the destination drive for installation.

205

An invalid drive was specified, or the drive required for this install was not available.

206

The file has a long filename and can't be installed by the 16-bit install program. You still have the option to continue to install other files.

207

The specified file is not an executable.

208

Multiple uninstall registry entries exist with the same source path.

209

Unable to locate the uninstall executable.

210

Encountered an invalid compressed file, or HTTP error(s).

211

A successful AFXSOCKETINIT command must occur before using this API.

212

The network subsystem failed.

213

No more file descriptors are available.

214

The socket can't be created. No buffer space was available.

215

The specified address was already in use.

216

The connection attempt was rejected.

217

The provided host address was invalid.

218

The network can't be reached from this host at this time.

219

The attempt to connect timed out without establishing a connection.

220

The virtual circuit was aborted due to a timeout or other failure.

221

The virtual circuit was reset at the remote site.

222

A non-stated HTTP error occurred.

223

An HTTP error occurred; the file wasn't open for reading.

224

An HTTP error occurred; no content-length setting provided.

225

An HTTP error occurred; not enough memory available.

226

A memory allocation error occurred.

227

Unable to read the file.

228

Insufficient memory available.

229

The .cfg file has an error at line XX.

240

The temporary path specified is invalid. It can't be accessed or created. The target computer has a configuration problem.

301

This application has never been installed on this computer; it can't be uninstalled.