title author date CreateTime categories
C# 写系统日志
lindexi
2018-08-10 19:16:53 +0800
2018-2-13 17:23:3 +0800
WPF WPF调试

因为我不想使用自己写文件,我的软件是绿色的,所以把日志写到 Windows 日志。

首先告诉大家什么是系统日志,请看下面,这就是我要告诉大家的日志。写在这里就把日志放在 系统日志那里,看起来很厉害。

如果需要写日志,需要管理员权限,如果没有权限会出现下面异常

System.Security.SecurityException:“未找到源,但未能搜索某些或全部事件日志。 不可访问的日志: Security

需要判断当前是否已经存在日志,下面我来创建一个事件叫 “德熙”

            if (EventLog.SourceExists("德熙"))
{
EventLog.CreateEventSource("德熙", "Application");
}

这里的 Application 就是写到哪个,一般都是选 Application ,可以从图片看到系统的有应用程序、安全、Setup、系统几个日志,程序一般都是写到程序

写日志

如果已经创建了日志事件,那么继续来写入日志就不需要管理员权限了。所以在安装程序的过程创建日志就可以让程序不需要再写入日志时需要管理员权限。

写入可以使用 WriteEntry ,需要传入写入的日志和内容

            EventLog.WriteEntry("德熙", "有个不愿告诉你名称的程序在这里写字符串");

这个方法还有几个重载,可以传入日志类型,是成功、失败还是其他。还可以传入 id ,通过id 可以找到为什么需要写日志,不过需要在自己定义,还可以添加附件,于是我就不需要自己写文件日志。

最新文章

  1. Android中AIDL的理解与使用(一)——跨应用启动/绑定Service
  2. html 输入框 只能输入数字 只能输入字母数字组合
  3. C#,委托,匿名委托,Lambda表达式
  4. VIM for Python and Django Development
  5. jquery 表单清空
  6. apache2.4域名配置参数
  7. ES6入门之函数的扩展
  8. android安全:forceStopPackage对android的Alarm的影响
  9. cf 85 E. Petya and Spiders
  10. 03 - 替换vtkDataObject中的GetProducerPort()方法 VTK 6.0 迁移
  11. hibernate 单元测试 5.2
  12. 菜鸟聊JavaScript中this
  13. 欢迎大家来到DevLegal的博客
  14. Hyperledger Fabric密码模块系列之BCCSP(三)
  15. Delphi编码规范
  16. 20155206 Exp5 MSF基础应用
  17. 07: linux中正则表达式与grep使用
  18. linux系统更新rpm包问题 ,报错rhn-check-2.0.2-5.el7.noarch has missing requires of yum-rhn-plugin >= ('0', '1.6.4', '1')
  19. maven 打包如何将依赖打进来
  20. video标签常用属性及说明

热门文章

  1. Directx11教程(51) 简单的billboard
  2. 2018-11-30-WPF-解决-ListView-的滚动条不显示
  3. 免费报名 | 汇聚HBase&大数据最前沿 Apache HBaseConAsia2019盛会火热来袭
  4. Linux进程管理(三、 线程)
  5. Handler, AsyncTask用法简单示例
  6. postman 百度网盘下载 64位
  7. spring data jpa 原生sql 别名字段无法注入
  8. PHP笔试题(11道题)详解
  9. LeetCode59 Spiral Matrix II
  10. Freeware Tools For Linux, http://www.debianhelp.co.uk/tools.htm