我决定不使用White(而是直接使用MSUIAutomation),但我也在代码中使用CastleDynamicProxy。以下是定位其使用位置的良好开端:
C:\Users\xxxx\Desktop\petmongrels-white-54723f8>findstr /s /c:"ProxyCreator" /c:"CreateClassProxy" /c:"IInterceptor" *.cs
Components\Core\Source\CustomCommands\CustomCommandInterceptor.cs: public class CustomCommandInterceptor : IInterceptor
Components\Core\Source\Interceptors\CoreInterceptor.cs: public class CoreInterceptor : IInterceptor
Components\Core\Source\UIItems\UIItemContainer.cs: var interceptors = (IInterceptor[]) interceptorField.GetValue(customUIItem);
Components\Repository\Source\Interceptors\ScreenObjectInterceptor.cs: public class ScreenObjectInterceptor : IInterceptor
Components\Repository\Source\Interceptors\UIItemInterceptor.cs: public class UIItemInterceptor : IInterceptor
Components\Repository\Source\Interceptors\WindowInterceptor.cs: public class WindowInterceptor : IInterceptor
Components\Repository\Source\Services\ServiceInterceptor.cs: public class ServiceInterceptor : IInterceptor
您可以在以下位置获取来源:
https://github.com/petmongrels/white
(我的有点过时了)