1
PDFドキュメントを印刷して終了するまで、LPを実行しようとしています。 の後、私はunlink()でファイルを削除しようとしています。ANSI C - プロセスの実行、待機、ファイルの削除
しかし、execvがLPを実行する前でも待機は終了します。私はかなり確信していません これを処理する方法と、なぜexecvが終了するまで待機していないのですか?
これを達成する他の方法はありますか?上記のコードを実行するとき
if(fork())
{
fprintf(stderr, "Executing command %s %s", "/usr/bin/lp", homedir);
char *const parmList[] = {"/usr/bin/lp", homedir, (char *)0};
execv("/usr/bin/lp", parmList);
}else
{
int pid, status;
fprintf(stderr, "Wait\n");
pid = wait(&status);
fprintf(stderr, "Finished waiting.\n");
unlink(homedir);
}
ouputをこのようになります。
Wait
Finished waiting.
Executing command /usr/bin/lp /home/user/Docs/test.pdf
/usr/bin/lp: Error - unable to access "/home/user/Docs/test.pdf" - No such file or directory