What
Happens During Installation?
The following takes place during typical install:
- The server is updated with MDAC (Microsoft Data Access
Components) and the .NET Framework
- Files are copied to C:\Program Files\LicenseWatchPlatinum
The folder C:\Program Files\LicenseWatchPlatinum\Client
is shared with the name LWClient
- 2 virtual directories are created under local machine
/ default website:
- LicenseWatch (LicenseWatch user interface)
- LWClientRequestHandler (used by LicenseWatch clients)
- A windows service is created and started; LW Client
Package Handler (runs time-consuming jobs as low-priority
background jobs)
- A database (default name LicenseWatchPlatinum) is created
either on an existing SQL server or a new instance of
MSDE
LicenseWatch
Installation Prerequisites
- You must have control over the target system.
- You must be allowed to reboot the server.
- You must have logon information for the server
- You must have a valid license code for the customer
Supported platforms:
Windows 2000 Server
Windows 2003 Server
- You can only run the setup program from a local CD drive
or a local copy of the CD contents
Is IIS
(Internet Information Server) Installed?
The IIS is installed if you can find Internet Information
Services under Control Panel / Administrative Tools.
Installation of IIS on Windows 2003:
- Go to Control Panel / Add or Remove Programs
- Click Add/Remove Windows Components
- Choose Application Server and click Details
- Check ASP.NET and Internet Information Services
Installation of IIS on Windows 2000:
- Go to Control Panel / Add/Remove Programs
- Click Add/Remove Windows Components
- Check Internet Information Services
Is
.NET Framework 1.1 Installed?
Windows 2003 Server has .Net Framework 2.0 installed by
default. .Net Framework 1.1 should be installed when installing
LicenseWatch.
How to check if .Net Framework 1.1 is installed; the following
folder must exist:
<Windows folder>\Microsoft.NET\Framework\v1.1.4322
.NET Framework 1.1 can be downloaded from Windows Update.
Is ASP.NET
Registered Correctly in IIS?
If .NET Framework 1.1 was installed before IIS, ASP.NET
1.1 might not be registered correctly in IIS.
How to check if ASP.NET 1.1 is registered in IIS:
- Go to Control Panel / Administrative Tools / Internet
Information Services
- Right-click the LicenseWatch website and choose Properties
- Click Configuration
- In the list of extensions .aspx must refer to C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll
or C:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll
How to register ASP.NET 1.1 in IIS:
Note: If other websites are installed on the server and
those websites use another version of ASP.NET, then the
actions below will disrupt them:
- Start a command prompt
- Change to folder
- <windows folder>\Microsoft.NET\Framework\v1.1.4322
- Run aspnet_regiis -i
- Run iisreset
Windows
2003: Is ASP.NET Allowed on the Server?
- Go to Control Panel
- / Administrative Tools / Internet Information Services
- Go to Web Service Extensions
ASP.NET v1.1.4322 must have status Allowed – if not click
Allow
Does
the Default Website Exist?
LicenseWatch installs 2 websites under the default website.
Test if the default website runs by opening the URL http://localhost.
If the Internet Explorer cannot find the URL, then the default
website might be stopped. If the default website runs, you
will typically get an Under Construction message.
Paths
to Data- and Log Files When Creating a Database on a Remote
SQL Server
You can choose to create the LicenseWatch database on
an existing SQL Server. If that server runs on a remote
machine, you have to be aware of the following: Paths to
data- and log files are local paths on the machine that
runs the SQL Server. Using the Browse buttons won’t make
any sense You must find means of verifying where to place
data- and log files, ask the local system administrator.
How
should LicenseWatch connect to the SQL Server?
During setup you can choose between 2 connection methods:
- Use Windows NT Integrated security also known as Windows
Authentication
- Use a specific user name and password also known as
SQL Server Authentication
It is strongly recommended to use SQL Server Authentication.
If you use Windows Authentication, then all the users that
access the LicenseWatch UI must have privileges to access
the database server. This will, in our experience, cause
a lot of headache for the local system administrator. When
choosing SQL Server Authentication we recommend using the
existing database user, sa. Alternatively, you must create
a new database user with administrator privileges.
There
is already an Instance of MSDE on the machine!
The LicenseWatch Setup program does not support creating
an instance of MSDE if other MSDE instances exist on the
machine. It is usually not a good idea to use an existing
instance of MSDE for LicenseWatch, because it is often installed
by other systems such as BackUpExec. Such a database server
may be configured differently and it can be difficult to
manage the database or even get access to it. We recommend
using a different server or setting up a new SQL Server.
Moving
the Database to a Different Server
First step is to create a new empty LicenseWatch
database on the new server. There are 2 possibilities:
Create a new empty LicenseWatch database by running the
LicenseWatch setup program. Choose Custom
- Install and uncheck LicenseWatch website OR
- Copy the existing LicenseWatch database with data using
SQL Server management tools
Second step is to change LicenseWatch configuration
to point to the new database. This is done by changing a DSN
string in different configuration files. If you use the recommended
SQL Server Authentication the DSN string will have the following
form:
Data Source=[server];Initial Catalog=[database];
User ID=[username];Password=[password]
You must replace the following:
- [server]: The name of the SQL Server. If you use a MSDE
instance installed by the LicenseWatch setup program on
the local machine, then [server] should be [server host
name]\LicenseWatchMSDE
- [database]: Database name. Default is LicenseWatchPlatinum
- [username]: User name, sa is recommended
- [password]: Password. If password is blank, just write
Password=
You must replace the DSN string in the following files:
- C:\Program Files\LicenseWatchPlatinum\Web\LWAdmin\Web.config
- C:\Program Files\LicenseWatchPlatinum\Web\LWClientRequestHandler\Web.config
- C:\Program Files\LicenseWatchPlatinum\Services\LWClientPackageHandler\LWClientPackageHandler.exe.config
- C:\Program Files\LicenseWatchPlatinum\Services\LWSMSClient\LWSMSClient.exe.config
if the SMS Client is installed
In each configuration file will have you will find the DSN
string under appSettings:
<?xml version="1.0"
encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="DSN" value="Password=;User ID=;Initial
Catalog=;Data Source=;"/> </appSettings>
</configuration>
The LicenseWatch windows services; LW Client Package Handler
and LW SMS Client (if installed), must be restarted before
the new database connection settings takes effect for background
jobs.
How
is the Client Launched?
The setup program creates a share for the folder C:\Program
Files\LicenseWatchPlatinum\Client. The share is accessed
from other machines with:
\\[server]\LWClient
This share contains the LicenseWatch client executables.
The command for launching the client is:
\\[server]\LWClient\LWPreloader.exe [server]/LWClientRequestHandler
The argument [server]/LWClientRequestHandler specifies
the URL for the website that clients use to communicate
with the server. Note that the URL does not start with http://.
The command can be run manually, from the login script or
from an AD group policy.
To create an AD group policy, point to a VB script file
from User Configuration / Scripts / Logon:
The VB script file must
have the following contents:
Set objShell = CreateObject("Wscript.Shell")
strCommandLine = "\\[server]\LWPreloader.exe [server]/LWClientRequestHandler"
objShell.Run(strCommandLine)
The program LWPreloader.exe is not the actual client, but
a preloader. The preloader will copy the client executables
to C:\Program Files\LicenseWatch depending on the system
settings LWClient_RunType and LWClient_LocalPath. Then the
client executable LWClient.exe is launched.
The files are only copied if they are updated on the server.
Check
if the LWClientRequestHandler website is running correctly
The LWClientRequestHandler website is used by clients to
communicate with the server.
To check if this website is running correctly; go to this
URL:
http://[server]/LWClientRequestHandler/GetFileInfo.aspx
The website is running if you get the dialog:

