用VB写了一个程序,但它要和别的程序(不知道源代码)一起使用,就是能不能在已经存在的程序的菜单或工具条上添加一个按扭启动我的程序呢?
先谢谢啦

解决方案 »

  1.   

    使用shellexecute函数,具体参见MSDN
      

  2.   

    要么那个程序支持插件,要么写个类似qq彩虹外挂的,它启动时就加载进去,然后api在指定位置创建你的控件。
      

  3.   

    搞破坏! 像是木马程序,修改EXE程序入口点,接入自己的程序,然后中断返回!
      

  4.   

    很多软件都有那个功能呀,比如说百度的工具条不就是加载到IE上了吗 ,打印机也常在IE命令栏上添加一个它自己的按钮,来启动打印程序来启动打印网页呀!
      

  5.   

    这样,先看那个别人的程序,调用了什么DLL,最好是一个简单一点的DLL,改名成A.DLL,然后你把你的VB写的程序,做成DLL,与别人的程序调用的那个DLL同名,这样别人的程序启动时,就会自动先调用你的DLL,而你的DLL不光要有你的功能,带要做所有的转发,转到A。DLL上去。
    至于按钮的话,如果别人的程序不是DX图形程序的话,你的DLL可以挂一个按钮上去。
    呵呵,这是思路,说起来简单,实际上我也不知道怎么做,我正在找相关的资料。但这是可行的方法,网上有这样的VB例子。
      

  6.   

    不必修改那个"不知道源码的程序"程序,
    弄一个"小工具",直接往那个程序的窗口创建个子窗口(按钮),
    或者用setparent把你vb里面的按钮搞进去(有焦点的玩意都可以吧),
    我朋友不久前试过这样搞阿里旺旺"插件"(for money),
    再或者可以直接往那个窗口画个按钮.
      

  7.   

    打错了不是焦点..是句柄..SetParent声明:
    Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long用法:
    Call SetParent(CmdBtn.hWnd[按钮句柄], hWndTarget[目标窗口句柄])
    CmdBtn_Click事件里面就Shell或ShellExecute你的程序