I removed my generic response. In the future, please provide us with your thoughts on how you're going to go about implementing your project so that we can help you better.
Have you looked into using the following:
By the looks of it (I just did a quick search) it seems that you aren't really going to be able to use any .NET features to accomplish what you want.
I could be wrong, but it looks like you're going to have to use the Win32 API to monitor print jobs. That being said, I just came across an article discussing a managed version of the
Win32 Printer API in the MSDN Library.
But I think that you're going to probably find that the
Win32 Printer Class is going to be the most helpful....please note that the Win32 API is not managed code (this means that it is not .NET code).
Good luck!
-Frinny