The file Result.txt should contain XML data looking like
this:
<GetFileInfo>
<BlockedFiles>
</BlockedFiles>
<MeteringUsageStat>
</MeteringUsageStat>
</GetFileInfo>
Content may vary depending on your system configuration.
If the URL does not return the result.txt file, then there
the website is not running, or you do not have privileges
to access it.
Is
Client Packages Being Processed Correctly?
In the LicenseWatch main menu, go to Administration / Client
packages. Here you can see client packages in queue (tab Waiting
packages) and processed packages (tab Old packages). You control
the logging of client packages with system setting System_LogPackages.
By default, only packages that failed are logged.
If packages are not moved from Waiting packages to Old
packages, there can be different scenarios:
- Packages are not complete. The client was interrupted
before all data could be sent. This rarely occurs, you
should take any action.
- The LW Client Package Handler service has stopped. Restart
the service
Does
the User Have Write Privileges on the Local Machine?
The client executables is copied to the local machine. By
default they are copied to a folder under the program files
folder. The logged on user must therefore have privileges
to create that folder and copy files to it. This can be
tested by manually creating a folder under the program files
folder.
If the user doesn’t have sufficient privileges, there are
3 options:
- Give privileges to the user
- Change the location of the client executables by setting
the system setting LWClient_LocalPath. You must of course
choose a location where the user has sufficient privileges,
such as @MYDOCUMENTS (equals %USERPROFILE%\My Documents)
or @COOKIES (equals %USERPROFILE%\Cookies)
- Don’t copy client executables; launch the client directly
from the server. This can be done by setting the system
setting LWClient_RunType to Run from server. This option
has some limitations. Metering is not supported with this
option, because file LWProcessWatch.dll must be copied
to the local disk in order for metering to work. In large
installations with many clients, launching the client
from the server may present a severe bottleneck, especially
if clients log on at the same time
Create
a Test-Website on the Server
Creating a simple test-website can help you narrow the
scope of possible error conditions when the LicenseWatch
are not working correctly.
First, create a folder anywhere on the server, i.e. c:\webtest.
Create two files in the folder: test.html and test.aspx.
Use notepad to open the files and write the word Test.
Go to Control Panel / Administrative Tools / Internet Information
Services.
Select local computer / Web Sites / Default Web Site. Right
click and select New / Virtual Directory. Set the alias
name to webtest and point to c:\webtest.
Go to the URL http://[server]/webtest/test.html. You should
see the text Test. If not, there is a general problem with
the Internet Information Server. Try running iisreset.
Go to the URL http://[server]/webtest/test.aspx. You should
see the text Test. If not, there is a problem with the installation
and registration of ASP.NET in the Internet Information
Server.
Why Does Clients Report Different Types of Hardware Information?
Hardware information is acquired via WMI (Windows Management
Instrumentation). Hardware information may vary depending
on:
- Operating system: Newer versions of Windows may provide
more information than older versions.
- Hardware: The hardware manufacturers decide what information
is made available through WMI. I.e. on most newer machines
the serial number is available, whereas it may be missing
on some older machines.
A prerequisite for the hardware scan is that WMI is installed
on the machine.
Some
Clients Can’t Scan Hardware / Installation of WMI
WMI (Windows Management Instrumentation) is not a standard
component of Windows 95 and 98. You have to install WMI
on these machines before hardware can be scanned by the
LicenseWatch client. Setup program for WMI for Windows 95/98
can be found on the CD in the folder \Bin\ExtraUtil\WMI.
Why
is There Both a LicenseWatch and a LicenseWatchPlatinum
Folder?
LicenseWatchPlatinum is the standard installation folder
where all LicenseWatch system files are placed. The LicenseWatch
folder contains the client executables and is created when
the client is launched.
Resolving
the ResolveIdentity Error
You might get an error message when trying top access the
LicenseWatch User Interface website ([server]\LicenseWatch)
that contains the word ResolveIdentity. This problem can
occur if the Windows Server is set up as a domain controller.
In this setup the IWAM_servernavn account is missing some
privileges. See the article http://support.microsoft.com/default.aspx?scid=kb;en-us;824308.
The problem can be resolved like this:
- Click Start point to Programs point to Administrative
Tools and then click Domain Controller Security Policy.
- Click Security Settings.
- Click Local Policies and then click User Rights Assignment.
- In the right pane double-click Impersonate a client
after authentication.
- In the Security Policy Setting window click Define these
policy settings.
- Click Add and then click Browse. In the Select Users
or Groups window select the IWAM account name click Add
and then click OK. Click OK and then click OK again.
- To enforce an update of computer policy type the following
command: secedit /refreshpolicy machine_policy /enforce
- At a command prompt type iisreset
System
Folder Aliases
For system setting LWClient_LocalPath and file scan start
folders it is possible to specify the following system folder
aliases:
- @WINDOWS. The Windows folder (i.e. C:\Windows)
- @PROGFILES. The program files folder (i.e. C:\Program
Files)
- @SYSTEM. Windows system folder (i.e. C:\Windows\System32)
- @MYDOCUMENTS. Current users documents folder (i.e. %USERPROFILE%\My
Documents)
- DESKTOPDIRECTORY. Current users desktop folder (i.e.
%USERPROFILE%\Desktop)
- @COOKIES. Current users cookies folder (i.e. %USERPROFILE%\Cookies)
Manual
Uninstallation of LicenseWatch
- Go to Control Panel / Administrative Tools / Services
- Stop service LW Client Package Handler
- Stop service LW SMS Client if it exists
- In the registry go to HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services.
- Delete the key LWClientPackageHandler and the key LWSMSClient
if it exists.
- Go to Control Panel / Administrative Tools / Internet
Information Services
- Go to local computer / Web Sites / Default Web Site
- Delete the 2 virtual directories LicenseWatch and LWClientRequestHandler
- Run iisreset Uninstall MSDE if that was installed as
part the LicenseWatch installation, see Uninstall/Reinstall
of MSDE
- Delete the LicenseWatch folder from the start menu
- Remove sharing on the folder C:\Program Files\LicenseWatchPlatinum\Client
- Delete the folder C:\Program Files\LicenseWatchPlatinum
Problems
with Windows Installer
We have experienced different problems with Windows Installer.
Typical errors are failure of MSDE installation and failure
when running the LW Upgrade Preloader MSI package. One cause
of error can be when using Remote Desktop to access the
server sp that the installation runs within a terminal server
session. This can be avoided by logging on directly to the
server using this command to start Remote Desktop: mstsc
/console Another cause of error is unsuccessful registration
of Windows Installer. This can be resolved by issuing the
following command on the server: msiexec /regserver Finally,
try to get the newest version of the Windows Installer on
www.microsoft.com
Problems
when Restoring the Database
Restoring the database requires that there are no open connections
to the database. Go through the following steps to free
all connections to the LicenseWatch database:
- Run iisreset Close Query Analyzer and similar tools
that accesses the database
- Go to Control Panel / Administrative Tools / Services
- Stop service LW Client Package Handler Stop service
LW SMS Client if it exists Restart service MSSQLSERVER
Ultimately, you can use SQL management tools to kill open
connections to a database.
Changing the License Code Directly in the Database Run
the following SQL command:
update systemsettingvalue set settingvalue
= '[license code]' where systemsettingid = 22
If you are using MSDE then you have to use the osql tool
to issue the SQL command:
C:\Program Files\Microsoft Sql Server\80\tools\binn\osql
-S [Server]\licensewatchmsde -U sa -P [password] -d licensewatchplatinum
–q "update systemsettingvalue set settingvalue = '[license
code]' where systemsettingid = 22"
If
the LicenseWatch client doesn’t start on Vista clients
The system setting LWClient_LocalPath must point to a folder
to which the current user has access rights. If the value
of this system setting is @PROGFILES\LicenseWatch then launching
the LicenseWatch client on a number of Vista clients is
likely to fail, because Vista users does not have rights
ton access the Program Files folder by default. Change the
system setting LWClient_LocalPath to a folder that the current
user can access, i.e. @MYDOCUMENTS\LicenseWatch.
Creating the LicenseWatch Database Manually
Run th following script to create
the database:
CREATE DATABASE LicenseWatchPlatinum
ON
( NAME = LicenseWatchPlatinum,
FILENAME = 'D:\SQLDATA\LicenseWatchPlatinum.mdf'
)
LOG ON
( NAME = 'LicenseWatchPlatinum_Log',
FILENAME = 'D:\SQLDATA\LicenseWatchPlatinum.ldf'
)
COLLATE SQL_Latin1_General_CP1_CI_AS
GO
sp_dbcmptlevel LicenseWatchPlatinum, 80
Create a login:
CREATE LOGIN [LicenseWatch] WITH
PASSWORD='', DEFAULT_DATABASE=[LicenseWatchPlatinum], DEFAULT_LANGUAGE=[us_english],
CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
EXEC sys.sp_addsrvrolemember @loginame = N'LicenseWatch',
@rolename = N'dbcreator'
GO
The login must be mapped to user dbo and must be member
of db_owner.
Launching the LicenseWatch Client as a Service
The LicenseWatch Client may be launched as a service on
workstations instead of launching the client at user logon.
This can be done using AutoExNT.
Download ”Windows Server 2003 Ressource Kit Tools” from
here: http://www.microsoft.com/downloads/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en
Install the resource kit on some workstation. Copy the
files
C:\Program Files\Windows Resource Kits\Tools\Autoexnt.exe
C:\Program Files\Windows Resource Kits\Tools\Servmess.dll
C:\Program Files\Windows Resource Kits\Tools\Instexnt.exe
to ”%SystemRoot%\System32” on workstations.
Place the LicenseWatch client launch command in
%SystemRoot%\System32\AutoExNT.bat on workstations. The
launch command is of the form:
\\Server\LWClient\LWPreloader.exe Server/LWClientRequestHandler
To install the AutoExNT service on workstations run the
command: instexnt install
User Management When running the LicenseWatch
Client as a service, the user SYSTEM, will be registered
in LicenseWatch. If you wish to monitor Users on workstations,
you must launch the LicenseWatch Client whenever a user
logs on. You can do this by placing a batch file with the
client launch command in: C:\Documents and Settings\All
Users\Start Menu\Programs\Startup |