Vista에서 자동 실행 응용 프로그램이 이상하게 작동하는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/15805

  •  08-06-2019
  •  | 
  •  

문제

우리가 작업 중인 제품을 사용하면 컴퓨터가 시작될 때마다 자동으로 실행되도록 사용자가 쉽게 설정할 수 있습니다.이는 제품이 대부분의 사용자의 기본 작업 환경의 일부이기 때문에 도움이 됩니다.
이 기능은 구현된 지 얼마 되지 않았으며 한동안은 모든 것이 잘 작동했습니다. 하지만 Vista에서 이 기능을 테스트하기 시작했을 때 제품이 시작 시 정말 이상하게 동작하기 시작했습니다.특히, 우리 제품은 서비스가 필요할 때마다 실행되는 다른 제품(X라고 함)을 사용합니다.실제 문제는 X가 로그온 직후 실행될 때마다 충돌이 발생하거나 디스크 액세스와 관련된 심각한 오류를 보고한다는 것입니다(이는 당사 제품을 통하지 않고 X가 직접 실행되는 경우에도 발생합니다).

이는 레지스트리의 "실행" 키에 제품을 등록하거나 "시작" 안에 있는 " 폴더메뉴를 시작하다", 실제로 실행을 시작하기 전에 ~20초의 지연을 두는 경우에도 마찬가지입니다.지연 시간을 70초로 변경하면 모든 것이 정상입니다.

로그온 후 즉시 수동으로 제품을 실행하여(바탕화면에 있는 바로가기를 두 번 클릭하여) 문제를 재현하려고 시도했지만 소용이 없었습니다.

이제 로그온 후 1분 후에 정상적으로 실행되는 응용 프로그램이 로그온 후 즉시 시작될 때 이러한 심각한 오류를 보고하는 것이 어떻게 가능합니까?

도움이 되었습니까?

해결책

이것은 "Boxing"이라는 Vista의 새로운 기능의 효과입니다.Windows에는 사용자/관리자가 Windows가 시작될 때 자동으로 실행되도록 응용 프로그램을 설정할 수 있는 여러 가지 메커니즘이 있습니다.이 기능은 주로 다음 목적 중 하나로 사용됩니다.1.사용자의 기본 작업 환경의 일부인 프로그램으로, 사용자가 일반적으로 컴퓨터를 시작할 때 가장 먼저 취하는 작업은 해당 프로그램을 시작하는 것입니다.2.모든 종류의 배경 "에이전트"(스카이프, 메신저, 윈앰프 등)

시작할 때 실행하기 위해 너무 많은(또는 너무 무거운) 프로그램이 등록되면 최종 결과는 로그인 후 처음 몇 초/분 동안 사용자가 실제로 아무것도 할 수 없게 되어 정말 짜증날 수 있습니다.Vista의 "Boxing" 기능이 제공됩니다.

간단히 말해서 Vista에서는 Run 키를 통해 호출된 모든 프로그램이 로그인 후 처음 60초 동안 낮은 우선 순위로 작동하도록 강제합니다.이는 두 가지 모두에 영향을 미칩니다. I/O 우선순위(매우 낮음으로 설정됨) 및 CPU 우선순위.매우 낮은 우선순위 I/O 요청은 파일 캐시를 통과하지 않고 디스크로 직접 이동합니다.따라서 일반 I/O보다 훨씬 느립니다.박싱 기간의 길이는 다음 레지스트리 값으로 설정됩니다."HKLM\소프트웨어\Microsoft\Windows\CurrentVersion\Explorer\Advanced\DelayedApps\Delay_Sec".

더 자세한 설명은 참조하세요 여기 그리고 여기

다른 팁

프로그램의 속성에 추가 정보가 필요할 수 있습니다.그냥 실행하는 대신 "다음 계정으로 실행"해야 합니다.

아마도 이 애플리케이션은 실행될 프로그램 대신 서비스로 개발되어야 할 수도 있고, 최적의 기회 창이 결정될 때 프로그램을 실행하는 서비스가 있을 수도 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top