如题!

解决方案 »

  1.   

    不需要跨语言的话用接口函数
    需要的话提供COM接口
      

  2.   

    LZ的意思是不是插件功能?
    既然是可以控制应该是插件功能吧。
    DLL和COM都可以。
      

  3.   

    1. DLL
    2. 发送窗口消息
      

  4.   

    我也是想做一个DLL,可是我始终没明白这个DLL应该怎么写。
    请问在哪里可以找到写这种接口DLL的文章或资料?
      

  5.   

    http://www.programfan.com/article/showarticle.asp?id=21
      

  6.   

    如果不用跨语言,DLL简单一些如果需要跨语言,COM功能强大一些
      

  7.   

    除COM/DLL之外,现在也很流行script的
      

  8.   

    估计是我没把问题说清楚,我的目的是这样的。
    有一个程序A,有一个程序B。
    A当中有个功能是打开文本文件并显示。我要在程序B中控制A,并让A执行打开文本文件这个动作。如果直接调用DLL的话应该是实现不了这个功能的吧。因为这个功能实际上不在DLL中,而是在程序A中。
      

  9.   

    发窗口消息,或者管道命令。这个最简单,需要在同一个机器执行。
    可以用socket,可以处理复杂控制操作。
    还可以用dcom。这个网络环境的配置要求比较高。
      

  10.   

    用com,或者做成向Excel 那样的 active server 程序.
      

  11.   

    还有一种更老的接口好像叫 DDE
      

  12.   

    两个不同的程序
    在B中提供一个功能键,点击运行A。
    要不把A中那部分代码移植到B中
      

  13.   

    归纳一下大家的意见和我不明白的地方,请大家指正:
    1、DLL          //我不明白这种DLL应该怎么写,正如我开始说的,那功能的代码在程序A中,不在DLL中,即使我在程序B中加载了这个DLL,好象也没用2、发送消息    //应该是最简单实用的一种方法。可是发消息好象就可以传两个参数,我要传的实际上10个以上,可以达到20个参数左右,不知道能否做?还有就是我要找到程序A是否还必须使用FindWindow(),可程序A是多文档的,它的标题是会随着打开文件的不同而变化的,没法找。3、COM         //应该是 功能最强大的一种,但是实现相对复杂,而且小弟我也对它不熟悉。只有放弃它了。4、socket      //我的目的是本机的两个程序通信。所以应该用不上socket,而且我还要开个线程去监听一个端口,感觉也浪费资源。5、 DDE         //这好象是比较老的技术。支持性不是很好,放弃。
      

  14.   

    我给你说个办法,当B需要向A发送命令时,直接shellExec A.并且用命令还的方式把你的命令传进来。在A的winmain中,取得参数,并且判断当前是否是第一个实例,如果是第二个实例,就把命令放到内存共享区,然后给第一个实例发个自定义消息,并退出自己。