gpt4 book ai didi

objective-c - 终止另一个正在运行的应用程序 - Cocoa

转载 作者:太空狗 更新时间:2023-10-30 03:46:36 25 4
gpt4 key购买 nike

如何终止在 cooca 中运行的另一个应用程序。假设我正在运行 iTunes,然后在我的应用程序中输入 quit,它会退出 iTunes。 “iTunes”只是一个例子,它可以是用户想要的任何东西。我可以从我的应用程序打开任何应用程序,但我想知道如何关闭任何正在运行的应用程序。

谢谢

凯文

最佳答案

AppleScript 是一种发送单个 Quit 事件的高级方法。 SIGTERM 是一种相当蛮力的低级方法。

退出另一个应用程序的正确方法是获取其进程序列号 (psn) 并使用以下两行代码向其发送 kAEQuitApplication Apple 事件:

result = AEBuildAppleEvent( kCoreEventClass, kAEQuitApplication, typeProcessSerialNumber, &currentProcessPSN,
sizeof(ProcessSerialNumber), kAutoGenerateReturnID, kAnyTransactionID, &tAppleEvent, &tAEBuildError,"");
result = AESend( &tAppleEvent, &tReply, kAEAlwaysInteract+kAENoReply, kAENormalPriority, kNoTimeOut, nil, nil );

您可以从 C、C++ 或 Objective-C 执行此操作,并且您必须链接到 CoreServices.framework。

关于objective-c - 终止另一个正在运行的应用程序 - Cocoa,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1469534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com