Я хочу Открыть File Dialog с ****.class ***, ****.jar *** фильтры. Я хочу это, *.jar файлы будут рассматривать как папки (нажатие OK, или двойной щелчок должен отобразить содержание файла банки [*.class]). Эта возможность очень похожа на плагин архива TotalCommander, которые позволяют Вам просмотреть внутренние оперативные архивные файлы (без потребности извлечь их, и т.д....)
Какие-либо идеи, как это могло быть сделано? Я могу использовать что-то, что уже реализовано?
Спасибо, парень
Чтобы сделать это с помощью стандартного проводника Windows и общих диалоговых окон, вам нужно будет написать или найти подходящее расширение пространства имен Shell.
Расширение пространства имен оболочки - это COM-объект, который позволяет вам представлять виртуальные папки в оболочке проводника. Таким образом, в вашем случае расширение оболочки позволит пользователю перемещаться по файловой структуре jar, как если бы это была папка на вашем компьютере.
Вы можете написать расширение оболочки с управляемым кодом, но, по крайней мере, для версий инфраструктуры до 4.0 это не поддерживалось MS из-за возможных проблем с конфликтом загрузки более чем одной версии платформы в процесс. Теперь, когда 4.0 поддерживает параллельную загрузку версий фреймворка, возможно это поддерживается.
Вот ссылка на статью о написании расширения пространства имен оболочки
http://msdn.microsoft.com/en-us/magazine/cc188741.aspx
Я никогда не пробовал, но вот расширение, которое поддерживает обработку файлов с поддержкой 7-zip в виде папки. Может быть, это поможет вам хотя бы начать работу, если вам нужно сделать это самому.
http://7zipshell.codeplex.com/
Вот статья, описывающая открытие Jars в C #:
http://www.codeproject.com/KB/files/opening_jars_cs.aspx
Если вы объедините это либо с ответом Криса о написании расширения или вы напишите свой собственный диалог, если это проще, вы сможете делать то, что хотите.