PROBLEM:
You install XAMPP 1.6.0a Win32 with Apache as a service.
You load XAMPP control panel, it shows Apache is not installed as a service!
The service check box next to apache will not work as expected.
NOTE: I am not sure if everyone is having this problem, but it happened for me on three different machines.
Also if you have an apache2 service from a previous installation this might trick you into thinking the control panel is working properly.
run->services.msc and you might see an apache2 and an apache2.2
CAUSE:
When you install Apache 2.2.4 as a service its service name is Apache2.2, but XAMPP Control Pannel is trying to detect Apache2.
apache_installservice.bat
apache_uninstallservice.bat
also make the same mistake, attempting to net start/stop a non-existent apache2 service.
WORKAROUND1: Make no attempt to install Apache as a service.
WORKAROUND2: Change the apache service name to apache2 using RegEdit.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
rename "Apache2.2" to "Apache2" then open it and change "DisplayName" to "Apache2"
REBOOT
XAMPP control panel now recognizes the Apache service.
REMOVING THE SERVICE:
run->net stop apache 2 (first if service is running)
run-> sc delete apache2 (remove the service)
REAL SOLUTION: Change all references to the apache service in XAMPP 1.6.0a from Apache2 to Apache2.2.