2009-06-16 4 views
6

DllImports를 사용하지 않고 C#에서 관련 아이콘을 가져 오는 방법이 있습니까?WinAPI없이 파일, 폴더 또는 드라이브에서 관련 아이콘 가져 오기

Icon.ExtractAssociatedIcon을 사용할 때 드라이브, 폴더, SpecialFolder의 환경 또는 네트워크 첨부 폴더의 모든 파일 아이콘을 얻지 못하는 것 같습니다. 그래서 .NET을 사용하여 아이콘을 얻는 다른 방법이 있습니까?

답변

4

닷넷 관련 아이콘을 추출하기위한 하나 개의 방법이 있고, 당신은 이미 그것에 대해 언급했다. 창에서 아이콘을 얻으므로 찾아 낼 수있는 모든 lib는 pinvokes를 사용합니다. 따라서 완전히 휴대 가능한 아이콘 추출 엔진이 필요하다면, 슬프게도 스스로 작성해야합니다. 그러나 이것이 유일한 방법이며 내부의 모든 시스템 고유 코드는 숨겨져 있습니다.

+0

흠, 불행합니다. 당신의 도움을 주셔서 감사합니다. – Patrick

0

질문에 대한 답변이 아니지만 사용 중일 수 있습니다. 당신은 여전히 ​​VS2005

를 사용하는 경우

당신은 2005 년 2008

대체 Common7 \ VS2008ImageLibrary \ VS2008ImageLibrary.zip \이 파일

$ VisualStudiosInstallationDirectory에서 MS의 대부분의 윈도우 아이콘을 얻을 수 있습니다

0

CodeProject에 코드가있는이 문서는 도움이 될 수 있습니다.

Extract icons from EXE or DLL files

+0

그의 소스 코드를 다운로드하면 그는 DllImport ("kernel32"...)를 사용하고 있습니다. 나는 비 Windows 시스템에서도 코드를 사용할 수 있기를 원한다. (# if 문으로 코드를 전부 바꾸지 않고). – Patrick

+0

os'es에서 아이콘을 추출 할 수있는 이식성있는 방법이 없다고 생각합니다. – Nifle

+0

Java는 이식성이 뛰어납니다. Java가 모든 종류의 아이콘을 추출 할 수 있는지 또는 잘못된 것인가? – Patrick

관련 문제