刁旭东 2024-06-23 00:13 采纳率: 77.8%
浏览 8
已结题

c# Topshelf3.3.1写文件失败

我用Topshelf3.3.1结合.net 4.0写了一个服务
现在有个问题服务启动后我想写log但是无法创建文件,关键是不报错继续执行后面的代码
1.服务已经勾选了允许与桌面交互
2.代码调用各种数据库读写没问题
3.代码调用服务端http接口提交信息没问题
4.代码调用了kernel32中的GetPrivateProfileString函数用于写ini的文件也没问题

唯独我写File.append有问题


如果我直接启动程序或者调试都可以写成功,唯独以服务的方式启动不行,请问我还忽略了什么吗?

我尝试调用log4net库,也没写成功

  • 写回答

3条回答 默认 最新

  • wanghui0380 2024-06-23 14:35
    关注

    1.检查系统日志:如果你有异常但是没有日志,他默认会写在系统日志。
    2. 检查路径。window service的属主是svhost. 所以请检查路径。不能直接使用相对路径的,那个路径不是你认为的地方。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月2日
  • 已采纳回答 6月24日
  • 修改了问题 6月23日
  • 创建了问题 6月23日