2010-03-22 5 views
8

다양한 파일의 아이콘 위에 다른 아이콘 오버레이를 추가하려고합니다 (참고 : 특정 유형의 모든 파일이 아니라 특정 파일 만). 내가 무슨 뜻인지 알지 못한다면 TortoiseSVN, TortoiseHG, Dropbox 등과 같은 프로그램을 언급하고 있습니다..NET : 파일 아이콘 오버레이를 만드는 방법

.NET에서이 작업을 수행 할 수 있습니까? 그렇다면 어떻게? 저기 도서관이 있기를 바래요. this CodeProject article에 대해 이와 비슷한 내용이 있지만 .NET이 아닙니다.

미리 감사드립니다.

답변

5

아니요, .NET이 아닙니다. 셸 프로그래밍은 관리되지 않는 C/C++ 도메인입니다. Shell32.dll에는 스크립팅 언어 및 .NET에서 사용할 수있는 일부 함수를 만드는 형식 라이브러리가 있습니다. 그러나 IShellIconOverlay 인터페이스는 IUnknown에서 상속 받아 스크립팅에 액세스 할 수 없습니다. 기술적으로는 가능하지만 SDK의 ShlObj.h 헤더 파일에있는 선언을 템플릿으로 사용하여 C#에서 인터페이스를 다시 선언해야합니다. 누군가 그것을 어딘가에 만들었지 만 아마도 그것을 작동 시키려고하는 것은 드문 일입니다. 빠른 Google 검색은 유용하지 않습니다.

.NET 4.0은 CLR 버전 주입 문제를 해결하기 위해 몇 가지 활동을 다시 시작합니다. 나는 아직 그 징조를 보지 못했다.

+0

.NET 4.0이 지금 출시되었습니다. 지금 가능합니까? – EaterOfCode

+0

절대 불가능 *하지 못했습니다. 내가 게시 한 이후로 아무 것도 바뀌지 않았습니다. .NET 4.0은 활동을 재개하지 않았습니다. Microsoft가 지원하지 않는다고 선언했기 때문일 수 있습니다. –

+1

. NET은이 모든 기능을 잘 지원합니다. 거의 모든 표준 확장을 구현했습니다. 아이콘 오버레이는 여기에 있습니다. http://www.codeproject.com/Articles/545781/NET-Shell-Extensions-Shell-Icon - 오버레이 처리기 –

관련 문제