我不得不再次沉浸在C ++ COM编程中,并且忘记了上次大部分难以吸取的教训。 (当我认为“永不再发生”这个短语可能被错误地使用了。)
C ++中COM开发最常见的错误和反模式是什么?我正在使用Borland C ++ Builder,但我正在处理适用于所有C ++编译器的事情。
答案 0 :(得分:2)
我的错误不是阅读手册。我只是尝试使用在线找到的教程和代码示例。如果我对COM有了很好的基本了解,那么我就会浪费很多时间来解决那些容易解决的问题。
答案 1 :(得分:0)
我会用第一个我再次绊倒的球开始滚球:
不要将文字字符串传递给需要BSTR参数的函数。请参阅the remarks section here。
CComPtr<IFoo> foo;
foo->bar("Bletch!"); // No valid BSTR prefix, so bad things will happen.
相反,请使用......
foo->bar(CComBSTR("Bletch!"));