lipingcool:
关于你问的几个问题,其实是COM的几个最基本的东西,但是要说清楚还是
要费很多时间。简单地说,通常COM对象的接口方法的返回值是HRESULT,它表
明了这个方法调用的成功与否,而你想要返回的数据是通过定义成[out,retval]。
你在VB里看到的是COM Runtime为你处理过了的,比如你的GetRS方法中如果出错,
GetRS的HRESULT将不为S_OK, 那么在VB中将会产生一个Exception(VB的Error)。
IDispatch是从IUnknown上继承下来,主要是给ASP等需要运行时Binding的语言用
的,因为这种情况下无法用基于vtbl的Binding,通过IDispatch的Invoke方法来调
用,等等......关于这个话题要讲的话可以写本书了,建议你去找本书看。总的来
说, MTS/COM+比J2EE学习起来要复杂一些, 但在Windows平台上MTS/COM+比J2EE
要快。
zljzyj:
写三层/多层应用很多情况下要用多种技术, 根据需要而定, 有时用ADO, 有时用
XML或其他的技术, 没有什么累不累的, 要不累的话只有不做这一行了。