我把上面的问题具体解释一下:
     首先用 MIDL 命令: midle server.idl ,运行完后生成几个头文件和C文件,
     然后就是在 VC 6 下建一个DLL工程 ,将这些文件放到工程中,同时放入 PROXY.def
文件,编译,通不过,为什么?
     如果用 NMAKE 命令应该怎样写 MAKEFILE 文件?

解决方案 »

  1.   

    论坛中有些帖子的作者,很有意思
    例如:“ 《COM技术内幕》很简单的,看起来比较容易”,容易?你是走马观花的看了两遍后得出的结论还是一步一步按章节将例子都实做了一遍?《COM技术内幕》所附光盘的例子错误很多,你都一一改正后运行了吗?大家把书里的例子都在机器上实现,可能学习效果会好一些 !!!
    对于我提出的问题
    我真诚希望真正脚踏实地的网友尽快给我答复!!!
      

  2.   

    1.建立一个WIN32的DLL空的工程。工程的名字就叫做PROXYSTUB
    2.把 server.h,server_i.c,server_p.c和dlldata.c加入工程
    3.建立一个PROXYSTUB.def,一定要加入工程 
    内容如下
    LIBRARY PROXYDEF.dll
    DESCRIPTION   'proxy/Stub Dll'
    EXPORTS
         DllGetClassObject  PRIVATE
         DllCanUnloadNow   PRIVATE
     GetProxyDllInfo  PRIVATE
         DllRegisterServer   PRIVATE
         DllUnregisterServer   PRIVATE
    在工程的setting里加上_WIN32_DCOM,REGISTER_PROXY_DLL和rpcrt4.lib具体在哪里就不用说啦
    然后编译连接,我想回通过的
    至于使用MAKE文件,你用ATL向导是选中ALLOW  MERGING  OF PROXY/STUB CODE
    向导就为你产生一个工程名字+PS的MAKE 文件和DEF文件,比如工程叫TEST就有一个
    TESTPS.MK和TESTPS.DEF
    在命令行下用
    nmake testps.mk就可以生成存根代理的DLL。
    那本书没有一步一步实做一遍,没有脚踏实地:)
     
      

  3.   

    十分感谢 wyzegg(蛋) 网友,我已经按你说的方法编译通过了,我想您是一位 COM 高手希望你留下E-MAIL ,有问题还需向您请教 !!
    我的 E-MAIL 是 [email protected]
      

  4.   

    绝对不是高手XT2才是真正的高手
    我的MAIL
    [email protected]
      

  5.   

    qcg_bj:祝贺你编译成功了,但小弟我还没通过呀: 我是把...\Microsoft Visual Studio\VC98\下的包括nmake在内的一些文件拷到我的工程目录下,编译xxps.mk,通不过,提示如下:
    ‘c1’is not recognized as  as internal or external command,
    operable program or batch file
    NMAKE:fatal error U1077:'C1':return code '0x1'
    stop.我反复试了几次,都不行,总有这样或那样的错误,为什么?