Outlook에는 특정 파일 형식의 이메일 첨부 파일을 직접 열 수 있는지 또는 사용자가 "신뢰할 수 있는 소스의 첨부 파일만 열어야 합니다" 대화 상자를 거쳐야 하는지 여부를 제어하는 설정이 있는 것 같습니다. 이 대화 상자의 옵션 중 하나는 "이 유형의 파일을 열기 전에 항상 확인"입니다.
"항상 묻기" 설정을 선택 해제하려면 Outlook을 닫고 관리자로 다시 연 다음 이 설정을 변경하려는 모든 파일 형식을 열어본 다음 "항상 묻기" 설정을 해제해야 합니다. 그런 다음 Outlook을 닫고 일반 사용자로 다시 엽니다. 이 프로세스를 자동화하는 방법을 찾으려고 노력하고 있지만 이 설정이 어디에 저장되어 있는지 알 수 없는 것 같습니다. 나는 그것이 레지스트리 어딘가에 묻혀 있다고 가정하지만 Outlook에도 많은 양의 물건을 저장하는 습관이 있습니다(기침자동 완성 목록기침) 임의의 데이터베이스 파일에 있습니다.
Outlook이 첨부 파일 형식의 "안전 상태"를 어디에/어떻게 저장하는지 아는 사람이 있습니까?
답변1
기술적으로 말하면 이 메시지는 보안 센터(Excel 또는 Word에서) 아래의 "Outlook 첨부 파일에 대해 보호된 보기 활성화"를 선택 취소한 후에 Outlook에서 발생합니다. Outlook 보안 센터에는 제한된 보기 설정을 비활성화/활성화하는 이 옵션이 표시되지 않으므로 해당 Office Suite 프로그램으로 이동해야 합니다. 이 설정을 활성화하면 메시지가 다시 표시되지 않지만 이제 Excel/Word를 열 때 제한된 보기 설정 경고가 나타납니다. 결국 MS 포럼에서 Roady가 제공한 수정 사항을 수행했습니다. Outlook 바로 가기를 마우스 오른쪽 버튼으로 클릭하고 관리자 권한으로 실행한 다음 첨부 파일을 여는 동안 Ctrl + Shift를 누르면 "이전에 항상 묻기" 확인란을 선택 취소할 수 있습니다. 이 유형의 파일을 여는 중입니다."
답변2
헤아릴 수 없을 만큼 아이러니한 상황 속에서, Adam Fowler는 내가 질문을 한 다음 날 다음 블로그 항목을 게시했습니다. https://www.adamfowlerit.com/2017/09/disabling-outlook-opening-mail-attachment-prompt/.
요약하자면(그의 게시물이 어느 날 사라질 경우에 대비):
레지스트리에는 이 분기 아래에 각 "신뢰할 수 있는" 파일 형식에 대한 클래스가 있습니다.HKLM\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes
예를 들어 Excel 파일은HKLM\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\Excel.Sheet.8
또는 (최신 버전의 Excel의 경우...)HKLM\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\Excel.Sheet.12
EditFlags
16진수 값으로 키를 설정/추가하면 00,00,01,00
"항상 전에 묻습니다..." 팝업이 제거되고 파일이 열리도록 허용됩니다.
따라서 Visio 파일 버전 15를 열 수 있도록 허용하려면 다음과 같은 레지스트리 항목을 추가/편집해야 합니다.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\Visio.Drawing.15]
"EditFlags"=hex:00,00,01,00
Adam의 게시물에서 얻은 실제 통찰력은 다음을 사용할 수 있다는 것입니다.프로크몬(sysinternals에서) 관심 있는 파일 형식을 디코딩합니다. 이렇게 하려면 procmon을 열고 Process name contains outlook.exe
및 Operation is SetRegValue
. 이는 Outlook에 의해 레지스트리 값이 설정되는 이벤트와 더 중요한 것은 그 값이 무엇인지 보여줍니다. 파일 형식을 "클래스 이름"에 매핑하는 것은 까다로운 부분입니다. 이것이 어떻게 작동하는지 항상 명확하지는 않습니다. 각 응용 프로그램이 이러한 중 일부를 가져올 수 있다고 생각합니다(제 경우 IrfanView는 .gif 및 . jpg 확장자)
그런 다음 관리자 권한으로 Outlook을 열고 잔소리를 하지 않으려는 각 파일 형식의 예를 엽니다. 이 과정을 진행하면서 열린 대화 상자에서 "항상 묻기..." 옵션을 선택 취소하면 파일을 열 때 해당 레지스트리 항목이 편집됩니다. Procmon은 변경된 정확한 항목을 표시하고 나중에 이를 .reg 파일에 저장하면 한 번에 모두 재설정할 수 있습니다.
내 경우에는 .reg 파일을 생성하기 위해 약간의 Python 스크립트를 실행하여 정기적으로 재설정할 만큼 충분합니다. 목록에 필요한 리프를 추가/제거하면 됩니다.
header_row = 'Windows Registry Editor Version 5.00'
reg_branch = 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes'
leafs = [
'Excel.Sheet.12',
'Word.Document.12',
'PowerPoint.Show.12',
'Excel.Sheet.8',
'Word.Document.8',
'PowerPoint.Show.8',
'Visio.Drawing.15',
'IrfanView.png',
'IrfanView.gif',
'IrfanView.jpg',
]
key_name = '"EditFlags"'
key_value = 'hex:00,00,01,00'
print(f"{header_row}\n\n")
for leaf in leafs:
print(f"[{reg_branch}\{leaf}]")
print(f"{key_name}={key_value}\n")