2011-02-04 2 views
2

어떤 응용 프로그램이 사용 중인지 감지하는 방법을 찾고 있습니다.어떤 프레임 워크 응용 프로그램이 사용 중인지 감지

예를 들어 일부 XYZ 응용 프로그램에서 탄소 프레임 워크와 코코아 프레임 워크를 사용하면 내 프로그램에서이 XYZ 응용 프로그램이 탄소 프레임 워크와 코코아 프레임 워크를 사용하는지 감지 할 수 있어야합니다.

도움을 주시면 감사하겠습니다.

덕분에, 라훌

답변

7

가장 쉬운 방법은 응용 프로그램 바이너리에서 otool -L을 실행하는 것입니다. 당신이 어떤 이유로 otool을 실행할 수없는 경우 예를 들어,

$ otool -L /Applications/Twitter.app/Contents/MacOS/Twitter | grep Frameworks 
    /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) 
    /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore (compatibility version 1.2.0, current version 1.6.2) 
    /System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 37594.0.0) 
    /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) 
    /System/Library/Frameworks/QTKit.framework/Versions/A/QTKit (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/WebKit.framework/Versions/A/WebKit (compatibility version 1.0.0, current version 533.16.0) 
    /System/Library/Frameworks/CoreLocation.framework/Versions/A/CoreLocation (compatibility version 1.0.0, current version 12.0.0) 
    @executable_path/../Frameworks/Growl.framework/Versions/A/Growl (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 44.0.0) 
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.29.0) 
    /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 38.0.0) 
    /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 751.29.0) 
    /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1038.32.0) 

, 당신은 항상 its source code을 읽을 수 its licence에 따라 사용합니다.

+0

+1 내 접근 방식보다 훨씬 "깨끗함" –

2

당신은 lsof 출력을 구문 분석 할 수있다, 또는 당신은 browse the sources of lsof 가서 자신의 응용 프로그램에 관련 코드를 복사 할 수 있습니다.

관련 문제