[id(17), helpstring("method WriteByte")] HRESULT WriteByte( [in] long num, [in, size_is ( num )] BYTE *arr );

解决方案 »

  1.   

    你没有编译或注册proxy/stub。
    用开发环境,到你的目录下,运行 (xxx是你工程的名字)
    nmake /f xxxps.mk
    regsvr32 xxxps.dll
    就可以了。
    如果是远程调用,需要在两台电脑上注册proxy/stub的动态连接库。
      

  2.   

    重新说明:
    我的DCom程序是exe程序,在服务器和客户机上面都用 server.exe -regserver程序进行了注册.
    并且我写得代码都是从msdn上面,如何高效的传输数据上面看到的!不知道有何不妥!!我的程序可以运行连通,主要是服务端的函数里面检测到arr的内容不是我在客户端添入的内容,而是一些随机的内容!
      

  3.   

    就是我说的问题。按我说的做,没错的。
    你应该生成serverps.dll然后注册这个dll,就可以了。
      

  4.   

    这个东西是用来把你的调用转换成远程调用的,如果没有他,你就只能做同一个套间的调用。
    详细资料可以参考MSDN中的文档,说的很清楚的。
      

  5.   

    这个成功了,但是我的WriteStream却怎么也不成功。[id(17), helpstring("method WriteByte")] HRESULT WriteStream( [in] long num, [in] IStream *pStream );
    我在同一个程序里调试通过,放到了远程的服务器就不行了,pStream不为空,但是也读不出东西,里面全为空!!