Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

COM+ - transient subscription

Posted on 2001-06-03
7
Medium Priority
?
497 Views
Last Modified: 2013-12-03
Hi,

To make transient subscription I use the following code(VC++):

CComPtr     pCat;
CComPtr              pDispCol, pDispSub;
CComQIPtr   pCatCol;
CComQIPtr     pCatObj;
long                            nRetval;

hr = CoCreateInstance(__uuidof(COMAdminCatalog), NULL, CLSCTX_SERVER, __uuidof
(ICOMAdminCatalog), (void**)&pCat);

hr = pCat->GetCollection(L"TransientSubscriptions", &pDispCol);
pCatCol = pDispCol;
hr = pCatCol->Populate();
hr = pCatCol->Add(&pDispSub);
pCatObj = pDispSub;
//...
// setting subscription's properties (SubscriberInterface, EventClassID, etc...)
//...

hr = pCatCol->SaveChanges(&nRetval);

// .....

This code works fine within client application, BUT if I use this code within
COM+ component (say, this COM+ component would like to make transient
subscription itself) SaveChanges() on TransientSubscription collection call fails
with E_ACCESSDENIED error :(
I played with COM+ security settings,but nothing...
Also I tried to create COMAdminCatalog object using ContextObject
(CreateInstansce) - just the same...

May be somebody knows where is the problem.
Thanks in advance!
0
Comment
Question by:efratk
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 3

Expert Comment

by:elcapitan
ID: 6155830
Did you try to play with the identity tab in the com+ application properties?

--EC--
0
 

Author Comment

by:efratk
ID: 6155840
yes, and it didnt works
0
 
LVL 15

Expert Comment

by:Tommy Hui
ID: 6158147
When you say COM+ component, are talking about an EXE or something running within IIS or what?
0
Fill in the form and get your FREE NFR key NOW!

Veeam® is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

 

Author Comment

by:efratk
ID: 6162926
a dll file

0
 
LVL 15

Expert Comment

by:Tommy Hui
ID: 6164947
Okay, so your component is a DLL. How are you testing this DLL? What application are you using?
0
 

Expert Comment

by:Jgould
ID: 7602755
request for deletion is made here this will be honored in 24 hours with no further comments here by participants

http://www.experts-exchange.com/Community_Support/Q_20430231.html

Jgould-EE Moderator
0
 

Accepted Solution

by:
modulo earned 0 total points
ID: 7631758
PAQ'd and points refunded

modulo

Community Support Moderator
Experts Exchange
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

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

This article surveys and compares options for encoding and decoding base64 data.  It includes source code in C++ as well as examples of how to use standard Windows API functions for these tasks. We'll look at the algorithms — how encoding and decodi…
After several hours of googling I could not gather any information on this topic. There are several ways of controlling the USB port connected to any storage device. The best example of that is by changing the registry value of "HKEY_LOCAL_MACHINE\S…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Want to learn how to record your desktop screen without having to use an outside camera. Click on this video and learn how to use the cool google extension called "Screencastify"! Step 1: Open a new google tab Step 2: Go to the left hand upper corn…

618 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