작업 관리자나 MSCONFIG를 사용해 일부 시작 프로그램을 비활성화한 뒤, 나중에 다시 활성화했는데도 부팅 시 해당 프로그램이 실행되지 않는 경우가 있습니다. 이런 문제를 겪고 있다면 이 글이 도움이 될 것입니다.

시작 프로그램을 다시 활성화해도 실행되지 않는 이유
이러한 현상이 발생하는 원인은 다음과 같습니다.
시작 응용 프로그램을 비활성화하면 아래 레지스트리 경로에 해당 데이터가 저장됩니다. 그리고 응용 프로그램을 다시 활성화할 때, 이 레지스트리 데이터가 REG_SZ 형식으로 복원됩니다.
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
문제는 경로에 환경 변수를 포함하는 시작 프로그램의 경우입니다. 이런 항목은 원래 REG_EXPAND_SZ 형식으로 지정되어야 환경 변수가 정상적으로 해석됩니다. 그런데 다시 활성화하는 과정에서 레지스트리 값이 REG_EXPAND_SZ가 아닌 REG_SZ로 복원되면, 환경 변수를 더 이상 사용할 수 없게 되어 프로그램이 실행되지 않는 것입니다.
문제 해결 방법
레지스트리 값을 REG_EXPAND_SZ 형식으로 변경하면 됩니다. 아래 순서대로 진행하세요.
- MSConfig의 시스템 구성 → 시작 프로그램 탭에서 각 응용 프로그램의 명령줄을 확인합니다.
- 명령에
%SystemRoot%와 같은 환경 변수가 포함되어 있다면, 해당 위치가 레지스트리에 있는지 확인합니다. - 레지스트리에 있다면 해당 위치와 명령어를 기록해 둡니다.
%SystemRoot%\regedit.exe를 실행하여 레지스트리 편집기를 엽니다.- 3단계에서 기록해 둔 레지스트리 위치로 이동하고, 해당 명령에 대응하는 값 이름을 확인합니다.
- 해당 값을 마우스 오른쪽 버튼으로 클릭한 후 삭제합니다.
- 같은 위치에 확장 가능한 문자열 값(Expandable String Value)으로 새 값을 만듭니다.
- 새 값의 이름을 5단계에서 확인했던 값 이름으로 지정합니다.
- 새 값의 데이터로 5단계에서 기록해 둔 명령어를 입력합니다.
참고로 읽어보세요: Windows 11/10의 시작 프로그램 경로, 폴더 및 레지스트리 설정 목록
진행 전 주의사항
레지스트리를 수정하기 전에는 반드시 시스템 복원 지점을 먼저 생성해 두세요. 잘못된 레지스트리 편집은 시스템 오류를 일으킬 수 있으므로, 복원 지점이 있으면 언제든 이전 상태로 되돌릴 수 있습니다.
관련 문제: 작업 관리자에 시작 프로그램 항목이 표시되지 않는 경우
