问题描述
背景:原来用RFT(rationalfunctionaltester)中的invoke方法来控制测试目标程序中的控件内预留的public方法。由于公司不再采用XP,03,Vista作为新产品的支持平台。转而只支持Win7,和2008.而IBM的RFT在支持Win7和08上做的很不好,因此要放弃RFT,转而用UIauotmation来测试目标.Net4的application。Issue:UIauotmation中的serverprovider的方式倒是可以实现加一个壳儿的方式来让外部UIautoamtionclient来调用。但致命缺点是需要修改目标测试软件,且这样的工作量很大。因此本人在思考是否能用DLL注入到目标程序的方法,来hack它,能够调用背景中提到的pulicmethods即可。需求:比如有一个winform,这个winform里面有A(stringa,stringb,stringc)这个publicmethod。获取这个winform的方法我比较清楚,用uiautomation识别即可,我需要能够首先用反射机制来获取这个winform中的所有公开函数,接下来用注入的DLL来控制其中的A函数。我对C++不怎么熟悉,能否请大家给出思路或者参考资料如何用DLL注入的方式来控制.Net4(注意,必须是在.Net4上好用,目标程序是用.Net4C#写的)的方法,不胜感激,谢谢
时间: 2024-10-28 14:46:42