iOS的Theos挂钩和设置伊娃/财产
问题描述:
我有以下类,我挂钩,我想弄清楚如何挂接和设置m_proxyPort。我可以毫无问题地阅读它,但如果我想改变它,怎么样?iOS的Theos挂钩和设置伊娃/财产
对于3个NSString ivars有一个setter,但是没有m_proxyPort的setter,想知道是否有方法来设置这个ivar?
@interface DDURLProtocol : NSURLProtocol <NSURLAuthenticationChallengeSender, DDURLProtocolHttpAdapterDelegate>
{
int m_proxyPort;
NSString *_proxyHost;
NSString *_proxyUsername;
NSString *_proxyPassword;
}
%hook DDURLProtocol
- (void) check
{
[self setProxyHost:@"127.0.0.1"];
int pp = MSHookIvar<int>(self, "m_proxyPort");
NSLog(@"proxyPort: %d", pp);
// How to set m_proxyPort????
}
%end
答
您可以按照获取它的方式进行设置。
MSHookIvar<int>(self, "m_proxyPort") = 23;