是这样的,目前有一个软件是C# WINFORM,缺少和第三方软件的接口,我想实现这样一个功能,
自己用C#写一个dll,放在这个软件的目录中(不修改原软件),该软件运行后会自动加载这个DLL,假如原软件有一个按钮文本是“123”,我怎么注入后,把他改为“456”,或者说给他增加一个菜单,点击后,弹出一个窗口,是DLL中的窗口这有点像QQ外挂似的,现在很多QQ外挂都不修改QQ本身,都是通过DLL注入,在QQ界面上增加功能按钮的。希望大家能给一些指导,最好有示例代码,非常感谢!

解决方案 »

  1.   

    .net的dll不行,可以写程序,要用非托管的dll
      

  2.   

    如楼上所说.net开发的dll没有这个功能。
      

  3.   

    个人认为C#就两种东西写不了,一个是dll注入所要用的dll,一个是驱动。其他的不论怎样都有办法去实现
      

  4.   

    我网上搜索了相关资料,为什么有很多人说可以注入呢?
    以下是几篇博文:
    http://blog.sina.com.cn/s/blog_4d5428240100reac.html
    http://blog.csdn.net/hack214/article/details/2283599
    http://blog.csdn.net/pandyer/article/details/3719836
    http://www.cnblogs.com/seerlin/archive/2009/03/15/1412523.html
      

  5.   

    又找到了两篇更精品的文章,大家也看看学习
    http://www.cnblogs.com/Binhua-Liu/archive/2011/08/04/2125277.html
    http://topic.csdn.net/u/20081209/08/23fb895c-373c-4804-928d-4bba0b3ffc70.html
      

  6.   

    反汇编DLL,改好以后再单独生成一个DLL覆盖原来的DLL
      

  7.   

    DLL这方面的东西没有接触过。
      

  8.   

    LZ好好看人家说的
     在开始编程之前,我们先找一个dll文件,这里我准备了一个DLL这里我是使用EditPlus编写的,朋友们也可以使用VC++来编写一个DLL。
      

  9.   

    还有这句
    2. Invoke.dll 用C++写的dll,也只能用C++来写