MIDL crazy behaviour
-
I have IDL with 18interfaces and about 500 methods.(No one interface has more then 30 methods) Now if I add any new method to any of this interfaces, MIDL generate this in .tlh: #pragma start_map_region("y:\3r_appn\customer\manager\debug\custsrv3.tli") __declspec(implementation_key(1)) VARIANT_BOOL ITSSCustomerServer::GetError ( BSTR * pErrorText ); . . instead of this from previous ver: #include "y:\3r_appn\customer\manager\debug\custsrv3.tli" In .tli then #pragma implementation_key(1) inline VARIANT_BOOL ITSSCustomerServer::GetError ( BSTR * pErrorText ) { VARIANT_BOOL _result; HRESULT _hr = raw_GetError(pErrorText, &_result); if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); return _result; } . . Instead of inline VARIANT_BOOL ITSSCustomerServer::GetError ( BSTR * pErrorText ) { VARIANT_BOOL _result; HRESULT _hr = raw_GetError(pErrorText, &_result); if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); return _result; } . . OK, but now linker doesn know any of theese methods. Does anybody know why and how solve this? Thank You Jirka