0

我有点胡说八道。

我有一些 ObjC 代码,它定义了一个带有__attribute__((constructor)) void init. 我将它静态链接到一些 MacOSX 应用程序。它还静态链接到其他一些 MacOSX 包。

在某个地方,我直接通过dlopen. 第一个问题:这与加载它有什么不同[[NSBundle bundleWithPath:[NSString stringWithUTF8String:path]] load]吗?

init中,我想获得一些关于进程环境的信息,例如这段代码是如何加载的。例如当前进程的二进制文件名(在任何情况下很可能是 Cocoa 应用程序)。也许更多。

4

1 回答 1

0

一些非常有用的东西:

[[NSBundle mainBundle] executablePath]
[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleName"];
于 2011-09-06T01:13:28.520 回答