LouDawg
Thu Oct 05 16:50:34 CDT 2006
Chris Crowe [MVP 1997 -> 2006] wrote:
> One way to give the object more permissions is to define a COM+ package for
> the object.
>
> Open Component Services from the Administrative Tools folder in Control
> Panel
> Expand Component Services
> Expand Computers
> Expand My Computer
> Select COM+ Applications
> Right click and select New
>
> The wizard will come up
> Click Next
> Click Create an Empty Application
> Give it a name and it should be a Server Application (Default)
> Click Next
> Here you can configure the account that will launch the COM+ Service
> Use any (but not Interactive) or create a custom account to run it and
> specify that.
> Click Next at the Roles
> Click Next
> Click Finish
>
> You should now have a new application called "What ever you named it"
>
> Expand the COM+ applications Node and you should see your new application.
> Select it.
> Right click and select properties
> Go to the security tab
> Under authorization remove the "Enforce access checks"
> Click OK
>
> Expand the item you created in the tree
> Select Components
> Right click and select New -> Component
> Click Next
> Click Install New Components and browse to the DLL file.
>
> You should then be able to complete the wizard and your COM application
> should work fine.
>
> Chris
>
> --
>
>
> Chris Crowe [ IIS MVP - 1997 - 2006 ]
>
http://blog.crowe.co.nz
>
>
> <louloizides@yahoo.com> wrote in message
> news:1158938912.160986.295790@i42g2000cwa.googlegroups.com...
> > I'd appreciate any help with this. It's really important that I get it
> > working right!
> >
> > I'm fairly new to IIS. I've used different open source servers in the
> > past, but now I have to write a program that can be migrated from IIS
> > 5.1 under Windows XP Pro to IIS 6 under Windows Server 2003 (I'm
> > migrating it because I can run IIS 5.1 on my computer now to test
> > things, but if there's any reason I should just throw it on IIS 6 in
> > the first place let me know - for the most part I'm using simple ASP
> > scripts).
> >
> > Anyway -
> > I've got a simple com server that I need one of my asp pages to access
> > using createobject. If I run the ASP pages under my account, with
> > authentication through the server, the com application fires up just
> > fine. When I switch over to the anonymous IUSR accound, I keep getting
> > this ASP error:
> >
> > Error Type:
> > Microsoft VBScript runtime (0x800A0046)
> > Permission denied: 'CreateObject'
> >
> > The com server, by the way, is an MFC app written in VC++.net.
> >
> > I really need this to work. I gave the IUSR account read/write access
> > to the directory with the com app in it, but that didn't seem to work.
> > I'd really appeciate any hints!!!! Do I need to run this as a service?
> > If the com server is run in the background or under the sys account,
> > what can I set in the MFC app to keep it the object from dissapearing
> > after the page is done with it?
> >
Chris - Thanks for your excellent reply (sorry for the delay on mine,
though). So, assuming my component is called something like
"ThisApp.ThisComponent", do I still use
createobject("ThisApp.ThisComponent") to call it, or do I use the name
of the application I created? The Component, by the way, is an exe MFC
server with a type library and not a DLL. Does it matter?