【发布时间】:2011-08-30 02:09:32
【问题描述】:
我已经编写了我的第一个 C#.NET WinForms 应用程序,并准备发布第一个版本供用户安装。我使用 log4net 作为我的日志记录实用程序,并将其设置为:
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="Logs\"/>
<param name="AppendToFile" value="true"/>
<param name="DatePattern" value="yyyy-MM-dd' Log.txt'" />
// etc
然而,当我构建我的应用程序时,没有任何记录。在 Visual Studio 中运行时,一切都转到/bin/Debug/Logs/yyyy-MM-dd Log.txt。
我如何指定我的程序应该安装到哪里,以及工作目录应该是什么?
请记住,这个程序相当少(C:\Program Files\myapp 等目录下跟踪错误。我做错了什么?
编辑:当我右键单击程序并从解决方案资源管理器中转到“属性”时,我正在设置以下选项(可能不正确,我以前从未这样做过):
- 构建 -> 所有配置 -> 输出路径:
C:\Program Files\myapp\bin\ - 调试 -> 所有配置 -> 工作目录:
C:\Program Files\myapp\bin\ - 发布 -> 发布位置:
C:\Program Files\myapp\Publish\ - 发布向导 -> 发布位置:
C:\Program Files\myapp\Publish\ - 发布向导 -> 从 CD-ROM 或 DVD-ROM
- 发布向导 -> 应用程序不会检查更新
这些设置是正确的还是我搞砸了?我想要的是提示用户安装位置(默认为:C:\Program Files\myapp),并且该位置始终用于工作目录(所以我知道日志文件在哪里)。我如何做到这一点?
【问题讨论】:
-
如果您想在标准
C:\Program Files\myapp中安装程序,那么您需要使用常规安装程序。单击一旦安装被设计为在用户配置文件的上下文中运行,即没有管理权限可以在其他任何地方写入。 -
Visual Studio 中是否有一个易于使用的安装程序,或者是否需要第三方程序?
-
你是如何配置 log4net 的?如果您从文件加载配置,您可能需要检查该文件是否存在于 ClickOnce 部署中。
标签: winforms visual-studio-2008 log4net publish