草庐IT

V_FLAG_CB_ISSUER_CHECK

全部标签

node.js - Node : Check if a file is locked without locking the file

我正在尝试检查文件是否已被另一个应用程序锁定。我想我可以通过以写入模式打开文件轻松地做到这一点。fs.open('myfile.docx','r+',(err)=>{if(!err){console.log('Fileunlocked')}})但是,我不想锁定文件,因为其他应用程序随时可能写入数据。那么,有没有什么方法可以在不锁定文件的情况下检查文件是否被锁定(并且没有使用node.js或windowscmd的管理权限)? 最佳答案 您可以使用Handle来自Sysinternals的实用程序。它的工作原理是遍历所有Windows进

c++ - 具有重叠 I/O 的 FILE_FLAG_NO_BUFFERING - 字节读为零

我在使用带有重叠I/O的标志FILE_FLAG_NO_BUFFERING时观察到一个奇怪的行为。我调用了一系列ReadFile()函数调用,稍后使用GetOverlappedResult()查询它们的状态。我所说的奇怪行为是,即使文件句柄良好并且ReadFile()调用返回时没有任何错误(预期的ERROR_IO_PENDING除外),从GetOverlappedResult()调用返回的“字节读取”值是某些文件为零,每次我运行代码时,它都是一组不同的文件。如果我删除FILE_FLAG_NO_BUFFERING,事情就会开始正常工作,并且没有字节读取值为零。下面是我如何使用FILE_FL

windows - 为什么我不能使用 FILE_FLAG_BACKUP_SEMANTICS 打开 GENERIC_ALL 或 FILE_ALL_ACCESS 文件?

我正在尝试使用FILE_FLAG_BACKUP_SEMANTICS来绕过文件权限,但如果我请求GENERIC_ALL或等效的FILE_ALL_ACCESS它就不起作用作为访问掩码。CreateFile函数返回ERROR_ACCESS_DENIED。例如,h=CreateFile(L"c:\\working\\backup-semantics-test\\xyzzy\\test.txt",FILE_ALL_ACCESS,FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_SHARE_DELETE,0,OPEN_EXISTING,FILE_FLAG_BACKUP_S

c - 使用和不使用 FILE_FLAG_NO_BUFFERING 的 NTFS 文件访问时间

我正在尝试对NTFS的文件读取时间(顺序访问)进行基准测试。我的代码获取开始时间,执行大小等于4096字节(系统上NTFS的簇大小)的读取并记录结束时间。然后存储两个时间之间的差异,并重复该过程,直到到达文件末尾。我目前使用的文件大小是40K,所以得到10个时差值。当访问没有FILE_FLAG_NO_BUFFERING打开的文件(使用CreateFile)时,第一个block的访问时间接近30微秒,然后下降到大约7微秒用于后续访问(由于缓存)。当使用FILE_FLAG_NO_BUFFERING时,第一个block的访问时间接近21毫秒,随后的访问时间下降到大约175微秒。第一个bloc

windows - FILE_FLAG_NO_BUFFERING 如何与向通信设备打开的句柄交互?

正如标题所说,我正在编写一个网络程序,我在其中使用CreateFile打开网络驱动程序的句柄,并且我一直在试验NO_BUFFERING标志。大多数文档甚至都不会提及将其与通信设备一起使用,而那些这样做的文档(又名MSDN引用等)只是简单地提到您可以。有谁知道这会如何影响与设备的通信? 最佳答案 这是一个设备驱动程序实现细节,您在CreateFile()调用中指定的选项在IRP_MJ_REQUESTrequest中传递.我链接的那个是用于文件系统的,非常漂亮。通过IrpSp->Parameters.Create.Options链接单击

python - 通过 subprocess.check_output 调用的可执行文件打印在控制台上但不返回结果

在Windows机器上,我试图从Python调用外部可执行文件并收集其输出以进行进一步处理。因为在调用可执行文件之前必须设置本地路径变量,所以我创建了一个批处理脚本首先调用另一个脚本来设置%PATH%和然后使用给定的参数调用可执行文件。*.bat文件如下所示:@echooffcallset_path.bat@echoonexecutable.exe%*Python代码如下:print("beforecall");result=subprocess.check_output([batfile,parameters],stderr=subprocess.STDOUT,shell=True)

windows - 编译 GCC 7 : error: C++ preprocessor "/lib/cpp" fails sanity check

尝试从源代码构建GCC7.1.0。这不是我的第一次,它曾经在过去的GCC版本中工作。../configure--build=x86_64-w64-mingw32--host=x86_64-w64-mingw32--target=x86_64-w64-mingw32\--prefix=/c/mingw64--with-sysroot=/c/mingw64\--with-gmp=/c/mingw64/gmp--with-mpfr=/c/mingw64/mpfr--with-mpc=/c/mingw64/mpc\--with-isl=/c/mingw64/isl\--disable-nls-

Windows 内存管理 : check if a page is in memory

在Windows中,有没有办法检查页面是在内存中还是在磁盘(交换空间)中?我想知道这一点的原因是,如果页面在磁盘中,则通过不访问该页面来避免导致页面错误。 最佳答案 据我所知,没有记录在案的方法可以在用户模式下完成此操作。也就是说,可以在内核模式下确定这一点,但这将涉及检查属于内存管理器的页表条目——这不是您在任何类型的生产代码中真正不想做的事情.您要解决的真正问题是什么? 关于Windows内存管理:checkifapageisinmemory,我们在StackOverflow上找到一

windows - Windows 下的 GNU Make : Check for cygwin in PATH

我一直在Windows环境中整理一个makefile供我的团队使用。我决定使用MinGW的makeforWindows版本。我将该可执行文件及其依赖项放入一个应该位于每个人的PATH变量中的存储库位置。为简单起见,可执行文件已重命名为“make.exe”。然后我意识到,当某人的路径中有cygwin的bin文件夹时,我必须考虑到这种情况。echo、rmdir和mkdir等命令将从cygwin的bin文件夹中调用echo.exe、rmdir.exe和mkdir.exe。这意味着我需要适本地捕捉这种情况并为每个命令使用不同的标志。我在这里看到三种情况:Cygwin的bin路径位于存储库中ma

windows - 如何从本地 svn 副本(而不是 svn 服务器) check out 子文件夹?

对于一些简单的Windows批处理脚本,我想在某个版本的svn存储库的本地工作副本中临时创建某个文件夹的副本。我不想直接从svn服务器结帐(因为那时我的脚本需要知道服务器地址是什么,并且可能需要进行身份验证等)而且我不能只复制子文件夹,因为隐藏的.svn文件夹在更高的位置。我一直在尝试一些变体(使用包含.svn隐藏文件夹的repo文件夹):svncofile:///E:/repo/paper@48E:/temprepo但这行不通。我的Windows7命令提示符回答svn:E180001:UnabletoconnecttoarepositoryatURL'file:///E:/repo/