Hi, We are using Intel Inspector XE 2013. We are checking memory leaks in our dll's which runs using httpd.exe. We want to check memory leaks in our modules. I am new to Intel Inspector , please help me how to check memory problems in process running as windows service. How to check memory leaks in already running process?
Frankly, it is impossible that Inspector can work with a running process, e.g. Windows service, unless you use Inspector to launch httpd.exe
You can check your dll's memory leak only if you use inspector to launch httpd.exe, for example:
inspxe-cl -collect mi2 -module-filter-mode=include -module-filter=your-dll -- httpd.exe
Peter is correct. Inspector has no way of attaching to a running process.
If you do want to test a service or a daemon, or some other process without a natural end for memory leaks, you will also need to use the on-demand leak detection and not just the standard memory leak analysis as well. The normal leak analysis only triggers at application end. You can do this from the command line or in the GUI. (If you had access to the application code you could do it using an API as well).
For more information on on-demand leak detection, see https://software.intel.com/en-us/articles/finding-memory-leaks-and-memory-growth-with-intel-inspecto...
I'm using an evaluation version of Inspector XE, and had no problem making the service executable (by using /regserver) and then having Inspector XE start it. Of course, it is no longer in the context of a service, but it may still be useful for analysis.
Just clarify that you need to use Inspector XE to launch service executable ("/regserver" as argument), when Inspector stops working...service application will shutdown.
Attaching to a running service application is not supported.
You can also refer to the following article for some additional guidance on how to analyze Windows services: http://software.intel.com/en-us/articles/using-intel-inspector-xe-2011-on-a-microsoft-windows-servic...