>> Delete No. 49144 article
No. [프로그래밍] 왜 이리 막히는게 많은지..도와주세요

등록 2002-05-16 03:08:00 By localhost     조회 1
이름 ㅡㅜ    

		우선 밑에 답변 달아주신분 감사합니다.
너무 바빠서 감사답변도 못달겠네요. 너그러이 생각해주세요.
 다시 묻게 됐습니다. ㅡㅜ
시스템 콜함수 때문인데요..
system을 쓰다가 안되서 execve을 씁니다.
system을 쓰니까 어느부분에는 system을 인식하고
어떤부분에서는 system을 아예 무시하고 다음줄 소스부터
실행하더군요. 무슨 조화인지..
 일단 소스 보여드릴께요
 main()
{
 	char co1<>="/bin/ls";
	char co2<>=" -al";
	char st2[100]={0};
  	char *argvr[4];
	argvr[0]="bash";
	argvr[1]="-c";
	argvr[3]=0;
 	strcat(st2,co1);
	strcat(st2,co2);
	argvr[2]=st2;
	execve("/bin/sh",argvr,(char *)0);
	printf("complete message!!! i want see.pleas");
 }
문제가 어떤거냐면 이놈을 실행시키면 execve까지 실행하고
그다음 printf절을 무시해버립니다. 혹시나해서 다르게 소스도
고쳐봤지만 execve실행하고 그다음 종료하고 빠져나가버리는것같더군요.
왜 이런거죠?
execve저거 man페이지 뒤지면서 쓴건데 ㅡㅜ.. 틀렸나요?
 시스템 콜함수에 대한 지식도 없는대다가 프로젝트는 해야겠고..
기한은 임박해오고 자꾸 질문드리는게 죄송스럽지만..
이렇게 밖에 해결할수가 없군요..
 --
 좋은 하루되세요.
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved