好吧,所以标题糟透了,但我想不出更好的东西(也许其他人可以?).
所以我在这里围绕一个主题提出几个问题.我想要做的是创建一个程序,可以获取一个对象并使用反射列出它的所有属性,方法,构造函数等.然后我可以在运行时操作这些对象来测试,调试和弄清楚我的一些类/程序在运行时正在进行,(其中一些将是Windows服务,可能安装在机器上而不是从VS运行调试).
所以我会为程序提供一个钩子,从本地机器(仅)这个程序可以获得主对象的实例,因此可以看到在其中运行的所有子对象.(为了安全起见,程序可能需要使用arg来启动以暴露该钩子).
"反射机器"将允许运行时操作和询问.
听起来有可能吗?
程序是否必须提供一个钩子,或者"反射机器"是否可以使用EXE并且(如果它知道它正在使用的所有类),创建一个要使用的对象?
我知道你可以在运行时导入DLL,以便它知道各种类,但是你可以导入单个类吗?IE说我有没有编译成DLL的项目'Y'但是我想在它上面使用"反射机器",我可以指向该目录并获取文件以便能够引用这些类吗?
编辑:我想尝试自己开发它,但我已经有一长串项目,我想做,已经开始.当有很多可供选择的选择时,为什么要重新发明轮子.
试试看Crack.NET.它用于在WPF/WinForms上进行运行时操作和查询,但源可用,如果它已经不能满足您的需求,可能是一个好的开始.