none
winform插件和Dll动态加载的问题. RRS feed

  • 问题

  •     一直对FireFox的插件功能很感兴趣,不知道它们是怎么和主程序协同工作的呢?坛子里搜到一篇 http://social.msdn.microsoft.com/Forums/zh-CN/2212/thread /cde3a026-3cd3-41c8-a4e5-bc37aef46381/说的相对简单,其仅仅是在主程序添加一个菜单项,子菜单的内容由插件提供 就行,除此之外和主程序没有交互,但firefox的插件还涉及到与主程序的交互:比如MinTrayr,使得点击最小化按钮后任务栏图标消失而移动到系 统栏,这种功能如何实现?

        另外想知道Dll动态加载/引用的问题,似乎和上面的内容密切相关,坛子里有篇帖子http://social.msdn.microsoft.com /Forums/zh-CN/2212/thread/09e55631-a522-4c21-ba07-fa0715a045cf/提到Dll动态加载 的话只能通过反射去调用方法,而不能直接调用.

        现在的问题是这样的,有两个客户群(假设为A和B)使用同一个客户端,由于两个客户群各自的需求略有差异,应B的要求多开发了一个功能,现在想把这个功能 封装到一个Dll里,这样A和B可以用同一个客户端,区别仅在于B的客户端里需要多一个Dll,但是由于项目里添加了对Dll的引用,使得A的客户端也需 要存在这个Dll,违背了初衷,VS是否能够做到Dll的动态引用(而不是加载)呢?

    2013年6月18日 1:28

全部回复

  • 我想动态引用(反射)还是要放到一个配置文件里面来做,你可以将所有插件放到客户端里面,但是不同的客户配置不同的参数,这样程序就可以读取配置文件并选择加载哪些DLL,以实现不同的需求。

    Regards,


    Shanks Zen
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年6月19日 7:45
    版主
  • dll动态加载是可行的,至少我当初实验的时候,一部分可行.如果只是执行传值操作,完全没问题.但当涉及到传指针并取返回值时遇到了问题,至今也没解决.

    2013年6月19日 7:52