I am writing a .NET windows service in C#. This is being run under the local system account. However, this service needs to call an old COM component. This old COM component contains lots of file access using mapped drive letters to network drives (it's not very nice but I can't rewrite it). I assume that this COM component is also being loaded under the local system account and therefore these drive mappings will fail because they do not exist.

What are the ways round this? Can I load the COM component under a user account which does have these mappings? If so how? Or is there a better way

Will running the whole windows service under a user account get round the problem?