Novell is now a part of Micro Focus

NAL 2.01 Roundup

Novell Cool Solutions: Feature
By Matt Brooks

Digg This - Slashdot This

Posted: 4 May 1999

So many NAL2.01 questions have come in lately, we've rounded 'em up into this little article for your reading pleasure. Snap on your reading glasses, tilt back your chair, and prepare for some major and minor epiphanies. Here you go, straight from the horse's mouth. (The horse, in this case, is Matt Brooks, an ultra-smart guy with steely blue eyes and Donny Osmond teeth, who was one of the original cowboys who invented this thing.)

Chris S., a LAN administrator, wrote: Why when I check start menu, desktop, or toolbar for a specific application of a user it does not show up in any of the three spots when the user logs in? I'm using NAL 2.01.

Matt: You must be running NAL Explorer (NALEXPLD) in order for those options to be used.

Hans H., Netherlands, wrote: How do I refer to a variable like the user's login name on the command line of a application object. I'm trying to get an older DOS-based program to work that requires this. Rather then making a separate application object for each user that states their login name, I would like to use a variable like the login_name. Thought the Help says that this can be done, it does not appear to be so. I'm currently still using the NAL2.01 that was shipped before ZENworks.

Matt: This is a cinch, Hans.

  1. Step 1: Upgrade to ZENworks.
  2. Step 2: Use %LOGIN_NAME% or %CN% (both are the same).

Jack O. wrote: We're using NAL 2.0 to distribute the Microsoft Office97 SR2 to the desktop, but we don't want it to install on workstations that are running Office 95. Is there any way to implement this through NAL, like using a script to run before NAL launches? If this is a viable option, what would the syntax be? Thanks.

Matt: You could use the pre-launch script. (See the Scripts page in NWAdmin on the Application object.) In ZENworks 2.0 we will have a much better way to deal with this.

Robert N. wrote: Hey! In the Jan. 27 issue of Q&A you talk about NAL 2.01. Where can I find a copy of this? All I could find was a patch for it. Thanks for the info.

Matt: Sorry, big guy. You can't buy it anymore. Buy ZENworks instead, which does all NAL 2.01 ever dreamed of doing, and a whole lot more.

Paul J. wrote: We have the constant need in our company to log in to servers at remote sites. Is there a way utilizing Nal 2.01 to get the same user rights no matter where we travel without having to authenticate to our "home server"? In other words, can we pre-program the servers in our other sites with our admin scripts so they're ready when we get there? If not, is this function available in 2.5?

Matt: NAL 2.6 and above have a feature called Application Site List, or what we call Launch Closest. This may be what you are looking for. NAL intelligently looks through a list of application objects and selects the one currently closest to the user.

Paulette wrote: About NAL 2.01 - ADDING THE VALUE FROM INI AT THE START OF WIN.INI -- I used the ini files option in the application object to modify the win.ini and add values. It's working properly, that is, it adds the 4 lines to the win.ini on the c:\windows. My problem is, these lines are added at the bottom of win.ini and in order for the application to work it has to be at the top of the win.ini. Is there a way to install it at the beginning of a file.

Matt: You could use the text file modification feature. That way you could order the changes and have them be added to the top of the file.

Edward F., UK, wrote: This is about NAL 2.01 i.e. just prior to ZENworks...I am having problems snAppShotting Norton Antivirus 5... onto NT 4.0 Sp3...with NAL 2.01 the snAppShot works but the result isn't very good. The destination client will eventually be a secured desktop (for which by then we will need to put in ZENworks). However at the moment we are having problems installing it from a NAL object.

NAV 5 adds a couple of entries to HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Enum\ Root\ 0000 but it appears the destination client doesn't have the ability to write to this key (SYSTEM has full Access, but Everyone has R access only), even logged in as Administrator.

So we explicitly grant Administrator full access to this Enum and below, and the NAL installation proceeds. However when the installation "completes", even though in the control panel there are three services for NAL, only one of them works. All others say something along the lines of missing file (when trying to start the service).

So my question is, has anyone had any success? Or even how good is ZEN/NAL at installing services, and how good is it at installing services on a secured desktop, and finally what are its limitations/capabilities in installing on a secure NT desktop?

