창을 종료 할 때 실행할 작업을 예약하는 방법


86

Windows를 종료 할 때 실행되도록 Windows XP에서 작업을 예약하는 방법 창을 닫을 때마다 C #으로 작성한 간단한 명령 줄 프로그램을 실행하고 싶습니다. 내 컴퓨터가 종료 될 때이 작업을 수행하기위한 예약 된 작업 옵션이없는 것 같습니다.

답변:


92

gpedit.msc (로컬 정책) 실행

컴퓨터 구성-> Windows 설정-> 스크립트-> 종료-> 속성-> 추가


28
로그 오프시 배치 스크립트를 실행하려면 .bat 파일을 직접 참조하는 것이 작동하지 않는 것으로 나타났습니다. 내가 사용하는 경우, C:\Windows\System32\cmd.exe스크립트 이름/C C:\path\to\batch\script.bat는 AS 스크립트 매개 변수 , 그것은했다.
Dan Stevens

6
경고 : fastboot (Windows 8 이상에서 기본적으로 활성화 됨)를 사용할 때 그룹 정책 시작 및 종료 scipts가 실행되지 않습니다. 이 경우 다시 시작 또는 강제 종료 (명령 프롬프트에서) 만 실제로 컴퓨터를 종료합니다. 다른 모든 경우 (시작 메뉴 종료)에서는 컴퓨터 커널이 최대 절전 모드로 전환되고 부팅시 다시 시작되며 GPO 시작 및 종료 scipts는 무시됩니다.
voji

@voji : Windows Server에서도 마찬가지입니까?
sampathsris apr

재시작은 어때?
dangalg

이들은 Server Core 1909에서 전혀 실행되지 않는 것 같습니다
gordy

41

Dan Williams의 답변 외에도 시작 / 종료 스크립트 를 추가 하려면 컴퓨터 구성 아래에서 Windows 설정을 찾아야합니다 . 로그온 / 로그 오프 스크립트 를 추가 하려면 사용자 구성 아래에서 Windows 설정을 찾아야합니다 .

따라서이 정보가 포함 된 Dan의 말을 반복하기 위해

시작 / 종료 :

  1. gpedit.msc (로컬 정책) 실행
  2. 컴퓨터 구성-> Windows 설정-> 스크립트-> 시작 또는 종료 -> 속성-> 추가

로그온 / 로그 오프 :

  1. gpedit.msc (로컬 정책) 실행
  2. 사용자 구성-> Windows 설정-> 스크립트-> 로그온 또는 로그 오프 -> 속성-> 추가

출처 : http://technet.microsoft.com/en-us/library/cc739591(WS.10).aspx


2
이것이 더 나은 대답입니다. GPEditor를 열면 설명하는대로 두 개의 노드가 표시됩니다. 두 노드 모두 Windows 설정 옵션이 있으므로 수락 된 답변이 답변보다 명확하지 않습니다. 팁 고마워. 매우 유용합니다.
Seth Spearman

34

작업 스케줄러 사용을 선호하는 사용자를 위해 이벤트 뷰어의 시스템 로그에서 이벤트 1074가 기록 된 후 작업이 실행되도록 설정하여 다시 시작 / 종료가 시작된 후 작업이 실행되도록 예약 할 수 있습니다. 그러나 시스템이 다시 시작 / 종료되는 동안 실행되는 매우 짧은 작업에만 유용합니다.

  • 작업 스케줄러에서 :

    작업 시작 : 이벤트
    로그 : 시스템
    원본 : USER32
    EventID : 1074

  • 명령 프롬프트에서 :

    schtasks / create / tn "작업 이름"/ tr "작업 파일"/ sc onevent / ec 시스템 / mo * [system / eventid = 1074]

설명 : / ec 옵션은 Windows Vista 이상에서 사용할 수 있습니다. (@ t2d 감사합니다)

작업 상태는 다음과 같을 수 있습니다.

사용자가 네트워크에 로그온하지 않았기 때문에 요청 된 작업이 수행되지 않았습니다. 지정된 서비스가 없습니다. (0x800704DD)

그러나 그것이 실행되지 않았다는 의미는 아닙니다.


팁 고마워! @Oz, 이것은 재시작과 종료시 실행됩니까? 내가 커버에 노력하고있어 경우 Windows Update를 강제로 다시 시작입니다 ...
에릭 Eidt

예,이 이벤트는 재시작 / 종료시 기록되기 때문입니다.
Oz Edri

인수 /ec system는 존재하지 않지만이라고 /ru system합니다. 참조 support.microsoft.com/en-us/kb/814596#bookmark-4
T2D

@ t2d, / ec는 최신 버전에 있지만 / ru는 완전히 다른 것을 나타냅니다. EC를 사용하면 이벤트 채널을 지정할 수 있고 ru를 사용하면 다른 사용자로 실행할 수 있습니다. 그럼에도 불구하고 귀하의 의견에 감사드립니다. 그에 따라 게시물을 수정하겠습니다.
Oz Edri

1
예제의 수정 자에 오타가 있습니다. 그것은해야 ... /mo *[system/eventid=1074]하지,.../mo *[system/evendid=1074]
testworks

4

한 가지 해결 방법은 간단한 배치 파일을 작성하여 프로그램을 실행 한 다음 컴퓨터를 종료하는 것입니다.

명령 줄에서 종료 할 수 있으므로 스크립트가 매우 간단 할 수 있습니다.

c:\directory\myProgram.exe
C:\WINDOWS\system32\shutdown.exe -s -f -t 0

4

GPEdit.MSC를 실행하는 경우 컴퓨터 구성-> Windows 설정-> 스크립트로 이동하여 시작 / 종료 스크립트를 추가 할 수 있습니다. 이것은 단순한 배치 파일 일 수도 있고, 심지어는 완전한 EXE 일 수도 있습니다. 또한이 동일한 도구에서 로그온 및 로그 오프 스크립트에 대한 사용자 구성을 조정할 수 있습니다. 이 도구는 WIndows XP Home에서 사용할 수 없습니다.




1

내가 제안 할 수있는 것은 .bat 파일에 대한 바로 가기 (예 : 바탕 화면)를 만들고 컴퓨터를 종료 할 때 (그리고 .bat 파일을 실행하려면) 생성 한 바로 가기를 클릭하는 것입니다. 이 작업을 수행 한 후 .bat 파일을 편집하고 다음 코드 줄을 끝에 또는 필요한 곳에 추가합니다.

c:\windows\system32\shutdown -s -f -t 00

이것은 무엇입니까

  1. 종료 프로세스를 실행합니다.
  2. 경고를 표시합니다.
  3. 실행중인 모든 프로세스를 강제로 중지합니다.
  4. 즉시 실행

1

Windows 10 Pro에서는 배치 파일을 등록 할 수 있습니다. cmd.exe를 등록하고 bat 파일을 param으로 지정하는 해결 방법은 필요하지 않습니다. 방금이 작업을 수행하여 종료 스크립트와 시작 (부팅) 스크립트를 모두 등록했는데 제대로 작동했습니다.


0

또한 "그룹 정책 스크립트에 대한 최대 대기 시간 지정"및 "실행될 때 종료 스크립트에 지침 표시"를 활성화해야 여기에 설명 된대로 작동하게 됩니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.