Register    Login
 
Professional OPC Development Tools
And Services
 
 
SupportOnline Forums
 
Links: Related Pages
 
Links: Related Services
 
Links: Related Support
 
Links: Related Resources
 
Online Forums

Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see link in upper right corner) in order to Post questions. You do not have to be a licensed user.

OPC Labs team is actively monitoring the forums, and provides answers as soon as possible. For your convenience, we have also assembled a Frequently Asked Questions page.

Please do not use the Contact page for technical support.

HINT: You may use the Search feature (magnifier icon below) in the forums to locate the information you need. You can also search our entire Web site (the search box in the upper right corner of every page).

 
 
SupportSupportDiscussions (re...Discussions (re...QuickOPC-ClassicQuickOPC-ClassicQuickOPC-COM  QuickOPC-COM E_NOINTERFACE returned when AcknowledgeCondition called from a different thread.E_NOINTERFACE returned when AcknowledgeCondition called from a different thread.
Previous Previous
 
Next Next
New Post
 11/22/2011 4:41 AM
 

Hi,

It is E_NOINTERFACE that is returned.

To clarify the functionality in my code, in each thread I make a new “instance” of the easyOPC interface since I get a marshall error if I try to use the same EasyOPC pointer in both threads.

Best regards

J.

New Post
 11/22/2011 10:46 AM
 

I do not see a problem with how you described your code.

I have created a C++ program her that does comparable thing, and it works well - i. e. I could not reproduce the problem. This is with our "kit" OPC Server. I am actually calling the AcknowledgeCondition from the event handler, which is on other thread as well.

Questions:

  1. Have you tried to call some other method, besides acknowledgement (something harmless - e.g. querying for categories)? Does it work, or does it also give the same error?
  2. Can you try your code against our server? If so, how does it behave?
  3. Are you calling CoInitializeEx with proper arguments (most likely, for "free threading") on beginning of each thread that you use?

Note:

The AcknowledgeCondition method is quite sensitive, besides other things, to the proper value of the ActiveTime parameter - it must match the time earlier obtained from the corresponding event notification. If improper ActiveTime was the problem, however, an expected error code would be E_INVALIDARG.

Would it also be possible that you send me (parts of) your code - for quick check whether I do not quickly "spot" some obvious problem?

Previous Previous
 
Next Next
SupportSupportDiscussions (re...Discussions (re...QuickOPC-ClassicQuickOPC-ClassicQuickOPC-COM  QuickOPC-COM E_NOINTERFACE returned when AcknowledgeCondition called from a different thread.E_NOINTERFACE returned when AcknowledgeCondition called from a different thread.

 
 
 
 
 

 
 
 
 
Home|Services|Products|Purchase|Downloads|Support|Resources|Company|Contact
Copyright 2007-2012 by OPC Labs Terms Of Use Privacy Statement May 20, 2012