Are there any good(and free) tools for either analyzing static source or running programs to help detect memory leaks?
I\'ve built some windows services and want to make
I've used Microsoft's CLR Profiler with some success. Make sure to read its documentation to get the full benefits.
Don't forget that you can use the Windows Task Manager to detect at least the presence of memory leaks in your service.
Another way to use the Task Manager to track objects it to switch to the Processes tab, then go to View > Select Columns and check USER Objects and GDI Objects (GDI probably not useful to you since you're running a Service, but others may find it useful.)
I can recommend http://memprofiler.com/, but it is not free.
Redgate Ants Performance Profiler might help. It isn't free... but there is a 14 day trial which may be enough to get your services working.
Profile Sharp is a free (open-source) performance and memory profiler for .NET
Doesn't meet your requirements of being free, but there's one by Red Gate I think is worth suggesting - ANTS Memory Profiler
I've used a number of their tools before (some on trial, some we've bought) and found them to be very good.