草庐IT

filesystems

全部标签

.net - 是否可以从另一个进程捕获 "file not found",然后将文件返回给该进程?

我有一个在目录中查找文件的遗留应用程序。它不能很好地处理丢失的文件。我想要做的是“捕获”文件未找到错误,然后将另一个文件发送回调用应用程序。类似于您在网络服务器上处理404错误并根据请求的URL返回内容的方式,但在本地文件系统上除外。这可能吗?更可取的是,在.Net中是否可行? 最佳答案 您可以通过拦截对WinAPI函数CreateFile的调用来做到这一点。这需要dll注入(inject)。在.NET中,您可以使用此库:easyhook.codeplex.com 关于.net-是否可以

c++ - 应用程序可以伪装成文件或文件夹吗?

我一直在研究集中我的电脑游戏存档,以便更轻松地备份和恢复,以及通过Dropbox将它们放在云端,但在很多地方,这使得它变得相当困难。我注意到Windows7和Vista现在支持符号链接(symboliclink),所以我一直在研究它,但我想知道以下内容:应用程序(vb.net或C++)是否有可能(代码示例或正确方向的要点)欺骗文件或文件夹?例如应用程序A(暗黑破坏神III或文明V之类的游戏)尝试读取文件A(游戏存档)或直接从文件A(游戏存档)中读取,应用程序B(存档存储库)检测到此读/写请求并通过自身传输请求,从而对文件执行请求B(实际游戏保存在另一个位置)。应用程序A不会以任何方式更

c++ - 知道路径是指 C++ 中的文件夹还是文件的最便宜的方法是什么?

我正在使用shell扩展覆盖处理程序,系统会向我传递一个我知道有效的路径,但我不知道它是文件夹还是文件。这个操作可能会被相对频繁地调用,所以我想尽可能便宜地确定它是一个文件还是一个文件夹。使用C++(特定于Windows可以满足我的要求),我怎样才能最好地完成这项工作? 最佳答案 GetFileAttributes()将提供此信息:constDWORDresult=GetFileAttributes("C:\\path\\x");if(INVALID_FILE_ATTRIBUTES==result){std::cerr

windows - 在 XP Fat32 中创建符号链接(symbolic link)或硬链接(hard link)

我正在寻找一种方法来使用符号链接(symboliclink)或硬链接(hardlink)来诱使程序认为文件实际上位于网络共享上时位于特定目录中。我知道可以通过Junction和Vista及更高版本使用符号链接(symboliclink),但这是一台WindowsXPFat32计算机(Junction仅适用于NTFS)。有问题的程序是AbeBooks的HomeBase3。根据他们的技术人员的说法,自从从2.3升级到3后,所有网络都被禁用,唯一的方法是找到某种方式让homebase.sqlite文件共享给两者。问题是他们声称无法更改配置,并且该程序只会查看SharedDocs\Homeba

windows - 寻找一种有效的方法来使用 SAN 上的文件检查 Windows 上的文件是否存在

我有一大组文件位于Windows2003服务器上的一系列目录中。每个目录中有超过一百万个文件。Windows服务器使用iSCSI连接到EqualogicsSAN。我有一个应用程序需要确定一组文件是否存在-该应用程序需要检查每个目录是否存在多达一百万个文件。我已经尝试了多种技术/脚本语言,包括perl、vbscript、dos批处理文件,但我无法获得每秒超过250个文件检查。检查800,000个文件需要将近50分钟。我尝试对perl程序进行多线程处理以一次检查多个文件,但这没有帮助。我还尝试使用dir、ls、find(通过cygwin)列出目录中的所有文件,它需要很多分钟才能开始输出任何

c# - 文件夹中可以存储的文件/文件夹是否有限制?

我们正在开发一个应用程序,适用于从WindowsXPSP3到Windows8的所有操作系统。用户可以触发一些操作,从而将文件存储在硬盘上。目前,我们正在为用户在特定目标文件夹中执行的每个操作创建一个具有唯一名称的文件夹。当前结构如下:MyTargetFolder||--0f8fad5b-d9cb-469f-a165-70867728950e||---SomeFile.txt||---AnotherFile.txt||--7c9e6679-7425-40de-944b-e07fc1f90ae7||---SomeFile.txt||---AnotherFile.txt..我想知道,是否有特

windows - 如何将自定义文件系统添加到 Window 的格式数据对话框的列表中?

我想在Window的“格式数据”对话框中的文件系统列表中添加一个文件系统。这些数据是从哪里填充的?我猜它是从现有的可安装文件系统(驱动程序、过滤器、微型过滤器)中枚举出来的?我想做的是创建一个自定义文件系统,该系统与NTFS基本相同,但差别很小。我想知道我是否可以创建一个IFS驱动程序/过滤器/微型过滤器,它允许我搭载现有的NTFS驱动程序(就像一个直通,但让它通过一个特定的文件系统驱动程序,而不是仅仅落到下一个可用的)和请允许我将其列在格式数据对话框中,同时调用我的格式函数,该函数将调用底层NTFS格式函数。我不确定这是否可能或如何完成。我基本上是在找人给我指明正确的方向。

Java - 确定磁盘格式(RAW 或 FS)

假设我有一个Windows主机,有10个磁盘:其中一半是RAW格式,另一半是某种文件系统格式。我正在寻找一种方法来从Java代码中确定哪个驱动器是RAW格式,哪个是FileSystem格式。到目前为止,我能够使用WMI查询获取有关磁盘的信息(例如容量、block大小、索引等),但我找不到确定磁盘格式的方法。 最佳答案 我找到了一种通过diskpart实用程序确定磁盘格式的方法。我在所有磁盘上运行detaildisk,然后解析输出以了解它是否是RAW/FS(RAW/FS磁盘的输出不同)。我的脚本基本上是这样的:selectdisk1d

java - 如何获取windows系统文件夹的路径?

我在获取系统文件夹路径时遇到问题,例如"MyComputer"、"Library"、"Homegroup"等用Java。问题是这些文件的路径类似于::{xxxx-xxxxxx-xxxxxx}而不是简单的路径C://users...要获取路径,我使用filename.getPath()。我怎样才能获得这些文件的正常路径,以便我可以像处理其他文件一样处理它们? 最佳答案 我建议在您的类路径中添加一个文件夹。您可以在何处添加文件、图像等。 关于java-如何获取windows系统文件夹的路径?

linux - 如何在包含该文件的 linux 上查找 8.3 命名文件

我已经陷入困境-我有非常古老的dBase表,其中包含8.3文件名,这些文件名显然与文件一起保存在旧的msdos/windows系统中。我现在只有文件和dBase(DBF文件)——但是连接数据库中的行和实际文件的链接是8.3格式的。文件和dBase文件已从旧的Windows机器复制到Linux机器。例如数据库将有一行包含:{"fileid":1,"dosname":"APPLE~1.JPG"},{"fileid":2,"dosname":"APPLE~2.JPG"}在我可能拥有的文件目录中的某处“苹果树.JPG”和"苹果电脑.JPG".我怎么知道哪个是哪个?有没有我可以遵循的某种逻辑(比