2017-03-12 9 views
1

필자는 필자가 필요로했던 기능이 하나도없는 Windows 7 사진 뷰어를 대체하기 위해 C#에서 이미지 뷰어 응용 프로그램을 작성했습니다.이 뷰어는보기 화면에서 직접 등급과 키워드를 설정하고 덜 사용자 친화적 인 속성 페이지를 열지 않았습니다 . 내 필요에 맞게 작동하지만 슬라이드 쇼로 개선하고 싶습니다.Windows 사진 뷰어는 Windows 탐색기에서 슬라이드 쇼용 파일을 어떻게 가져 옵니까?

Windows 7 사진 뷰어에서는 일반적으로 그림의 키워드를 설정하고 Windows 탐색기를 "정리"기능을 사용하고 하나의 키워드를 클릭 한 다음 파일 하나를 두 번 클릭하고 거기에서 슬라이드 쇼를 실행했습니다.

하지만 Windows 탐색기에서 키워드 "조직"폴더의 파일을 두 번 클릭하면 내 앱이 명령 줄 인수, 즉 파일의 전체 이름을 가져옵니다.

System.IO.Path.GetDirectoryName을 사용하여 폴더에서 모든 파일을 가져 와서 내 슬라이드 쇼를 실행할 수 있지만 특정 "panache"가 부족하다는 것을 알 수 있습니까?

여기 코드를 묻지 않습니다. 하지만 누군가 나를 올바른 방향으로 향하게 할 수 있을까요? WindowsExplorer에서 실제로 필요한 파일 만 표시 할 수있는 PhotoViewer를 실제로 제공하는지 모르겠습니다. 그리고 왜.

도움 주셔서 감사합니다.

답변

1

Windows 탐색기의 정리 구성 기능을 사용하면 특별한 가상 폴더가 생성됩니다. 이 폴더에는 선택한 키워드가있는 파일 만 들어 있습니다. PhotoViewer를 여는 메커니즘은 표준 방식과 다릅니다. HKEY_CLASSES_ROOT \ jpegfile \ shell \ open 레지스트리 키를 열면 DropTarget 하위 키는 어디에 있는지 알 수 있습니다. 즉, 파일 셸을 두 번 클릭하면 DropTarget 하위 키의 CLSID가있는 inproc com 서버가 만들어지고 가상 경로이 IDropTarget 인스턴스에 전달됩니다. 따라서 PhotoViewer는 실제 디렉토리 대신 가상 객체 목록을 사용합니다.