Hi everybody,
I have created a Sage 50 Accounts 2012 ThinApp and it is working almost just fine. All the primary functions seem to be operational and it is running in a production environment. Now I've been asked to enable its "Third Party Activation" part which seemed easy enough but I seem to be stuck with a COM activation issue.
I'm testing the factory by running a virtualised powershell with command "New-Object -ComObject SDOEngine.18". The build machine runs the command and returns me the COM factory. However, running the same command on same ThinApp on a clean test machine fails with following error:
To me that feels like there is something that thinapp is not picking up from build machine and hence the activation failure but as far as I can tell, all the registry keys / files are in the right places in the virtual environment (and operational as the application runs fine on its own).
I am using the following virtualisation settings in package.ini
VirtualizeExternalOutOfProcessCOM=0
ChildProcessEnvironmentExceptions=WINWORD.EXE;EXCEL.EXE;POWERPNT.EXE;OUTLOOK.EXE;MOC.EXE
if there is any other information you need, please feel free to ask. I'm a software developer, so technical stuff is not a problem.
Many thanks in advance!
Enable regedit as a entry point, build the package.
Launch virtual regedit, and check if {3CCA7768-E5C4-420E-B75D-754E0477A028} exist at HKCR\CLSID. update here.
Thanks for input. Yes it exists along with all the other ClsIds / ProgId.
(I can see them on clean machine that doesn't have anything installed)
So these are available natively? I I mean not inside the package but in the system registry? If so, you may want to check what file it is pointing to and if that file exist inside the virtual package, etc. Log monitor logs should put some light on it. You tried looking into them?
Sorry for the confusion. No I meant they're visible inside the virtual package on a clean machine through registry edit. Sage itself can see these keys as well. However I need to get a third part application integrated into sage and even though I have enabled third party integration in sage, nothing manages to create these COM objects.
The same thing works fine in normal environment. LogViewer, I guess I need to dive into that indeed. I've never used it but I'll google it up. Thanks.
Finally figured out the problem behind this. ThinApp was capturing 8.3 Directory Path for sage for some reason and that path was changing between capturing machine and deployment environment.
Manually going into HKEY_LOCAL_MACHINE.txt and changing C:\Progra~3 to C:\Program Files (x86)\Sage.. fixed the problem.
Hope this saves somebody else the massive time that I spent figuring this tiny problem out.