【发布时间】:2012-05-16 14:36:51
【问题描述】:
好的,所以我需要制作一个类似于 winzip 或 winrar 的文件容器程序或命名空间扩展。
现在我不需要对文件进行压缩或加密或类似的特殊操作。
我需要的是创建一个 dll,它可以使用 .xyz 等扩展名(我知道如何将所有这些注册到注册表中,所以这不是问题),当点击时将打开“容器”在像 winzip 一样的窗口中。
我目前拥有的是一个程序,可以将所有文件添加到一个带有扩展名的大文件中(如 .xyz)。但是我不知道该怎么做,所以当我单击或打开这个新文件时,它们将在一个窗口中打开(文件系统浏览器?或类似的东西?就像 winzip 一样),这样我就可以查看所有文件在这个“容器”中。
谁能指出我正确的方向或如何去做,现在我很难过。
我还应该提到我在 c#.net 中工作
【问题讨论】:
-
所以不是你想在自定义窗口中打开你的自定义文件,你想让普通的 windows 文件资源管理器了解你的文件是什么,这样你就可以像普通的 zip 文件一样导航它,对吗?
-
我相信是的。我想要的是“打包”它们,然后像 zip 文件一样在窗口中打开它们。但是,它们中的文件被“包装”在我的自定义数据中。因此,在将文件拖放到此窗口中和从中取出时,它们将需要在此数据中进行包装/解包。就像当您将文件拖入和拖出 zip 文件夹时,它会被压缩/解压缩。
-
您希望它们显示在您创建的自定义窗口中吗?还是希望它们显示在标准的资源管理器窗口中?
-
一个标准的窗口就可以了:)
-
在自定义窗口中显示它们很容易,只需编写一个独立的应用程序并将其注册为处理程序即可。在标准的资源管理器窗口中显示它们非常困难,因为这需要您编写一个 shell 命名空间扩展,而这不能在 C# 中完成。
标签: c# windows filesystems shell-extensions winzip