从命令行工具中检索info.plist文件

bug*_*ixr 8 cocoa objective-c

使用以下步骤,我可以将info.plist嵌入到命令行工具中.

http://developer.apple.com/library/mac/#documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html

我知道如何plist从.bundle中检索文件,但我不知道如何在单文件工具中执行相同操作.

我已经将info.plist嵌入到命令行工具中,以便我可以将版本存储在其中.有谁知道我如何在运行时检索它,以便我可以确定正在运行的版本?

谢谢

mil*_*ose 9

__info_plist 是一个"魔术"部分名称,使以下Just Work:

NSBundle *bundle = [NSBundle mainBundle];
id version = [bundle objectForInfoDictionaryKey: (NSString*) kCFBundleVersionKey];
NSLog(@"mainBundle.version = %@", version);
Run Code Online (Sandbox Code Playgroud)

如果您需要阅读嵌入在与当前运行的可执行文件不同的可执行文件中的软件包,那么Bavarious从评论中得到的答案有一个更全面的方法列表.