我希望在c#中使用特定的mp3文件(在另一个应用程序中作为闹钟播放)时检测并执行操作。
等待创意, 谢谢大家。
答案 0 :(得分:0)
您可以使用File.LastAccessTime方法。
详细信息:
http://msdn.microsoft.com/en-us/library/system.io.file.getlastaccesstime.aspx
基本上使用一个经常检查的循环。
此解决方案的问题在于,从MSDN文档中,"此方法可能返回不准确的值,因为它使用的本机函数的值可能无法由操作系统不断更新。"
答案 1 :(得分:0)
Windows在打开文件进行读取时不会更新lastaccesstime,因此无法使用。
我有两种方法可以考虑这样做,但都涉及轮询系统。
每X秒循环并尝试打开文件进行写入。如果失败则文件打开。
每X秒循环一次,并使用WMI查询查看该文件是否正在使用中。
无论哪种方式,您都必须在一定时间内处理连续的“打开”,只计算一个实例。