class RecentlyFileHelper
{
public static string GetShortcutTargetFile(string shortcutFilename)
{
var type = Type.GetTypeFromProgID("WScript.Shell");
object instance = Activator.CreateInstance(type);
var result = type.InvokeMember("CreateShortCut", BindingFlags.InvokeMethod, null, instance, new object[] { shortcutFilename });
var targetFile = result.GetType().InvokeMember("TargetPath", BindingFlags.GetProperty, null, result, null) as string;
return targetFile;
}

public static IEnumerable<string> GetRecentlyFiles()
{
var recentFolder = Environment.GetFolderPath(Environment.SpecialFolder.Recent);
return from file in Directory.EnumerateFiles(recentFolder)
where Path.GetExtension(file) == ".lnk"
select GetShortcutTargetFile(file);

}
}

最新文章

  1. Android开发之Android Material Design Toolbar自定义随笔
  2. Linux下memcache的安装和启动
  3. Java设计模式之创建型模式
  4. 荣品RP4412开发板烧写内核cannot load出错的原因
  5. Linux_10------Linux之shell编程------变量
  6. opencl初体验
  7. ASP.NET Core学习零散记录
  8. flask开发restful api系列(1)
  9. 多校 4686 Arc of Dream hdu 矩阵解
  10. Socket实现-Socket I/O
  11. DirectSound---捕获音频、Qml/C++ 集成交互
  12. java虚拟机构造原理
  13. (71)Wangdao.com第十一天_JavaScript 数学对象 Math
  14. C语言权威指南和书单 - 中等级别
  15. Unity3D在移动平台下加载AssetBundle导致Shader效果不正确的问题
  16. golang的字符串拼接
  17. Java爬虫之下载全世界国家的国旗图片
  18. 牛客网 完数VS盈数
  19. Python 3.6.5 导入pymysql模块出错:No module named &#39;pymysql&#39;
  20. linux中ps命令

热门文章

  1. UVA 11427 Expect the Expected(DP+概率)
  2. [转]linux的ulimit各种限制之深入分析
  3. lightoj 1027 简单概率dp
  4. Spark RDD概念学习系列之Spark Hash Shuffle内幕彻底解密(二十)
  5. zoj 2734 Exchange Cards【dfs+剪枝】
  6. XMPPFrameWork IOS 开发(六)聊天室
  7. 406. Queue Reconstruction by Height
  8. UVaLive4043 UVa1411 Ants 巨人与鬼
  9. java链接mysql
  10. 吐槽一下CSDN的封停审查机制