Documentation


The following needs to be done BEFORE WINventory is used.

CLIENTS
-------
Should have the latest versions of WMI and Wscript installed.

Windows Script 5.6 for Windows 98, Windows Millennium Edition, and Windows NT 4.0
http://www.microsoft.com/downloads/details.aspx?FamilyId=0A8A18F6-249C-4A72-BFCF-FC6AF26DC390&displaylang=en

Windows Script 5.6 for Windows 2000 and XP
http://www.microsoft.com/downloads/details.aspx?FamilyId=C717D943-7E4B-4622-86EB-95A22B832CAA&displaylang=en

Windows Management Instrumentation (WMI) CORE 1.5 (Windows 95/98/NT 4.0)
http://www.microsoft.com/downloads/details.aspx?familyid=afe41f46-e213-4cbf-9c5b-fbf236e0e875&languageid=f49e8428-7071-4979-8a67-3cffcb0c2524&displaylang=en

If online input into a database is desired, a MySQL connector ODBC should be installed.
I have used MyODBC v2.5 to good effect.

MySQL Connector/ODBC 2.50 Downloads
http://dev.mysql.com/downloads/connector/odbc/2.50.html

SERVER
------
Should have MySQL installed, with a blank database setup called WINventory.
Into this database the file Winventory.sql should be used to create the database structure.
I currently am using 4.0.12

MySQL 4.0 Downloads
http://dev.mysql.com/downloads/mysql/4.0.html

A web server should be installed.
I use IIS 5.0.
The files in this archive should be extracted into a directory for use by the web server.

PHP should be installed & configured for use by the web server.
My current PHP install is 4.3.0.
http://www.pnp.net

OPTIONAL COMPONENTS
-------------------
MySQL Front
I use this for MySQL administration. Currently it is how I input the text generated from 'offline' audits.
http://www.mysqlfront.de/





When inventorying clients, the script audit.vbs should be used. 
If inventorying in an 'online' environment, the line online = "y" should be set.
If inventorying in an 'offline' environment, the line should be online = "n"
The script can be run at the command prompt locally by typing -
cscript audit.vbs (for online) or
cscript audit.vbs > pcname.txt //NoLogo (for offline).
The result is a text file, which can be copied & pasted into the page to 'Add a PC'.




HTTP authentication in IIS
Taken from the online PHP.net manual http://www.php.net/manual/en/features.http-auth.php

I searched mightily and didn't find this information anywhere else, so here goes. When using HTTP auth with the php CGI, you need to do the following things:

1. In your php.ini file, set "cgi.rfc2616_headers = 0"

2. In Web Site Properties -> File/Directory Security -> Anonymous Access dialog box, check the "Anonymous access" checkbox and uncheck any other checkboxes (i.e. uncheck "Basic authentication," "Integrated Windows authentication," and "Digest" if it's enabled.) Click OK.

3. In "Custom Errors", select the range of "401;1" through "401;5" and click the "Set to Default" button.

It's this last step that is crucial, yet not documented anywhere. If you don't, instead of the headers asking for credentials, IIS will return its own fancy but useless 'you are not authenticated' page. But if you do, then the browser will properly ask for credentials, and supply them in the $_SERVER['PHP_AUTH_*'] elements.

Create a scheduled task

Ever wanted to setup a scheduled task in Windows that runs on a different schedule to the basic options listed in the Add Scheduled Task Wizard but didn't think it was possible? Don't fall into the same trap I did by thinking that the wizard options were the only options available. The following steps can be used to create a task that runs hourly 24x7:

1. Create a new task using the wizard. Select Daily when prompted for a schedule
2. Open the Properties of a task once it has been created
3. Under the Schedule tab click Advanced
4. To repeat the task hourly, click the Repeat Task option and select to repeat every 1 hour
5. The final (and important) step is to select a Duration of 23 hours and 59 minutes. This will ensure the task is repeated hourly for an entire 24 hour period.