Solved

MTS Permission Denied with Excel Object

Posted on 2001-08-06
8
331 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
Comment Utility
Did you change the folder or the file permissions?  I recommend both.
0
 
LVL 38

Expert Comment

by:PaulHews
Comment Utility
>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
Comment Utility
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
Comment Utility
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
6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

 
LVL 5

Accepted Solution

by:
rkot2000 earned 200 total points
Comment Utility
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
Comment Utility
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
Comment Utility
>>>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
Comment Utility
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

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

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 …
When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

762 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

10 Experts available now in Live!

Get 1:1 Help Now