草庐IT

修改频段

全部标签

c# - 如果文件在我的程序之外被修改,如何得到通知?

我的程序的一部分必须跟踪一组文件,包括它们在内存中的路径和哈希码。问题是,用户可能想在任何时间点使用外部程序编辑文件。如果发生这种情况,我希望我的程序得到通知,以便它更新其内存中该文件的相应哈希码以及许多其他可能的操作。理想情况下,我希望通知新线程或专用后台线程并执行必要的操作,而不是主GUI线程。我正在使用ConcurrentDictionary和类似的线程安全数据结构。我正在使用C#5、Windows7。 最佳答案 您正在寻找FileSystemWatcherListenstothefilesystemchangenotific

windows - 带有创建时间和最后修改时间的目录命令

我想使用dir命令并将文件名作为第一列,创建日期时间作为第二列,修改日期时间作为第三列。我怎样才能做到这一点?http://www.computerhope.com/dirhlp.htm这表明可以使用/T但不确定如何使用它,因为dir/TCAW没有列出我需要的格式。 最佳答案 正如ChristopherPainter所说,DIR命令不能直接执行此操作。但是有一个简单的命令行oneliner可以显示没有页眉或页脚信息的信息。此命令仅列出文件。只要您所在的地区使用3个空格分隔的组件显示时间戳,它就可以工作。例如,我的美国时间戳显示为mm

windows - 如何使用 C 更改 Windows 中文件的最后修改日期?

是否有一个C函数调用可以更改Windows中文件或目录的最后修改日期? 最佳答案 您可以使用SetFileTime函数,对于目录,你必须使用CreateFile使用FILE_FLAG_BACKUP_SEMANTICS标志获取目录句柄并将其用作SetFileTime的文件句柄参数,如下所示:hFolder=CreateFile(path,GENERIC_WRITE,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_DIRECTORY|FILE_FLAG_BACKUP_SEMANTICS

windows - 将 Numpad 与修改键一起使用会表现出奇怪的行为

我有一个键盘事件监听器,我正在监听numberpadkeycodes(1到9)用于激活数字锁定时;这很好用。但是,在我的应用程序中,我还希望允许使用修改键(CTRL)和数字键盘键。奇怪的是,当按住CTRL时,按1或3不会产生任何键盘事件,而2和4-9会产生预期的事件。我在谷歌搜索后看到了其他关于这个问题的引用资料,所以我认为这不一定是特定于Flash的,但我还没有找到任何答案。我尝试使用SHIFT作为修饰符,但这只会导致从数字键盘生成键码,就好像数字锁定已关闭一样(例如,SHIFT+Numpad1返回End键码,无论数字锁定状态如何)-显然是这样是有意的Windows行为。由于altc

.net - 确定自 .NET 中的特定日期以来文件夹 ACL 是否被修改

我需要确定自特定日期以来文件夹ACL是否被修改。Windows是否存储此类信息?FileSystemInfo提供了属性LastWriteTime,但是当我更改目录权限时,这个日期没有改变。有什么办法可以得到这些信息吗?问候,jack。 最佳答案 较低级别的NTAPI在FILE_BASIC_INFORMATION中公开了一个名为ChangedTime的字段结构体;它被描述为:Specifiesthelasttimethefilewaschanged.它本质上是上次修改任何元数据(我假设包括安全描述符)的时间戳。当然,您无法告诉什么导致

environment-variables - 运行 Inno Setup 安装程序时如何修改 PATH 环境变量?

InnoSetup允许您通过[Registry]部分设置环境变量(通过设置与环境变量对应的注册表项)但是,有时您不只是想设置环境变量。通常,您想对其进行修改。例如:在安装时,可能需要在PATH环境变量中添加/删除目录。如何从InnoSetup中修改PATH环境变量? 最佳答案 您提供的注册表项中的路径是REG_EXPAND_SZ类型的值。正如[Registry]部分的InnoSetup文档所述,有一种方法可以将元素附加到这些元素:Onastring,expandsz,ormultisztypevalue,youmayuseaspec

c++ - 如何使用 Winsock LSP 修改出站 UDP 流量?

我正在构建一个应用程序,它需要在DHCPv6数据包到达线路之前对其进行动态修改。我正在使用DHCPv6供应商选项做一些非常专有的工作,我需要能够在传输之前检查和修改内存中的这些选项。我通过修改Microsoft示例代码在Winsock之上构建了一个概念验证分层服务提供程序。它拦截传出的HTTP数据包,将referrer-agent更改为有趣的东西,然后按原样发送数据包。在Wireshark中验证,效果很好。更改我的安装程序代码也很简单,这样我的LSP就可以链接到UDP/IPv6而不是TCP/IPv4之上,现在,在附加调试器的情况下,我可以看到自己获得了带有堆栈的回调DHCP服务器。但是

Windows 批处理文件 - 按修改和/或创建日期将文件排序到文件夹中

我正在尝试调整StackOverflow上发布的现有批处理文件以完成我的任务,但需要有关批处理文件语法和命令的特定区域的指导。任务是根据创建和/或修改日期(以较早者为准)将充满图像文件的文件夹分类到子文件夹中。下面的脚本适用于文件创建日期,但是,如果一组文件是从另一个文件夹复制过来的,那么它们都具有相同的创建日期(但保留较早的“修改”日期,因此我希望使用最早的日期)非常感谢收到的任何建议。我一直在考虑调整的代码:@echooffsetlocalenabledelayedexpansionsetRawData="C:\Users\Jernau\source_image\*.jpg"set

windows - PowerShell:脚本不会计算自上次修改日期起超过 30 年的文件

全部。我卡住了。我有一个PowerShell脚本,它会在特定文件夹中查找自上次修改日期起超过30天的文件(此外,如果该文件夹不存在,它将创建该文件夹)。它创建了文件夹,它给了我所有的文件,它会在测试查询中列出所有文件,但它实际上不会计算30天以上的旧文件的数量。我已经尝试了几种方法来获取此计数(一些方法源自其他解决方案以从该站点删除旧文件),但PowerShell就是不想这样做。到目前为止,这是我的代码...$HomePath=$env:USERPROFILE$CompanyFolder="\Company"$TimeSensativeFolder="\TimeSensative"$T

c# - 如何检查文件是否被第三方应用程序修改?我正在寻找小代码示例

使用C#,我可以检查文件是否被某些程序修改过DateTimedt=File.GetLastWriteTime(filename);我最初只是存储这个时间,然后每隔几秒将它与timer.Elapsed+=OnTimedEvent;进行比较我想知道是否有其他解决方案?某种事件处理程序,是否可以“监听”指定文件并在C#中相应地运行一些代码? 最佳答案 FileSystemWatcher可以在检测到文件系统更改时引发事件。在你的情况下,听起来你想要订阅Changed事件,使用LastWrite的NotifyFilter。