描述:
我使用的是VC,同事使用的是DELPHI。我通过接收同事程序发布的COM的事件消息得到消息。但现在遇到一个难题不知道怎么解决。
我有如下一个函数
OnRequest( VARIANT myVariant1, VARIANT myVariant2,VARIANT myVariant3, VARIANT myVariant4, VARIANT* myVariant5, VARIANT* myVariant6)
使用了6个VARIANT 类型来接收不同的消息参数,但我得到的内容和同事程序发给我的不一样。6个有值的参数到我这只有两个的值是对但位置还是错的。myVariant1和myVariant6的只一样。
我们用test(BSTR TEXT1 BSR TEXT2 )测试,我只能得到第一个值,第二个值为空。
初步怀疑是我用VC写的程序有问题(同事用DELPHI写的程序能正确接收),但又不知道那有问题。望给位指教!
谢谢先!
解决方案1:
gz+up
解决方案2:可能是参数不匹配
解决方案3:肯定是你程序返回的variant不正确。
解决方案4: >>用test(BSTR TEXT1 BSR TEXT2 )测试
不妨用test(int i1, int i2)测试。如果正常的话,说明你的参数类型选的不合适,双方无法就该类型的解释取得共识。如果依然不正常,检查其他的地方...