Cocoa で NSTask を理解するのに苦労しているようです。起動したいアプリケーションはopenSSLです。現在、情報 (起動パス、引数など) を送信でき、NSPipe を使用して応答を取得することもできます。私ができる必要があるのは、アプリケーションが要求する入力要求に応答することです。次のコードを使用すると、ファイルから応答を送信して読み取ることができます。
NSTask *task;
task = [[NSTask alloc] init];
[task setLaunchPath: launchPath];
[task setArguments: arguments];
[task setCurrentDirectoryPath:dir];
NSPipe *pipe;
pipe = [NSPipe pipe];
[task setStandardOutput: pipe];
NSFileHandle *file;
file = [pipe fileHandleForReading];
[task launch];
NSData *data;
data = [file readDataToEndOfFile];
NSString *response = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSTask を起動したら、ドメイン名、国などを提供する必要があります。私の質問の理由は、openSSL を使用して証明書署名要求を生成し、他のデータと一緒に送信できるようにする必要があるためです。 、サーバーに。上記のコードは壊れていません。その入力を送信する方法がわかりません。
また、誰かが Cocoa/ObjC である種の openSSL 実装を使用していて、NSTask を使用するよりも優れたオプションであると感じている場合、私はそれにも完全にオープンです。
前もって感謝します。