파일로 응용 프로그램 실행 파일을 읽기하지만 난 NSFileHandle이는 folowing 코드 아무것도 반환하여 다시 아무것도 없어 :아이폰 : 나는 여러 methodes를 통해 주요 응용 프로그램을 읽기 위해 노력했다
NSFilemanager *filemanager = [ filemanager defaultmanager ] ;
NSString *myfile = [ [ NSBundle mainBundle ] bundlePath ] ;
if ([ filemanager isReadableFileAtPath:myfile ])
NSLog(@" myfile is readable ") ;
if ([ filemanager isWritableFileAtPath:myfile ])
NSLog(@"myfile is wrieable ") ;
NSFileHandle *filehandle= [ NSFileHandle fileHandleForReadingAtPath:myfile ] ;
if (myfile == nil) {
[ filehandle closeFile ] ;
}else {
NSData *filedata = [ filehandle readDataToEndOfFile ] ;
NSString *filestrdata = [ [ NSString alloc ] initWithData:filedata encoding:NSUTF8StringEncoding ] ;
NSLog(@"string data \n %@ " , filedata) ;
}
을하지만 난 다시 아무것도 없어 그래서 내 질문은 그것이 가능한 읽기 가능 쓰기에 대한 실행 파일에 액세스하는 것입니다 예, 그렇다면 어떻게 할 수 있을까요? 감사합니다.
+1 NSBundle은 앱 번들 내에서 파일을 찾는 데 필요한 모든 방법을 제공합니다. 그러나 실행 파일 자체를 읽는 데 유효한 이유가 없습니다. 따라서, 그렇게하려는 시도조차도 사과에 의해 앱이 거부 될 수 있다고 생각합니다. – TechZen
잠재적으로 유효한 이유 (DRM)가 많이 있지만, 나는 그곳에서 약간 carfully해야한다. (바이너리는 암호화되어있다.) 또한 정적 분석을 통해 실행 파일을 읽는 지 확인하기가 쉽지 않습니다. 그리고 하루가 끝날 때 바이너리는 주소 0x1000에로드/복호화되므로 메모리를 읽을 수 있습니다. –