草庐IT

if判断

全部标签

Windows 批处理 : how to check if a text file is blank (the file has an empty line so size is non zero)

文件的问题是它有时包含一个空行,因此大小不为零。我试过了,但是因为它有一个空行,所以它返回1而不是0。有什么解决方法的建议吗?set/avarTestPoints=0for/f%%ain('type"file.txt"^|find""/v/c')doset/avarTestPoints=%%a 最佳答案 大小可以用检查for%%ain("file.txt")doecho%%~za其中%%~za是%%a引用的文件大小要测试文件是否只包含空行,可以使用这些命令中的任何一个(for/fusebackq^eol^=%%ain("file.t

C++判断当天软件是否未打开(Win​​dows)

因此,如果软件没有在同一天打开,我需要执行一些操作我的计划是将今天日期的纪元以来的天数存储在我的数据库中。然后,当软件打开时,它将从数据库中提取自上次纪元以来的天数,然后将其与自上次纪元以来的今天天数进行核对。这样我就知道是否是同一天。我对C++非常缺乏经验,我一直在查看“stdafx.h”中的DateTime函数,但是我无法获得自上一个纪元以来的天数。因此,如果这是今天第一次打开该软件,我这样做的目标是清除数据库。如果今天已经打开了,那就继续,什么都不做。我不知道如何在C++中处理这个问题。如果它是python或C#或java我不会遇到这个问题。那么我将如何在C++中解决这个问题?

windows - 有什么方法可以判断 Windows 目录是否可写而无需实际写入它进行测试?

我有一些旧的vb6代码,通过写入Windows目录然后读回值来检查Windows目录是否可写。但是...我们有一个病毒扫描程序将其视为可疑行为,所以我想在不接触它的情况下进行检查。有任何WindowsAPI调用吗?(适用于Win98及以上版本) 最佳答案 这里要记住的是文件系统是易变的。我能看到这段代码被使用的唯一方法是首先检查文件夹是否可写,然后尝试写一些你想写的东西。这里的问题是,对于易变的文件系统,在您进行检查和尝试写入之间,事情可能会发生变化。因此,如果您的写入失败,您仍然必须能够处理异常。这意味着初始检查几乎被浪费了。最好

python 3 : Identify if a python script is executed by bash or powershell

我有一个由powershell和git-bash运行的python脚本。如果脚本是在powershell或git-bash中执行的,是否有任何方法可以在python代码中识别 最佳答案 可以查看当前进程所属的进程树。importpsutilimportosthis_proc=psutil.Process(os.getpid())#Getprocessinformationforthisprocessparent_proc=psutil.Process(os.getppid())#Getprocessinformationforthe

windows - 如何判断打印机是否支持双向通信

我正在使用PrintSpoolerAPI来自动执行一些打印机管理任务;目前我从事某些需要双向通信的功能,这不是问题(发送BIDI请求和读取输出数据按预期工作)但在尝试执行请求之前,我想确保acual设备支持BIDI通信(以避免任何COM异常)。有关PrintSpoolerComponents的文档解释说,应用程序和驱动程序都必须实现双向通信接口(interface);当然我是为我的应用程序做的(否则无法发送请求),但驱动程序通常由第三方提供。此外,打印提供程序DLL必须实现SendRecvBidiData函数...由于Enablebidirectionalcommunication选项

c++ - 如何判断一个文件或文件夹是在固态硬盘上还是在硬盘上?

如何在C或C++中以编程方式确定指定路径是在闪存(SSD)驱动器上还是在磁性硬盘驱动器上?我只对固定驱动器感兴趣,对可移动驱动器不感兴趣,尽管确定可移动驱动器的类型也很好。我正在寻找一种解决方案来查询Windows对指定路径及其所在的物理驱动器的看法。没有基准测试!另请注意,由于SMRHDD,寻求TRIM支持并不是一种有效的方法。 最佳答案 来自OldNewThing文章:如何判断文件是否在SSD上?Thistakesadvantageofthetrickwelearnedlasttimewhereyoucanmakeastorag

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进

windows - 如何在批处理文件中正确限制 IF 命令?

我正在尝试制作一个小的批处理文件,它根据用户输入使用IF语句运行给定的命令。第5个选项运行多个命令,因此为了保持简洁,我将其限制在括号内并将其放在多行中。但是,我似乎无法找出正确的语法来确保它仅在用户选择时运行该选项。无论您选择什么选项,它都会运行选项5括号内的行。更糟糕的是,选择5之后的任何选项(即选项6-9)将使您输入一些内容以满足它在实际执行您首先选择的选项之前等待的输入。很明显,我做错了什么,程序无论如何都在遵循该命令。对于这个令人难以置信的菜鸟问题,我深表歉意,但我已经在互联网上搜索了很长时间,并尝试了很多不同的命令和格式化方式。如果有人能告诉我哪里出错了,我将永远感激不尽,

python + window : run exe as if it's unrelated to the current process

我知道我可以使用subprocess.Popen来运行可执行文件,并可能将标准输入和标准输出重定向到文件/使用管道连接到我的进程。但是,有没有一种方法可以运行可执行文件,使生成的进程与当前的Python进程无关?意思是,我想以与双击.exe相同的方式启动一个进程,或将其名称键入Start->Run... 最佳答案 在Windows上,请参阅os.startfile(). 关于python+window:runexeasifit'sunrelatedtothecurrentprocess,

windows - 如何判断命名管道的服务器端是否是管理员?

我正在尝试在WindowsXPSP2+上使用命名管道。管道服务器将是一项服务,作为某种管理员/系统级帐户运行。管道客户端可以是任何用户,可能是访客,也可能是管理员。就我而言,我可以让guest帐户与我以管理员身份运行的服务成功通信。在我开始在客户端代码中使用管道之前,我想验证管道的另一端是否确实由管理员/系统拥有。我发现了GetSecurityInfo函数,我认为我应该能够将其用作解决方案的一部分。但是,我不知道如何从SID到“是管理员”检查。 最佳答案 由管理帐户(包括系统帐户)创建的所有对象的默认所有者是众所周知的管理员组,您不