2011-01-07 21 views
0

10.5 OS Xでこれを行うために使用できるAPIは何ですか?終了させるプロセスのプロセスIDは、Cocoaアプリケーション内では認識されませんのでご注意ください。終了させる必要のあるプロセスは、ココアプロセスでもあります。Cocoaアプリケーション内からプロセス(自己ではない)を終了する方法

+1

プロセスIDがわからない場合、プロセス名はわかりますか? –

答えて

2

NSWorkspaceまたはProcess Managerを使用して、プロセスを見つけてそのPIDを取得し、通常のようにkillを使用します。

2

IIRC、NSWorkspaceのみユーザー自身が所有するプロセスを返しますが、これの世話をするために多くの異なる方法のコースがあります。

1.)Document by Appple, QA1123

2)AGProcess from AGKit

+0

http://developer.apple.com/library/mac/#samplecode/MachPortDump/Listings/MachPortDump_c.html –

0
NSRunningApplication* app = [NSRunningApplication runningApplicationWithProcessIdentifier:pid]; 
[app terminate]; // ask the target to terminate self 
[app forceTerminate]; // the target will not save the data 
0

プロセスIDを取得する前に取得する必要があります。プロセスを強制終了するには、シグナルSIGABT、SIGTERMまたはSIGKILLをシグナルに送るだけです。

関連する問題