Re: COM, .tli problem
<runcyclexcski@gmail.com> wrote in message
news:79e7851f-7836-4128-a234-7d0695eb35cc@t1g2000pra.googlegroups.com
#import "E816_COM\E816_COM.dll" no_namespace named_guids
Everything worked fine until I installed my program on a colleague's
comp. When attempting to connect to RS232 it generates an unhandled
exception which leads to this portion of a .tli file located in the /
debug directory:
inline long IE816::ConnectRS232 ( long nPortNr, long nBaud ) {
long _result = 0;
HRESULT _hr = raw_ConnectRS232(nPortNr, nBaud, &_result);
if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
return _result;
}
What is this .tli file?
#import directive generates two files, libraryName.tlh and
libraryName.tli. Then the compiler compiles them, as if .tlh file were
#included in place of #import directive (.tlh in turn #includes .tli).
The two files declare and implement, correspondingly, a wrapper around
the interface. The primary goal of the wrapper is to convert HRESULT
error codes into C++ exceptions of type _com_error.
Can you help me pinpoint the source of the
problem?
ConnectRS232 returned an error. Find out what error code it returned,
look it up in the documentation. Sometimes an error is accompanied by a
text string describing the error. If so, it will be available from
_com_error::Description() (you will have to use try/catch to catch
_com_error). HRESULT value is similarly available from
_com_error::Error()
--
With best wishes,
Igor Tandetnik
With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going to
land, and it could be dangerous sitting under them as they fly
overhead. -- RFC 1925