|
creating sldworksclass from inside windows service.
hello, gurus.
i need your help.
does anybody know how to solve the following issue:
we have an application dealing with swx api. it works fine.
and we are trying to convert it into windows service.
if the service runs under account that is member of local administrators group, or under local system account without "allow service to interact with desktop" option turned on, it gets an exception at the moment of calling "new sldworks.sldworksclass();": "retrieving the com class factory for component with clsid {00024500-0000-0000-c000-000000000046} failed due to the following error: 80070005. "
if the service runs under local system account with "allow service to interact with desktop" option turned on, then it's fine.
is it possible to create an instance of sldworksclass() from inside windows service, wich runs under the account, different from "local system"?
be careful on this one. read the solidworks license agreement. i believe the running solidworks as a service is a violation of the agreement unless you pay some pretty big $$$ for a special agreement. i've work for/with other companies that have looked into this for eto applications.
it will break the agreement of the license and also trying to access/create com objects from a service that does not interact with the desktop won't generally work if it needs to provide certain functions (which i'm guessing sw will).
also, how are you creating the instance? if you are using a service you need to remotely create it using marshalling
well, the reason for the application is to eliminate user attendance for drawing frame syncronisation with db content (pdm). so, it's nothing wrong in terms of the license. it is just an automation of the tasks.
anyway, does anybody know the possibility to create a swx com instance from inside windows service under the account different from "local system"?
edited: 09/09/2008 at 02:28 am by konstantin nizhegorodov
i presume you know how to do that in code? if so, just give it a try and see what happens. it will all depend on what privelages sw needs for the functions you are using. |
|