2017-10-29 1 views
0

어떻게 내 pid에서 브라우저 탭을 죽이고 닫을 수 있습니까? 나는 명령 시도 :pid에서 탭을 제거하고 닫는 방법은 무엇입니까?

int kill(pid_t pid, int sig); 

을하지만, 비주얼 스튜디오는 킬 (kill) 식별자가 발견되지 않는 것을 말한다 있기 때문에하지 작동합니다. 모든 라이브러리 (sys/types.h, signal.h)를 추가했습니다.

그런 다음 TerminateProcess(HANDLE,UINT) 명령을 시도했습니다. 프로그램과 함께 작동하지만 (모든 창을 닫을 수는 있지만) 브라우저 탭에서는 작동하지 않습니다. 탭 내용을 지우지 만 탭은 여전히 ​​열려 있습니다.

어떻게 해결할 수 있습니까? 감사합니다.

+0

여러 프로세스를 생성하는 Chrome을 닫으려고하면 잘못된 프로세스가 종료 될 수 있습니다. 창'HWND'가있는 경우 대신 창을 닫아야합니다. –

+0

브라우저에서 가능한 API를 검색하면 깨끗한 방법으로이를 수행 할 수 있다고 생각합니다. 원하는 브라우저로 추가하십시오. (질문이 너무 광범위하기 때문에 하나만) – Stargateur

+0

프로세스를 종료하여 브라우저 탭을 닫으려면 어떻게해야합니까? – immibis

답변

2

프로세스를 강제 종료하여 탭을 닫을 수 없습니다. 최신 브라우저는 보안 및 안정성을 이유로 웹 콘텐츠에 하위 프로세스를 사용합니다. 만약 자식 프로세스가 죽으면 브라우저는 추락 한 것으로 간주하고 페이지를 복원 할 것인지를 묻거나 복원 할 것입니다.

ShellWindows object을 사용하면 열려있는 Internet Explorer 창과 상호 작용할 수 있습니다.

관련 문제