C#确定文件被锁定的时间

C#确定文件被锁定的时间,c#,file,io,locked,C#,File,Io,Locked,编辑 我知道文件已锁定(即,我不需要检查它是否已锁定)。相反,我想知道它被锁了多久。e、 g.1小时、24小时等 是否可以确定文件在C#中被锁定了多长时间 我有一个应用程序,每10分钟执行一次,并在目录之间移动一些文件。如果一个文件被用户锁定,那么它显然无法移动它,因此应用程序会向用户发送一封警告电子邮件 我只希望电子邮件发送一次-应用程序每10分钟执行一次,因此,如果用户不关闭文件,他们将每10分钟收到一封电子邮件 因此,我想我可以用文件打开的时间作为是否发送电子邮件的指标 但是,如果有人有任

编辑 我知道文件已锁定(即,我不需要检查它是否已锁定)。相反,我想知道它被锁了多久。e、 g.1小时、24小时等

是否可以确定文件在C#中被锁定了多长时间

我有一个应用程序,每10分钟执行一次,并在目录之间移动一些文件。如果一个文件被用户锁定,那么它显然无法移动它,因此应用程序会向用户发送一封警告电子邮件

我只希望电子邮件发送一次-应用程序每10分钟执行一次,因此,如果用户不关闭文件,他们将每10分钟收到一封电子邮件

因此,我想我可以用文件打开的时间作为是否发送电子邮件的指标


但是,如果有人有任何想法,也欢迎使用其他解决方案。

据我所知,句柄不包含创建时间的信息。但是,您可以简单地存储有关此文件是否已锁定以及在上次脚本运行期间向谁发送了有关此文件的电子邮件的信息。如果该文件仍被同一用户锁定,则不要再发送另一封电子邮件。

我猜您必须将该信息存储在文件或数据库表中,并在需要时从那里获取。可能是重复的,而不是重复的。我不想检查文件是否被锁定。我已经知道锁上了。相反,我想知道它被锁了多久。例如,1小时、24小时等。谢谢。应用程序在10分钟后关闭,从内存中删除任何此类信息。但我可以将信息保存到数据库中。