我们的 OS X Java 应用程序由MyApp.app
捆绑包中的 shell 脚本启动,当从 Finder 启动时会收到一个奇怪的命令行参数-psn_0_989382
,但在直接从终端启动时不会。我在哪里可以找到此命令行参数适用于哪些信息?
问问题
5014 次
2 回答
31
Mac OS X 为通过 GUI 启动的所有应用程序分配一个唯一的进程序列号(“PSN”)。它用于识别可执行文件的各种进程和实例。
我没有什么可以真正添加到文档中的,所以最好的办法是阅读Carbon Process Manager Reference 的 ProcessSerialNumber 部分(原始 Apple 链接已失效;这是一面镜子)。
于 2012-04-20T07:44:21.753 回答
0
似乎使用 Carbon API 的旧应用程序是从这个参数开始的。如果应用程序已经更新到不再使用 Carbon 的版本,您可以通过以下方式从 LaunchServices 数据库中取消注册应用程序:
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -u /Applications/AppName.app/
在此之后,它可以从 Finder 重新启动以注册新版本。那么它不应该再得到这个论点了。
于 2020-05-10T11:00:01.357 回答