Solved

MTS Permission Denied with Excel Object

Posted on 2001-08-06
8
332 Views
Last Modified: 2008-03-17
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
0
Comment
Question by:teberhardt
8 Comments
 
LVL 8

Expert Comment

by:Dave_Greene
ID: 6356163
Did you change the folder or the file permissions?  I recommend both.
0
 
LVL 38

Expert Comment

by:PaulHews
ID: 6356268
>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?
0
 
LVL 5

Expert Comment

by:rkot2000
ID: 6356347
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.
0
 

Author Comment

by:teberhardt
ID: 6356711
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
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 5

Accepted Solution

by:
rkot2000 earned 200 total points
ID: 6356750
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.
0
 

Author Comment

by:teberhardt
ID: 6364261
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.
0
 
LVL 5

Expert Comment

by:rkot2000
ID: 6364295
>>>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?
0
 

Author Comment

by:teberhardt
ID: 6370289
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?
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I’ve seen a number of people looking for examples of how to access web services from VB6.  I’ve been using a test harness I built in VB6 (using many resources I found online) that I use for small projects to work out how to communicate with web serv…
Have you ever wanted to restrict the users input in a textbox to numbers, and while doing that make sure that they can't 'cheat' by pasting in non-numeric text? Of course you can do that with code you write yourself but it's tedious and error-prone …
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

929 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now