One more question. Has anyone been successful at deploying NAV 5 using NAL? or do we have to use ZEN, and has anyone done this using ZEN?

Matt: Typically, with the Enum key and below, you can delete from the application object or AOT all setting for that area. They are usually automatically written by device drivers and the like. However, if you upgrade to NAL 2.5 (ZEN 1.0) and above, you will have NALNTSRV there that can access those keys and write out any information you want.

[Editor's Note: we operate this whole site under the following premise: You Guys Want the Straight Poop, Even if the Answer is No. If that's not true for you, you'll want to stop reading here, so as not to burst your bubble.]

Rick L. wrote: Some of the DOS applications we currently use will not execute correctly unless a mapped drive letter is included in the NAL 2.0 "Path to Executable File" and "Working Directory" fields. To simplify drive mapping issues we would like to use the next available drive letter to execute the program and then release it after program completion. Is it possible to place a variable within the NAL executable and working directory paths which will assume the drive letter value supplied by the 'Map Next' command (contained in the pre-launch script or Drive/Ports options)? Can this drive letter be released for future use after the program completes? Any info would be appreciated.

Matt: Hope you meant what you said about appreciating any info. The info is: sorry, that feature is not available.

Brian F. wrote: I just need to know if AOTXPORT will work with NAL 2.01. Our company does not use ZEN, but what the AOTXPORT does is something that I need to be able to do. So if you could get back to me I would appreciate it.

Matt: Sorry, it only works with NAL 2.5 (ZEN 1.0) and above.

Other common 2.01 questions

Several readers have asked for a list of all the command-line switches available for NAL.EXE (2.01). Here's the scoop:

There are only two command line switches for NAL.EXE: /A= and :

/A= Minimizes the NAL window and launches the specified application.

The basic syntax in a login script is: @NAL.EXE /A=.<DSobjectname>. For example, if you want an application to run and the NAL Window to be minimized automatically, add the following syntax to the login script: @NAL.EXE /A=.NetScape.MKTG.ABC (assuming the Netscape application object exists in the MKTG.ABC container).

The : option simply runs NAL without displaying the splash screen. Syntax: NAL :

Multiple questioners: Can NAL 2.01 co-exist with NAL 1.1 in the same tree?

Yes. However, once the schema is extended, you cannot create any more 1.x objects.

Multiple questioners: Can NAL 1.1 and 2.01 users co-exist in the same tree?

Yes, indeedy.

Multiple questioners: What NDS variables are available for NAL?

Variable substitution

Variable substitution enables Novell Directory Services (NDS) attributes or environment variables to be in some fields of the Novell Application Launcher software. You can do this in the Command Line, Working Directory, Execution Path, Mapping and Printer Ports fields as follows:

  • %ATTR% for an environment variable
  • %DSATTR% for a DS attribute for the default user
  • %.OBJECT.NOVELL:DSATTR% for a DS attribute for the specified object

Some NDS attributes that can substituted in Novell Application Launcher software are:

  • CN
  • Full Name
  • Department
  • Telephone
  • Home Directory

Some environment variables that can substituted in Novell Application Launcher software are:

  • PATH
  • TEMP

If, after the variable is substituted, the resulting variable size would be larger than the field's maximum size, then the substitution will not occur. Note: Login variables are not supported.

Anonymous questioner: How does NAL support roaming users? I don't want software distribution to happen on each workstation a roaming user may log into.

With NAL 2.01, when an application is distributed, the registry is stamped under HKEY_CURRENT_USER (CU) and HKEY_LOCAL_MACHINE (LM). When roaming users login to other workstations, NAL checks both registry settings to determine if the application should be distributed.

Multiple questioners: Does NAL allow you to uninstall applications?

You can use the application's uninstall feature if it exists. You could create a reverse .aot file of the install, but this would also delete any shared .dlls. If you know the product well enough you could create an uninstall .aot that would leave the shared .dlls in place.

Multiple questioners: Can I run snAppShot on a machine, come back later and run an application install, then reboot the machine?

Yes, you can run snAppShot now or later.

Multiple questioners: Can a user delete desktop icons in the NAL?

Users cannot delete icons, unless they are shortcuts they themselves have created. NAL will clean up shortcuts when the application object is deleted.

Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions.

© Copyright Micro Focus or one of its affiliates