MTS Permission Denied with Excel Object

Hi everyone,

I have an ActiveX DLL (developed in VB) running as an MTS object that uses the Excel Object (Excel9.olb).  When I run this on a local MTS server, it runs fine.  When I put it out on to a remote server I get the generic Error 20 Permission Denied. (This occurs when I use the CreateObject("Excel.Application") method.)

I figured that maybe MTS did not like the Excel object so I created a regular DLL (not MTS object) and registered it on the server.  Then I created an MTS object that called this local DLL.  Once again this worked on my local machine, but not on the server.  I get exactly the same results.

I am set up as an administrator on the server.  I also set the permissions to full control for Everyone and added my own ID with full control as well.  My ID was used to log on to the server as well.

What could I be doing wrong?  Please help!

Thanks,
Todd
teberhardtAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Dave_GreeneCommented:
Did you change the folder or the file permissions?  I recommend both.
PaulHewsCommented:
>I am set up as an administrator on the server

Is your MTS component set up on the remote server to run under your security account?
rkot2000Commented:
Try this :
Shutdown mts package.
Security Tab (Package)
Uncheck Enable authorization checking checkbox.
If selected, Microsoft Transaction Server checks the security credentials of any client that calls the package. Authorization checking is enabled by default.

P.S. Try not to use  Interactive User:

Identity Tab (Package)

The Identity tab is used to set the user identity for all components running in a given package. The default value is Interactive User, which is the user who logged on to the Windows NT server account. If you want to select another user, you can select the This user option and specify an account name and password.

Important   If you specify another user and password, Microsoft Transaction Server does not validate the password when it is specified. Running a package with an invalid password results in a run-time error and a message in the event log.

To set the This user option to a user or group, you must be logged on to the computer that either maps to that user or is included in the specified group.
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

teberhardtAuthor Commented:
I set the folder permissions to full-control for Everyone as well as for my ID.  I already had full-control for Creator/Owner already which was my ID.

I had already set the components to run under my ID in the identity tab.

Enable authorization was already unchecked.

I believe that this is related to the Excel object and how MTS uses it.  I know that the Excel object is flawed (I'm being nice!) to begin with.

Any further thoughts?

Thanks,
Todd
rkot2000Commented:
I assume that you installed excel on remote machine.
Try to run dcomcnfg.exe and check settings for excel.
try to create a folder share, long time ago we had a problem with security.
>>>I had already set the components to run under my ID in the identity tab.

can you call another method ? maybe you typo your password.
after you change all security options you better reboot your server.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
teberhardtAuthor Commented:
rkot2000,

Thanks for sending me in the right direction.  It ended up being the default tab on dcomcnfg.  I has already set the securities for Microsoft Excel Application in dcomcnfg, but not in the Default Securities tab of dcomcnfg (Access, Launch and Configuration)for the machine.  Once these were set, everything worked fine.  I set them for Everyone, NETWORK, Guests, and MTS Trusted Impersonator to Allow Access, Allow Launch and Full-Control for the respective security.

I haven't reverse engineered the groups to see if I needed only one of them.  Do you know the answer before I go through the whole change security, power down, power up & test thing?

Thanks again for the direction!
Todd

Ps. Thanks to everyone else for their input as well.
rkot2000Commented:
>>>I haven't reverse engineered the groups to see if I needed only one of them.  Do you know the answer
before I go through the whole change security, power down, power up & test thing?

Can you be more specific?
teberhardtAuthor Commented:
What security setting (Everyone, NETWORK, Guest, or MTS Trusted Impersonator) was the setting that allowed me to launch, access, and configure the Excel.Application when I added these groups to the Access, Launch, and Configuration settings of the Default tab in dcomcnfg?
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic Classic

From novice to tech pro — start learning today.