OLE Automation Installation Troubles..

I’m trying to install Attain 3.60 onto a w2k terminal server. The box is fresh, nothing else on it. I’ve followed the TS installer instructions and run the batch files, however just after the file copying at the makecompnotescriptable section an error occurred: The compnoteHTML.dll are not registered. Please register the dll before making it safe for scripting I manually found & registered the dll using regsvr32, which appeared to run ok. Then I ran the makecompnotescriptable.exe again and it went through OK. However when the client through a session or at the console is loaded, I log in a user and get the error: This message is for C/AL programmers Could not create an instance of the OLE control or Automation server identified by GUID={74C8D7F6-E7C2-11D4-88F2-0050DA40EEB5} 1.0:{74C8D7F6-E7C2-11D4-88F2-0050DA40EEB5}:Unknown Automation Server.Unknown Clss. Check that the OLE control or Automation server is correctly installed and regsitered. Anyone any ideas??

Hmm – on my machine, that GUID refers to the TypeLib for CompNotes.exe, located in the Program Files…\Client\ folder. Try running regsvr32 on CompNotes.exe – that may get you past this problem…

Thanks for the reply Fritz, I thought you could only register .ddl or .ocx files, not .exe? Anyway - I tried manually launching compnotes.exe… it seemed to do nothing (visually). But - this is the important bit, it now works after logging in! Thanks for the pointer. What does this compnotes.exe do, and do I need to launch it manually on each boot for it to continue to work?

COM objects can be hosted in exe files also – one way to tell if an exe/dll/ocx supports registration is to look at the Properties of the file. If Properties shows a Version tab, and the Version tab shows the file has the ‘OLESelfRegister’ property, then the file can be registered using regsvr32. Looks like running the file caused the registration for you, so I would not expect you to have to run it again (at least for the current user… I’m not sure about the ‘per-user’ vs ‘all-users’ stuff on Terminal Server).

Woops – sorry, I got that wrong… I’ve confused ‘supports self-registration’ (which can apply to exe, dll and ocx binaries) with ‘registerable via regsvr32’. It looks like the ‘usual’ way to register COM objects that are hosted in exe packages is to run the exe with a ‘/RegServer’ command line arg (or ‘/UnregServer’ to uninstall…). Reference: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/com/html/fb5dcb2b-b0e3-4f37-a8e7-b84b9a265227.asp