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;