确定,以便标题有点吸引但我想不出任何更好的东西(也许别人可以?)。如何使用反射来创建一个“反射机器”
所以我有一个围绕这个问题的几个问题。我想要做的是创建一个程序,它可以接受一个对象并使用反射来列出它的所有属性,方法,构造函数等等。然后,我可以在运行时操作这些对象来测试,调试和计算出我的某些类/程序在运行时正在运行,(其中一些将是windows服务,可能安装在机器上,而不是从VS进行调试运行)。
所以我会提供一个钩子程序,从本地机器(只)这个程序可以得到一个主对象的实例,因此看到所有运行在它的子对象。 (为了安全,程序可能需要用arg来启动该钩子)。
“反射机器”将允许运行时操作和询问。
听起来可能吗?
请问程序必须提供一个钩子或者可以在“反思机”采取EXE和(如果它知道它使用的所有类),创建一个对象来使用?
我知道你可以在运行时导入DLL,以便它知道各种各样的类,但是你可以导入单个类吗? I.E.假设我有没有编译成DLL的项目'Y',但是我想使用它上面的“反射机器”,我可以指向那个目录并抓取这些文件以引用这些类?
编辑:我很想尝试和开发它我自己,但我已经有项目的一个长长的清单,我想这样做,并已经开始。为什么在已经有很多选择可供选择时重新发明轮子。
我不知道为什么这个问题被低估。这似乎是一个有趣的想法。上投了反对票。 – 2008-11-18 20:01:20