MEWBIES@:  Facebook  Twitter  G+  YouTube  DeviantArt  Forum  Wall
 SHARE:
    ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
   ██                                                                       ██
  █▌               -   HOW TO INSTALL PHPSYSINFO FOR WINDOWS  -              █▌
 █▌                                                                           █▌
 █                                                                            ▐▌
 █ phpSysInfo is fabulous PHP script to easily check on your computer's       ▐▌
 █ system information. From the site "It will display items such as Uptime,   ▐▌
 █ CPU, Memory, SCSI, IDE, PCI, Ethernet, Floppy, and Video Information."     ▐▌
 █ phpSysInfo site is HERE, SourceForge page is HERE and GitHub page HERE.    ▐▌
 █ There is a demo HERE. The forum is HERE and HERE.                          ▐▌
 █                                                                            ▐▌
 █ PREREQUISITES:                                                             ▐▌
 █ ``````````````                                                             ▐▌
 █ Web Server                                                                 ▐▌
 █ PHP 5.2 +                                                                  ▐▌
 █                                                                            ▐▌
 █ INSTALL PHPSYSINFO:                                                        ▐▌
 █ ```````````````````                                                        ▐▌
 █ It's as simple as extract the files from phpsysinfo-XXX.tar.gz to a        ▐▌
 █ directory, for example, phpsysinfo, and placing that directory in your     ▐▌
 █ htdocs directory. For example: D:\xampp\htdocs\phpsysinfo                  ▐▌
 █ Now without doing any edits it works. View it by going to                  ▐▌
 █ http://yoursite.com/phpsysinfo/                                            ▐▌
 █ It will list SYSTEM VITAL, HARDWARE INFORMATION, MEMORY USAGE, MOUNTED     ▐▌
 █ FILESYSTEMS & NETWORK USAGE.                                               ▐▌
 █                                                                            ▐▌
 █ I'm going to list all plugins and tools that are included in phpsysinfo    ▐▌
 █ even if I didn't manage to get them working. The reason being is that      ▐▌
 █ either I don't have the hardware for it (such as battery) or they aren't   ▐▌
 █ supported in Windows but each one I'm very close to having them work, if   ▐▌
 █ only... listed for each.                                                   ▐▌
 █                                                                            ▐▌
 █ PHPSYSINFO INCLUDED PLUGINS - WORKING                                      ▐▌
 █   PS                                                                       ▐▌
 █   PSSTATUS                                                                 ▐▌
 █ PLUGIN NOTES                                                               ▐▌
 █ CHANGE HEADING TITLE                                                       ▐▌
 █ PLUGINS & TOOLS I DON'T HAVE THE HARDWARE FOR                              ▐▌
 █   APCUPSD                                                                  ▐▌
 █   BAT                                                                      ▐▌
 █   IPMI                                                                     ▐▌
 █   MDSTATUS                                                                 ▐▌
 █ NON WORKING WINDOW PLUGINS                                                 ▐▌
 █   SMART                                                                    ▐▌
 █   QUOTA                                                                    ▐▌
 █   OTHER TOOLS NOT SUPPORTED IN WINDOWS (hddtemp & lmsensors)               ▐▌
 █ TROUBLE SHOOTING                                                           ▐▌
 █ PASSWORD PROTECT PHPSYSINFO OR DISABLE IT                                  ▐▌
 █                                                                            ▐▌
 █ PHPSYSINFO INCLUDED PLUGINS - WORKING:                                     ▐▌
 █ ``````````````````````````````````````                                     ▐▌
 █ Included with v3.0.4 are a variety of plugins (phpsysinfo/plugins/) to     ▐▌
 █ enable more information. Each plugin has its own *.config.php file         ▐▌
 █ containing instructions how to enable it. A few of them work very easily   ▐▌
 █ in Windows and the others simply do not at this point with the code        ▐▌
 █ provided.  I'll list first the plugins that do work.                       ▐▌
 █                                                                            ▐▌
 █ PS:                                                                        ▐▌
 █ ```                                                                        ▐▌
 █ Process Statistic Data - to show your currently running services.          ▐▌
 █ Open 'config.php', found here - ...phpsysinfo\config.php in a              ▐▌
 █ text editor, such as WordPad.                                              ▐▌
 █ Change this line:                                                          ▐▌
 █ define('PSI_PLUGINS', false);                                              ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_PLUGINS', 'PS');                                               ▐▌
 █                                                                            ▐▌
 █ Reload your phpsysinfo page. It should now have a new section              ▐▌
 █ 'PROCESS STATUS' with a drop down tree 'System' showing your running       ▐▌
 █ services.                                                                  ▐▌
 █                                                                            ▐▌
 █ PSSTATUS:                                                                  ▐▌
 █ `````````                                                                  ▐▌
 █ Process Statistic Data for programs such as Explorer, httpd, mIRC, or      ▐▌
 █ whatever programs 'you' would like it to list.                             ▐▌
 █ Note that you can include/exclude other applications if you like.          ▐▌
 █                                                                            ▐▌
 █ Open 'config.php', found here - ...phpsysinfo\config.php                   ▐▌
 █ Change this line:                                                          ▐▌
 █ define('PSI_PLUGINS', false);                                              ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_PLUGINS', 'PSStatus');                                         ▐▌
 █ Or if you had other plugins on it, it would be for example:                ▐▌
 █ define('PSI_PLUGINS', 'PS,PSStatus');                                      ▐▌
 █                                                                            ▐▌
 █ Then open 'PSStatus.config.php', found here                                ▐▌
 █ ...\phpsysinfo\plugins\PSStatus\PSStatus.config.php                        ▐▌
 █ Change this line:                                                          ▐▌
 █ define('PSI_PLUGIN_PSSTATUS_PROCESSES', 'mysqld, sshd, explorer.exe');     ▐▌
 █ to list the programs you would like it to report on, for example:          ▐▌
 █ define('PSI_PLUGIN_PSSTATUS_PROCESSES', 'cmd.exe, mysqld.exe, httpd.exe, mirc.exe, ftprush.exe, explorer.exe, firefox.exe, notepad++.exe, putty.exe, SecureCRT.exe, SecureFX.exe, xampp-control.exe');
 █                                                                            ▐▌
 █ If you aren't sure of a programs name - either look in it's directory for  ▐▌
 █ the main .exe or open Windows Task Manger - Ctrl+Alt+Del keys/ Processes   ▐▌
 █ tab, to view currently running processes.                                  ▐▌
 █                                                                            ▐▌
 █ Reload your phpsysinfo page. It should now have a new section              ▐▌
 █ 'PROCESS STATUS' showing your running programs that you entered in above.  ▐▌
 █                                                                            ▐▌
 █ PLUGIN NOTES:                                                              ▐▌
 █ `````````````                                                              ▐▌
 █ 1) If a plugin isn't working correctly for you, you can trouble shoot the  ▐▌
 █ error by going to:                                                         ▐▌
 █ http://yoursite.com/phpsysinfo/xml.php?plugin=PLUGINS_NAME, for example:   ▐▌
 █ http://yoursite.com/phpsysinfo/xml.php?plugin=MDStatus                     ▐▌
 █ http://yoursite.com/phpsysinfo/xml.php?plugin=SMART                        ▐▌
 █                                                                            ▐▌
 █ 2) To have your phpsysinfo page display data from a file and not a command,▐▌
 █ you would change in the plugin's *.config.php file 'command' to 'data'.    ▐▌
 █ For example I did this for BAT & MDStatus since I do not have either, but  ▐▌
 █ wanted to do the steps for this tutorial. Note that the data shown on      ▐▌
 █ phpsysinfo page will be false and or not up to date with this method-since ▐▌
 █ it is only showing the data that you have given it in its *txt file.       ▐▌
 █ For my 'fake' data *.txt files I just used the same data as phpsysinfo,    ▐▌
 █ for example HERE, HERE and HERE.                                           ▐▌
 █                                                                            ▐▌
 █ NOTE REGARDING 2) - This is not possible for all the plugins with the      ▐▌
 █ present code in Windows. The reason I stress this, is this could be the key▐▌
 █ to getting the other plugins that do not work in Windows - to work easily. ▐▌
 █ X program could be scheduled to run at x intervals with the results output ▐▌
 █ to a data file, then phpsysinfo would read from it if it could only read   ▐▌
 █ from the data files in Windows.                                            ▐▌
 █                                                                            ▐▌
 █ CHANGE HEADING TITLE:                                                      ▐▌
 █ `````````````````````                                                      ▐▌
 █ If you don't want PS & PSStatus plugins to have the same section title     ▐▌
 █ 'PROCESS STATUS' you can change this, if you don't care skip this section. ▐▌
 █ For example to change PSStatus section heading for example to:             ▐▌
 █ PROCESS STATUS - PROGRAMS                                                  ▐▌
 █ Open this file ...\phpsysinfo\plugins\PSStatus\lang\en.xml                 ▐▌
 █ Change: <exp>Process Status</exp>                                          ▐▌
 █ To: <exp>Process Status - Programs</exp>                                   ▐▌
 █ PS plugin open this file ...\phpsysinfo\plugins\PS\lang\en.xml and do the  ▐▌
 █ same thing to your preference.                                             ▐▌
 █ Reload your phpsysinfo page to view the changes.                           ▐▌
 █                                                                            ▐▌
 █ PLUGINS & TOOLS I DON'T HAVE THE HARDWARE FOR:                             ▐▌
 █ ``````````````````````````````````````````````                             ▐▌
 █ Listed here are plugins & tools that I do not have the hardware to try if  ▐▌
 █ they work in Windows. Tho I did try with a data file (as mentioned above   ▐▌
 █ in PLUGIN NOTES), and these do work with a data file.                      ▐▌
 █ If you do have any of the plugins below working please inform us at        ▐▌
 █ mewbies forum so I may update them to working plugins.                     ▐▌
 █                                                                            ▐▌
 █ APCUPSD:                                                                   ▐▌ 
 █ ````````                                                                   ▐▌
 █ At the end of phpsysinfo's config.php file you'll see an entry for UPS. I  ▐▌
 █ don't have a UPS so my install instructions are just some steps taken and  ▐▌
 █ notes. Note that your UPS must have a 'data port' (not just a power cable  ▐▌ 
 █ as some models). phpsysinfo supports Nut, which is only for Linux, and     ▐▌
 █ Apcupsd, which is for Linux, Mac & Win.                                    ▐▌
 █                                                                            ▐▌
 █ Apcupsd site is HERE, they offer the program for Linux, Win & Mac. Download▐▌
 █ Win version HERE. The project page is HERE. There isn't a forum but he does▐▌
 █ have a mailing list HERE.                                                  ▐▌
 █ Apcupsd sure is sweet if you have a UPS that is supported; check HERE.     ▐▌
 █ HERE is his real-time apcupsd, click on 'Local Host' for some goodies :)   ▐▌
 █                                                                            ▐▌
 █ APCUPSD INSTALL:                                                           ▐▌
 █ 1. Install it as a service, either on the same drive your web server is on ▐▌
 █  or you'll receive the error 'Cannot open hosts file' if your web server   ▐▌
 █ isn't on your main C: drive.                                               ▐▌
 █ Or to install on to a different drive that your web server is on, for      ▐▌
 █ example C:, you'll need to (from manual.html) "relocate hosts.conf and     ▐▌
 █ apcupsd.css  from the apcupsd install location to \apcupsd\etc\apcupsd  on ▐▌
 █ the appropriate drive".                                                    ▐▌
 █                                                                            ▐▌
 █ 2. After installing copy the contents of \apcupsd\cgi installation your    ▐▌
 █ web server's \cgi-bin\ directory, e.g. D:\xampp\cgi-bin\                   ▐▌
 █                                                                            ▐▌
 █ 3. apcupsd will need to use a port, default is 3551 on your local box      ▐▌
 █ (127.0.0.1) to function. That port will need to be free or apcupsd will    ▐▌
 █ not function properly.                                                     ▐▌
 █                                                                            ▐▌
 █ If you aren't sure if a port is open or not, you can get a free little     ▐▌
 █ tool to check if open and forwarded correctly 'PFPortChecker' HERE.        ▐▌
 █                                                                            ▐▌
 █ Exit APCUPSD tray icon, so that it is not trying that port, when you want  ▐▌
 █ to test it. Type in the port you want to test, such as 3551, click Check   ▐▌
 █ Me. If it states 'Could not connect to the portforward.com servers.'       ▐▌
 █ continue to the next step to forward the port.                             ▐▌
 █ (You have to allow PFPortChecker out of your firewall for the test to      ▐▌
 █ work.)                                                                     ▐▌
 █                                                                            ▐▌
 █ 4. You might need to 'forward the port'. You would do that in your router. ▐▌
 █ Depending on your model is how you would do it. You can check HERE for     ▐▌
 █ directions for your model.                                                 ▐▌
 █                                                                            ▐▌
 █ For myself I have a D-Link and these are the steps that I take to forward  ▐▌
 █ a port:                                                                    ▐▌
 █ Open your router page- in your web browser enter: http://192.168.1.1       ▐▌
 █ Then enter the name and pass, I think the default for most is admin admin. ▐▌
 █                                                                            ▐▌
 █ Advanced tab/Virtual Server button/LAN IP drop down box, make sure that is ▐▌
 █ yours/click the radio button next to User/click Add button/Rule Name,      ▐▌
 █ enter anything you like such as apcupsd/Protocol TCP/Port Start, End, Map, ▐▌
 █ Map End- enter 3551 for all, or whatever port you choose/click Apply/click ▐▌
 █ Virtual Server button again/click User radio button again/you should now   ▐▌
 █ see your new entry, for example apcupsd. Select the new entry, click the   ▐▌
 █ 'Add>' button to send it to Applied Rules, then click Apply.               ▐▌
 █                                                                            ▐▌
 █ Now in PFPortChecker test that port again. It should state 'Your port is   ▐▌
 █ OPEN!'.                                                                    ▐▌
 █                                                                            ▐▌
 █ Once you have the port working that you want APCUPSD to use; close your    ▐▌
 █ router page and PFPortChecker, then start apcupsd Apctray (in your         ▐▌
 █ Programs/Apcupsd Menu).                                                    ▐▌
 █                                                                            ▐▌
 █ 5. Open apcupsd.conf, here \apcupsd\etc\apcupsd\apcupsd.conf, in a text    ▐▌
 █ editor and edit according to your UPS model.                               ▐▌
 █ For example these are the entries on my apcupsd.conf file that I have      ▐▌
 █ changed:                                                                   ▐▌
 █ UPSNAME UPSTEST                                                            ▐▌
 █ SCRIPTDIR D:\apcupsd\etc\apcupsd                                           ▐▌
 █ PWRFAILDIR D:\apcupsd\etc\apcupsd                                          ▐▌
 █ NOLOGINDIR D:\apcupsd\etc\apcupsd                                          ▐▌
 █ EVENTSFILE D:\apcupsd\etc\apcupsd\apcupsd.events                           ▐▌
 █ STATFILE D:\apcupsd\etc\apcupsd\apcupsd.status                             ▐▌
 █                                                                            ▐▌
 █ 6. Done. Go to your http://yoursite/cgi-bin/multimon.cgi                   ▐▌
 █ Click on the System name to go to http://yoursite/cgi-bin/upsstats.cgi     ▐▌
 █                                                                            ▐▌
 █ You can right click on APCUPSD tray icon (\apcupsd\bin\apctray.exe) for    ▐▌
 █ more information/settings.                                                 ▐▌
 █                                                                            ▐▌
 █ If yours is still not working, you probably need to edit again your        ▐▌
 █ \apcupsd\etc\apcupsd\apcupsd.conf                                          ▐▌
 █                                                                            ▐▌
 █ Once you have that working, move on to enabling this in phpsysinfo -       ▐▌
 █                                                                            ▐▌
 █ INTEGRATE APCUPSD ONTO PHPSYSINFO PAGE:                                    ▐▌
 █ 1. Then add to your Environment Variables, under User apcupsd, for         ▐▌
 █ example: ;D:\apcupsd\bin                                                   ▐▌
 █ If you don't know how to add to your Environment Variables read my         ▐▌
 █ tutorial HERE.                                                             ▐▌
 █ Test the command is working in a fresh cmd prompt window by typing in:     ▐▌
 █ apcaccess                                                                  ▐▌
 █ Since I do not have a UPS, it will only state:                             ▐▌
 █ Error contacting apcupsd @ localhost:3551: Unknown error                   ▐▌
 █                                                                            ▐▌
 █ 2. Open 'config.php' ...\phpsysinfo\config.php                             ▐▌
 █ Change this:                                                               ▐▌
 █ define('PSI_ADD_PATHS', false);                                            ▐▌
 █ To your install path\bin, for example:                                     ▐▌
 █ define('PSI_ADD_PATHS', 'D:\apcupsd\bin'');                                ▐▌
 █ Or if you have smart on there it would be:                                 ▐▌
 █ define('PSI_ADD_PATHS', 'C:\smartmontools\bin,D:\apcupsd\bin');            ▐▌
 █                                                                            ▐▌
 █ And at the bottom of the file, change:                                     ▐▌
 █ define('PSI_UPS_PROGRAM', false);                                          ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_UPS_PROGRAM', 'Apcupsd');                                      ▐▌
 █                                                                            ▐▌
 █ 3. Done. Reload your phpsysinfo page to view the changes.                  ▐▌
 █                                                                            ▐▌
 █ BAT:                                                                       ▐▌
 █ ````                                                                       ▐▌
 █ Since I'm not doing this on a laptop I can't test if a battery program on  ▐▌
 █ Windows would work for phpsysinfo page. I did tho try with a fake data     ▐▌
 █ file from HERE, which does work, click on 'plugin_bat' then download       ▐▌
 █ 'battery_info1.txt' & 'battery_state1.txt'.                                ▐▌
 █ This is how if you want to use the fake data:                              ▐▌
 █ Download those 2 text files, place them here ...\phpsysinfo\data\          ▐▌
 █ Rename them to: 'bat_info.txt' & 'bat_state.txt'                           ▐▌
 █                                                                            ▐▌
 █ Open this file ...\plugins\BAT\BAT.config.php                              ▐▌
 █ Change this line:                                                          ▐▌
 █ define('PSI_PLUGIN_BAT_ACCESS', 'command');                                ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_PLUGIN_BAT_ACCESS', 'data');                                   ▐▌
 █                                                                            ▐▌
 █ Open 'config.php' ...\phpsysinfo\config.php                                ▐▌
 █ Change this line:                                                          ▐▌
 █ define('PSI_PLUGINS', false);                                              ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_PLUGINS', 'BAT');                                              ▐▌
 █ Or if you had other plugins on it, it would be for example:                ▐▌
 █ define('PSI_PLUGINS', 'PS,PSStatus,BAT');                                  ▐▌
 █                                                                            ▐▌
 █ Reload your phpsysinfo page. It should now have a new section              ▐▌
 █ 'BATTERY STATUS' showing the fake data from the txt files.                 ▐▌
 █                                                                            ▐▌
 █ Since this plugin will read from a data file, I don't see why one could    ▐▌
 █ not get to work with a program that could output the results to a text     ▐▌
 █ file.                                                                      ▐▌
 █                                                                            ▐▌
 █ IPMI (enabled devices) Statistic Data:                                     ▐▌
 █ ``````````````````````````````````````                                     ▐▌
 █ Intelligent Platform Management Interface                                  ▐▌
 █ I won't even list the things I tried to get this functioning on my XP -    ▐▌
 █ what a failed mess. Maybe some day when I have the mood again I'll start   ▐▌
 █ over. Some links if you want to give it a go, HERE, HERE, and HERE. And    ▐▌
 █ the IBM driver HERE and HERE. If you do have this functioning - please     ▐▌
 █ post at mewbies forum the details :).                                      ▐▌
 █                                                                            ▐▌
 █ So to play, I use the fake data again, which can be found HERE (Download   ▐▌
 █ GNU tarball). Place it here ...\phpsysinfo\data\ipmi.txt {renaming it to   ▐▌
 █ ipmi.txt                                                                   ▐▌
 █ Open ...\phpsysinfo\plugins\ipmi\ipmi.config.php                           ▐▌
 █ Change the command line to:                                                ▐▌
 █ define('PSI_PLUGIN_IPMI_ACCESS', 'data');                                  ▐▌
 █ Open 'config.php' ...\phpsysinfo\config.php                                ▐▌
 █ Change this line:                                                          ▐▌
 █ define('PSI_PLUGINS', false);                                              ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_PLUGINS', 'ipmi');                                             ▐▌
 █ Or if you had other plugins on it, it would be for example:                ▐▌
 █ define('PSI_PLUGINS', 'PS,PSStatus,BAT,ipmi');                             ▐▌
 █                                                                            ▐▌
 █ Reload your phpsysinfo page. It should now have a new section 'IPMI Status'▐▌
 █ showing the fake data from the txt files. Nice if I can get a working IPMI ▐▌
 █ tool :) . Again this should be do-able if it reads from a text file, and   ▐▌
 █ the program above can output to a text file.                               ▐▌
 █                                                                            ▐▌
 █ MDSTATUS:                                                                  ▐▌
 █ `````````                                                                  ▐▌
 █ RAID Statistic Data. I don't have RAID so couldn't test how it works in    ▐▌
 █ Windows. You can use a fake data file from HERE.                           ▐▌
 █ Put it here ...\phpsysinfo\data\mdstat.txt {renaming it to mdstat.txt      ▐▌
 █ Open ...\phpsysinfo\plugins\MDStatus\MDStatus.config.php                   ▐▌
 █ Change:                                                                    ▐▌
 █ define('PSI_PLUGIN_MDSTAT_ACCESS', 'file');                                ▐▌
 █ To: define('PSI_PLUGIN_MDSTAT_ACCESS', 'data');                            ▐▌
 █                                                                            ▐▌
 █ Open 'config.php' ...\phpsysinfo\config.php                                ▐▌
 █ Add on your plugin MDStatus, for example:                                  ▐▌
 █ define('PSI_PLUGINS', 'PS,PSStatus,BAT,ipmi,MDStatus');                    ▐▌
 █ Reload your phpsysinfo page. It should now have a new section              ▐▌
 █ 'RAID Status' showing the fake data from the txt file.                     ▐▌
 █ Again this should be do-able if it reads from a text file and you have a   ▐▌
 █ program to output the text.                                                ▐▌
 █                                                                            ▐▌
 █ NON WORKING WINDOW PLUGINS:                                                ▐▌
 █ ```````````````````````````                                                ▐▌
 █ SMART:                                                                     ▐▌
 █ ``````                                                                     ▐▌
 █ S.M.A.R.T (enabled devices) Statistic Data                                 ▐▌
 █                                                                            ▐▌
 █ I have the smart program working, but I can not get phpsysinfo to read     ▐▌
 █ from the program or a fake data file from HERE, tho it does on Linux.      ▐▌
 █ This is what I have done if you want to give it a try:                     ▐▌
 █                                                                            ▐▌
 █ Download the Windows version of 'S.M.A.R.T. Monitoring Tools' HERE.        ▐▌
 █ Important read BEFORE installing:                                          ▐▌
 █ 1. When installing check the box 'Add install dir to PATH'. (This is so    ▐▌
 █ that it sets up your Environmental Variable for the command).              ▐▌
 █ 2. Preference only - to right click on drive and run smartmontools check   ▐▌
 █ 'Add smartctl to drive menu'.                                              ▐▌
 █ 3. Install the program in a path that doesn't have a space in the path     ▐▌
 █ name, for example: C:\smartmontools\                                       ▐▌
 █                                                                            ▐▌
 █ After install is finished test that it was setup in your Environment       ▐▌
 █ Variable by opening cmd prompt and typing in:                              ▐▌
 █ smartctl -h                                                                ▐▌
 █ Output should be similar to:                                               ▐▌
 █ smartctl 5.39.1 2010-01-28 r3054 [i686-pc-mingw32-xp-sp3]                  ▐▌
 █ (sf-win32-5.39.1-1)                                                        ▐▌
 █ [snip]                                                                     ▐▌
 █ If your output is:                                                         ▐▌
 █ 'smartctl' is not recognized as an internal or external command, operable  ▐▌
 █ program or batch file.                                                     ▐▌
 █ You'll need to set up the Environment Variable for it. To do that view my  ▐▌
 █ tutorial HERE. Once you have that working continue here.                   ▐▌
 █                                                                            ▐▌
 █ Open 'config.php' ...\phpsysinfo\config.php                                ▐▌
 █ Change this:                                                               ▐▌
 █ define('PSI_ADD_PATHS', false);                                            ▐▌
 █ To your install path\bin, for example:                                     ▐▌
 █ define('PSI_ADD_PATHS', 'C:\smartmontools\bin');                           ▐▌
 █                                                                            ▐▌
 █ Add on your plugin SMART, for example:                                     ▐▌
 █ define('PSI_PLUGINS', 'PS,PSStatus,BAT,ipmi,MDStatus,SMART');              ▐▌
 █                                                                            ▐▌
 █ Be your your drive is SMART enabled and your 'device type' by entering     ▐▌
 █ this cmd in a cmd prompt:                                                  ▐▌
 █ smartctl --all --device C:                                                 ▐▌
 █ Example of area to look for:                                               ▐▌
 █ Device is:        In smartctl database [for details use: -P show]          ▐▌
 █ ATA Version is:   8                                                        ▐▌
 █ ATA Standard is:  Exact ATA specification draft version not indicated      ▐▌
 █ [snip]                                                                     ▐▌
 █ SMART support is: Available - device has SMART capability.                 ▐▌
 █                   Enabled status cached by OS, trying SMART RETURN STATUS  ▐▌
 █ cmd.                                                                       ▐▌
 █ SMART support is: Enabled                                                  ▐▌
 █ [snip]                                                                     ▐▌
 █ So from my output I can see it is SMART enabled and the device type is     ▐▌
 █ ATA.                                                                       ▐▌
 █                                                                            ▐▌
 █ Open 'SMART.config.php' here ...\phpsysinfo\plugins\SMART\SMART.config.php ▐▌
 █ Change these lines:                                                        ▐▌
 █ define('PSI_PLUGIN_SMART_ACCESS', 'command');                              ▐▌
 █ define('PSI_PLUGIN_SMART_DEVICES', '/dev/sda, /dev/sdb');                  ▐▌
 █ define('PSI_PLUGIN_SMART_DEVICE', false);                                  ▐▌
 █ define('PSI_PLUGIN_SMART_IDS',                                             ▐▌
 █ '005-RAW_VALUE,194-RAW_VALUE,4-RAW_VALUE,009-RAW_VALUE,012-RAW_VALUE,193-RAW_VALUE,001-RAW_VALUE,007-RAW_VALUE,200-RAW_VALUE');
 █                                                                            ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_PLUGIN_SMART_ACCESS', 'command');                              ▐▌
 █ define('PSI_PLUGIN_SMART_DEVICES', 'C:');                                  ▐▌
 █ define('PSI_PLUGIN_SMART_DEVICE', 'ata');                                  ▐▌
 █ define('PSI_PLUGIN_SMART_IDS', '005-VALUE,194-VALUE,192-VALUE,193-VALUE'); ▐▌
 █                                                                            ▐▌
 █ The last line you don't need to change, these are the values it will read  ▐▌
 █ from smartctl output under the heading 'Vendor Specific SMART Attributes   ▐▌
 █ with Thresholds'                                                           ▐▌
 █ View phpsysinfo demo page for a visual understanding under S.M.A.R.T HERE. ▐▌
 █                                                                            ▐▌
 █ Or to read from a data file, the first line should be:                     ▐▌
 █ define('PSI_PLUGIN_SMART_ACCESS', 'data');                                 ▐▌
 █ Place the fake data files here ...\phpsysinfo\data\ renaming them to       ▐▌
 █ SMART???.txt {I've tried at least 30 different names; none work.           ▐▌
 █                                                                            ▐▌
 █ Reload your phpsysinfo page. It should now have a new section 'S.M.A.R.T   ▐▌
 █ Informations'.                                                             ▐▌
 █ Mine only states (using command or data): No matching records found (which ▐▌
 █ is stated from ...\phpsysinfo\js\jQuery\jquery.dataTables.js line 845:     ▐▌
 █ "sZeroRecords": "No matching records found", ).                            ▐▌
 █ I can not solve why it won't read from the fake data file either. The      ▐▌
 █ plugin information page doesn't contain any error either;                  ▐▌
 █ http://yoursite.com/phpsysinfo/xml.php?plugin=SMART                        ▐▌
 █ The output style smartctl gives is the same as for Linux-same ID entries   ▐▌
 █ and 2 extra: 192, 193                                                      ▐▌
 █                                                                            ▐▌
 █ Note that the file 'class.SMART.inc.php' line 75 states:                   ▐▌
 █ if ((CommonFunctions::rfts(APP_ROOT."/data/SMART{$dn}.txt",                ▐▌
 █ $buffer))&&(!empty($buffer))){                                             ▐▌
 █                                                                            ▐▌
 █ I suspect the problem lies either:                                         ▐▌
 █ class.SMART.inc.php as smartctl is working in both command and output to   ▐▌
 █ file (see below) in the same format as it does for linux.                  ▐▌
 █ Or                                                                         ▐▌
 █ -It must not be able to find the .txt file to parse it to the phpsysinfo   ▐▌
 █ page as even the headings aren't there -                                   ▐▌
 █ ...\phpsysinfo\plugins\SMART\lang\en.xml                                   ▐▌
 █ no idea, too many hours of trying :/ .                                     ▐▌
 █                                                                            ▐▌
 █ SIDE NOTES:                                                                ▐▌
 █ -If you have an external USB hard drive smartctl might not be able to read ▐▌
 █ it.                                                                        ▐▌
 █ -To enable smart use the -s on variable, for example:                      ▐▌
 █ smartctl --all --device ata D: -s on                                       ▐▌
 █ -The reason why PS and PSStatus works is - 'on WINNT information is        ▐▌
 █ retrieved every time through WMI'.                                         ▐▌
 █                                                                            ▐▌
 █ SMARTMONTOOLS OUTPUT TO PHPSYSINFO:                                        ▐▌
 █ To have your smartctl output to a text file each time phpsysinfo page      ▐▌
 █ refreshes this is how:                                                     ▐▌
 █ 1) Open a cmd prompt window. Adjust the size so that the window is set to  ▐▌
 █ at least 97 characters wide (or it will break the lines).                  ▐▌
 █ 2) Issue the cmd, changing the path your own path:                         ▐▌
 █ smartctl --all > D:\xampp\htdocs\phpsysinfo\data\SMART0.txt                ▐▌
 █ Now view your SMART0.txt in that path.                                     ▐▌
 █ 3) Once you have command working, we need to tell phpsysinfo to issue that ▐▌
 █ same command:                                                              ▐▌
 █ Open this file ...\phpsysinfo\plugins\SMART\class.SMART.inc.php            ▐▌
 █ Line 60 has this:                                                          ▐▌
 █ if (CommonFunctions::executeProgram('smartctl', '--all'                    ▐▌
 █                                                                            ▐▌
 █ Change to (change path to your own web server path):                       ▐▌
 █ if (CommonFunctions::executeProgram('smartctl', '--all > D:\xampp\htdocs\phpsysinfo\data\SMART0.txt'
 █                                                                            ▐▌
 █ Now every time phpsysinfo page refreshes, it overwrites the existing file  ▐▌
 █ with the new information.                                                  ▐▌
 █                                                                            ▐▌
 █ QUOTA:                                                                     ▐▌
 █ ``````                                                                     ▐▌
 █ The fake data text file from HERE will work.                               ▐▌
 █ The problem lies in finding a tool that reports in a similar fashion for   ▐▌
 █ phpsysinfo to read and parse, or to change the manner                      ▐▌
 █ (class.Quotas.inc.php &en.xml) in which it reads the file to parse it, or  ▐▌
 █ best for phpsysinfo to have a plug-in for a Windows tool :D.               ▐▌
 █ Using the built in Windows Quota Report output would be similar to:        ▐▌
 █ Quota Entries for Local Disk (C:)                                          ▐▌
 █ Status  Name  Logon Name  Amount Used (MB) Quota Limit (MB)   Warning Level (MB)	Percent Used
 █ OK      BUILTIN\Administrators  39431.42   No Limit No Limit  N/A          ▐▌
 █ [snip]                                                                     ▐▌
 █                                                                            ▐▌
 █ Enable Disk Quota:                                                         ▐▌
 █ Right click on the hard drive you want quota on, select Properties/Quota   ▐▌
 █ Tab/ check 'Enable quota management' /click Apply, a message box will      ▐▌
 █ state 'You should enable the quota system only if you intend to use quotas ▐▌
 █ on this disk volume. When you enable quota system, the volume will be      ▐▌
 █ rescanned to update disk usage statistics. This might take several         ▐▌
 █ minutes'. Click OK.                                                        ▐▌
 █ Wait for it to finish- the traffic light icon will be green when it is     ▐▌
 █ done.                                                                      ▐▌
 █                                                                            ▐▌
 █ Create Disk Quota Reports - from HERE.                                     ▐▌
 █ 1. Right-click on the disk for which you want to create a report, click    ▐▌
 █ Properties, and then click the Quota tab.                                  ▐▌
 █ 2. Click 'Quota Entries' button.                                           ▐▌
 █ 3. While you are viewing the quota entries, open a document such as        ▐▌
 █ Microsoft Excel, select all the quota entries and drag and drop them into  ▐▌
 █ Excel.                                                                     ▐▌
 █                                                                            ▐▌
 █ Use Windows fsutil in command line, for example open cmd prompt and enter: ▐▌
 █ fsutil --help                                                              ▐▌
 █ fsutil quota query C:                                                      ▐▌
 █                                                                            ▐▌
 █ How to set quotas view HERE & HERE.                                        ▐▌
 █                                                                            ▐▌
 █ Some disk quota scripts HERE, HERE & HERE that you could customize to have ▐▌
 █ a working report.                                                          ▐▌
 █                                                                            ▐▌
 █ Some programs with command line capabilities that look like they have      ▐▌
 █ potential to achieve the desired results:                                  ▐▌
 █ Sysinternals DU HERE. I'm yet to find other freeware soft to do this.      ▐▌
 █                                                                            ▐▌
 █ Demoware my fav so far would be Jam TreeSize Pro HERE, 30 day trial, &     ▐▌
 █ WinQuota HERE, but both are expensive for this minor task :/ so the search ▐▌
 █ continues.                                                                 ▐▌
 █                                                                            ▐▌
 █ OTHER TOOLS NOT SUPPORTED IN WINDOWS - hddtemp & lmsensors:                ▐▌
 █ ``````````````````````````````````````````````````````````                 ▐▌
 █ In config.php you'll see two more tools- hddtemp to read your hard drive   ▐▌
 █ temperatures, site is HERE, no Win version, and motherboard monitoring     ▐▌
 █ with a variety of programs to select from, no Win versions, such as        ▐▌
 █ lmsensors.                                                                 ▐▌
 █ You can use a fake data file from HERE for lmsensors.                      ▐▌
 █ Place in your data directory renaming it to lmsensors.txt.                 ▐▌
 █ Change these two lines:                                                    ▐▌
 █ define('PSI_SENSOR_PROGRAM', false);                                       ▐▌
 █ define('PSI_SENSOR_ACCESS', 'command');                                    ▐▌
 █ To:                                                                        ▐▌
 █ define('PSI_SENSOR_PROGRAM', 'LMSensors');                                 ▐▌
 █ define('PSI_SENSOR_ACCESS', 'file');                                       ▐▌
 █                                                                            ▐▌
 █ Done. Reload your phpsysinfo page to view the changes, it should now have  ▐▌
 █ 3 new tables; VOLTAGE, TEMPERATURE, & FANS. So with the right program this ▐▌
 █ again should be possible. These might be worth while looking into, HERE,   ▐▌
 █ HERE, HERE, and HERE.                                                      ▐▌
 █                                                                            ▐▌
 █ TROUBLE SHOOTING:                                                          ▐▌
 █ 1. If you receive either one of these errors and your web page will not    ▐▌
 █ load:                                                                      ▐▌
 █ Strict Standards: Implicit cloning object of class 'Error' because of      ▐▌
 █ 'zend.ze1_compatibility_mode' or 'Fatal error: Can't be cloned in          ▐▌
 █  /phpsysinfo/includes/class.Error.inc.php  on line 75'                     ▐▌
 █                                                                            ▐▌
 █ Fix this by editing your \xampp\php\php.ini:                               ▐▌
 █ Search for: zend.ze1_compatibility_mode                                    ▐▌
 █ It will have this:                                                         ▐▌
 █ zend.ze1_compatibility_mode = On                                           ▐▌
 █ Change it to:                                                              ▐▌
 █ zend.ze1_compatibility_mode = Off                                          ▐▌
 █                                                                            ▐▌
 █ Note: zend.ze1_compatibility_mode: Removed in PHP 5.3.+ Read HERE.         ▐▌
 █                                                                            ▐▌
 █ Then restart your web server. Test your page again.                        ▐▌
 █                                                                            ▐▌
 █ 2. If you have an exclamation point icon top left- this is the debugging   ▐▌
 █ information. Click on it for more information to sort out the problems.    ▐▌
 █                                                                            ▐▌
 █ 3. If your page shows:                                                     ▐▌
 █ Bad Request                                                                ▐▌
 █ Error 400:                                                                 ▐▌
 █ Your browser sent a request that this server could not understand.         ▐▌
 █ Size of a request header field exceeds server limit.                       ▐▌
 █ Cookie: HardwareTree=24|22|20|7|<snip blah blah>                           ▐▌
 █                                                                            ▐▌
 █ This is because the cookie your browser is storing is either too large or  ▐▌
 █ it has been corrupted. Very easy to fix; remove the cookie for that site:  ▐▌
 █ Firefox: Tools/Options/Privacy/Show Cookies/Browse in the list to the      ▐▌
 █ site that you want to clear the cookie for, select it then click Remove    ▐▌
 █ Cookie, click Close/OK. Now try your page again.                           ▐▌
 █ IE: Tools/Internet Options/General tab, under 'Browsing history' click the ▐▌
 █ Settings button, click OK if prompted about size, Temporary Internet Files ▐▌
 █ window click View Files/ explorer window will open, browse to the cookie   ▐▌
 █ you want to delete, for example cookie:user@yoursite.com, then delete it.  ▐▌
 █ Opera: Tools/Preferences/Advanced tab/select Cookies on left pane/click    ▐▌
 █ Manage Cookies button/browse the cookie you want to delete, click          ▐▌
 █ Delete/Close/OK.                                                           ▐▌
 █ Safari: Edit/Preferences/Security/click Show Cookies button/browse to the  ▐▌
 █ cookie you want to delete, select it, click Remove/Done/Red X to close it. ▐▌
 █                                                                            ▐▌
 █ 4. Win2K users -If you receive an error similar to:                        ▐▌
 █ Warning: (null)(): Invoke() failed: Exception occurred. Source:            ▐▌
 █ SWbemLocator Description: Access denied in ...\phpsysinfo\includes\os\     ▐▌
 █ class.WINNT.inc.php on line 36                                             ▐▌
 █ Fatal error: Call to a member function on a non-object in ....\phpsysinfo\ ▐▌
 █ includes\os\class.WINNT.inc.php on line 44                                 ▐▌
 █ Read HERE- "you need to set up a folder based authentication, so that when ▐▌ 
 █ you open the site you are prompted to enter a user and pass. this is       ▐▌
 █ because only special users have the rights to read all required            ▐▌
 █ informations, like the administrator user"                                 ▐▌
 █                                                                            ▐▌
 █ PASSWORD PROTECT PHPSYSINFO OR DISABLE IT:                                 ▐▌
 █ ``````````````````````````````````````````                                 ▐▌
 █ My preference only since I do not like the idea of phpsysinfo being        ▐▌
 █ available 'at all' when I don't need it, even tho my site is password      ▐▌
 █ protected, is to rename 'config.php' to  disabled.config so the page won't ▐▌
 █ load.                                                                      ▐▌
 █                                                                            ▐▌
 █ Or you could password protect it. See my Apache tutorial HERE, under the   ▐▌
 █ section 'USER AUTHENTICATION | PASSWORD PROTECT YOUR SITE'                 ▐▌
 █                                                                            ▐▌
 █ //----------------------------------------------------------------------   ▐▌
 █                                                                            ▐▌
 █ If you find mistakes, have suggestions, and or questions please post at    ▐▌
 █ mewbies forum HERE - thank you.                                            ▐▌
 █                                                                            ▐▌
 █ Last update on 12 Jul '10                                                  ▐▌
 █                                                                            ▐▌
 █▌                                                                           █▌
  █▌                          -   mewbies.com   -                            █▌
   █▌                                                                       █▌
    ██▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██