草庐IT

filesystems

全部标签

windows - 如何在 CreateFile 中打开卷的文件系统?

CreateFile上的MSDN页面说:字符串"\\.\C:\"可用于打开C:卷的文件系统。但是,以下代码总是返回错误:ERROR_PATH_NOT_FOUND。HANDLEh=CreateFile(L"\\\\.\\C:\\",FILE_READ_ATTRIBUTES,FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE,0,OPEN_EXISTING,0,0);我应该如何正确传递参数? 最佳答案 如果您想要一个卷句柄(与I/O控制代码一起使用),您需要去掉尾部的斜线。为了获得根目录

c# - 允许用户删除我的应用程序正在使用的文件?

我能否允许用户在Windows下删除我的应用程序正在使用的文件?在我的场景中,我有一个由我的应用程序监视的“快速添加”目录。当它看到新图像出现时,它会创建一张新幻灯片以在自动幻灯片放映中显示。我还想允许我的用户从我的“快速添加”目录中删除(和/或重命名)一个文件,并将其从幻灯片放映中删除。有没有一种方法可以标记文件,通知Windows我可以在我的应用程序使用它时删除它? 最佳答案 IsthereawayIcanflagthefilethatnotifiesWindowsthatI'mokayforittoremovethefilew

vb.net - 获取扩展文件信息详情

如何使用VB.net获取windows文件的详细信息?我指的详细信息类型是当我右键单击一个文件时发现的,比如一个MSword文档,然后单击“属性”并选择“详细信息”选项卡。我知道有些可以通过FileInfo获得,但不是全部,例如“Tags”。谢谢 最佳答案 对于那些你需要使用Shell32的东西。在COM选项卡中,找到并添加MicrosoftShellControlsandAutomation。下面是为给定文件创建属性值列表的代码:'classtoholdthegoodiesFriendClassShellInfoPublicPro

c# - 为目录中的整个组设置访问权限

我正在编写一个C#应用程序,它需要创建一个文件夹,然后授予DOMAIN\Users完全权限。当我尝试传入Environment.UserDomainName+@"\Users"时,它会抛出System.Security.Principal.IdentityNotMappedException。目前,我有这段代码:DirectoryInfodirInfo=newDirectoryInfo(path);DirectorySecuritydirSec=dirInfo.GetAccessControl();//Allusersshouldhavefullcontrol.dirSec.AddAc

c++ - Boost 1.66.0 : could not find boost libraries :boost_system, boost_filesystem、boost_thread、boost_date_time

我的配置是:操作系统:Windows10x64boost:1.66.0CMake:3.10VisualStudio:2017我正在以这种方式编译boost:bootstrap.\b2--build-dir=buildtoolset=msvcaddress-model=64--build-type=completestage运行CMake时出现此错误:couldnotfindboostlibraries:boost_systemboost_filesystemboost_threadboost_localeboost_date_time我搜索这些库,它们位于stage文件夹中。我尝试了B

windows - 如何访问位于 Windows 上具有保留系统名称(如 "CON")的文件夹中的本地文件?

我需要访问位于包含名为con的文件夹的本地路径下的文件。con、nul等文件夹名称保留用于特定系统任务,尝试访问此类目录下的文件将导致以下消息:形成命令提示符:“系统找不到指定的路径。”来自文件资源管理器:“C:\Users\USERNAME\con不可访问”。句柄无效。如果我无法更改此类文件夹的名称,我该如何访问此类文件?我注意到可以在命令提示符下使用以下命令创建此类文件夹名称:mdcon\并且可以通过以下方式删除:rd/q/scon此外,文件可以通过使用资源管理器将它们拖到文件夹中来成功添加。我也尝试过使用git-bash创建、删除和打开此类目录的内容,一切似乎都运行良好,但是,当

c# - 在 c# 的文件夹中查找最新创建的文件的好方法是什么?

我有一个网络文件夹,最多可包含10,000个文件(通常约为5000个)。使用C#获取该文件夹中最近创建的文件的文件路径的最快方法是什么?目前我正在使用下面的方法,但想知道是否有更快的方法。谢谢。DirectoryInfodi=newDirectoryInfo(xmlFileLocation);varfeedFiles=di.GetFiles("*.xml");varsortedFeedFile=fromsinfeedFilesorderbys.CreationTimedescendingselects;if(sortedFeedFile.Count()>0){mostRecentFil

c# - Windows 中文件的全局唯一 ID

我想知道如何在Windows(XP、Vista和7)中获取文件和文件夹的全局唯一ID,以及如何仅通过ID获取文件或文件夹的完整路径,例如getFileByGUID.我正尝试在C++、C#和PHP中执行此操作。即使文件被移动,全局唯一ID也应该保持不变,因此使用文件或文件夹的完整路径是行不通的。非常感谢任何帮助,谢谢! 最佳答案 您可以考虑使用DistributedLinkTrackingService. 关于c#-Windows中文件的全局唯一ID,我们在StackOverflow上找到

c# - 如何在 Windows 中加密文件夹?

我有一个C++程序,可以在AppData文件夹中存储某些文件,例如电影、mp3和Flash。问题是,虽然通常是隐藏的,但用户可以轻松访问此文件夹并获取这些文件中的任何一个。程序是否可以通过某种方式加密此文件夹,从而使用户无法访问这些文件(除非通过软件本身)?非常感谢任何其他解决方案(即使与上述内容无关)。 最佳答案 您可以使用自己的程序来加密文件或文件夹。但是您可以使用开源软件,如truecrypt.软件和代码可用。代码用C、C++和汇编语言编写 关于c#-如何在Windows中加密文件

java - Windows:使用 File.listRoots 显示映射的网络驱动器

代码:importjava.io.*;publicclassTestFileRoots{publicstaticvoidmain(String[]args){for(Filef:File.listRoots()){System.out.println(f.getAbsolutePath());}}}当我启动cmd并运行此类时,我的所有驱动器都会列出。当我以管理员身份启动cmd并运行它时,未列出我映射的网络驱动器。另外,当我手动启动我的服务器并调用File.listRoots()时,我所有的驱动器都会被列出。但是当我使用服务启动服务器时,没有列出网络驱动器。如何始终列出我的网络驱动器?我