The Win32 API call RegisterTypeLib() is used to create the registry keys necessary to register a type library.
Unfortunatly, on Windows XP, it tries to write those regis
Take a look at this blog entry I wrote. It will registry ATL COM objects into HKCU instead of HKCR using RegOverridePredefKey. You can use the same technique to call RegisterTypeLib and have it properly register under HKCU
Register ATL as Normal User
You can use the RegOverridePredefKey() API to map the HKEY_CLASSES_ROOT regtree to HKEY_CURRENT_USER\Software\Classes: