I am new to your forums, and I'm not sure if this is the correct place to post bug reports, but I thought what I just found may be of interest to others and should be considered for future releases of xampp.
I installed the latest version (1.8.1) of xampp on my Windows PC and noticed there were some problems getting the Tomcat service to start. I did hit a few UAC and permissions problems, but even after I got the Tomcat application running, I still couldn't get the system service installed. To make matters worse there were no error messages or error codes displayed by the XAMPP control panel. I even tried running the catalina_service.bat script from the command line and there were no error messages, codes or logs generated.
Closer examination of the catalina_service.bat script revealed what I believe is a bug in your batch file. If you look closely at the :JRERUN section, after the necessary environment variables are configured, control drops immediately to the :ENDERROR section which exits the batch script with an error code of 1. If you compare the logic in this section with previous sections of the script (like :JDKRUN and such) after the environment has been configured control jumps to the :NEXT label, where the actual service is created.
Ad hoc tests revealed that inserting a simple "goto :NEXT" call just before the :ENDERROR label has the expected results of correctly creating the service. Although the fix is seemingly trivial it was difficult to track down given that there were no errors generated by the script, so this is likely causing users all sorts of problems. Hopefully this saves some people some headache.