I've written an application that uses keyboards hooks to monitor text input. When a certain string is encountered it logs information to a file. The hook code is contained in a dll, that I have not written and do not have the source code for (it provides an install and remove function).
The application runs fine as a standard exe. But when I turned it into a windows service (call StartServiceCtrlDispatcher etc) it doesn't log (the install call doesn't return an error).
Is there a special way to load dlls in a windows service?
What could be going wrong within the dll when its run within a windows service rather than a standard exe?
The dll does write debug info to stdout. Would this cause a problem?