安装WPF App时记录安装程序信息

时间:2010-12-21 22:54:28

标签: wpf clickonce

我有一个WPF(Clickonce)应用。我想知道哪些用户正在安装或重新安装应用程序,并可能将这些信息写入数据库进行审核。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

当前的ClickOnce部署不提供任何服务器端挂钩用于监控(实际上,ClickOnce发布生成的“网站”只是一个非常简单的纯HTML页面,提供用于下载和执行的链接/按钮客户端计算机上分别有.application或setup.exe。其他所有内容都在本地进行。

现在,根据您要记录的内容(初始安装或更新,或两者),您有以下选择:

  • 创建您自己的网站,用户将在访问应用程序的安装/启动之前注册(或者您可能只是通过IP识别它们 - 取决于您的需求) - 这允许您记录首次安装应用程序的人员,但是不是自动更新。
  • 在您的应用程序中,使用System.Deployment命名空间中的类(特别是ApplicationDeployment),以便在运行应用程序时访问有关更新等的信息。然后,您可以让您的应用程序调用您提供的Web服务,您可以在其中记录任何安装/启动操作(甚至其他运行时信息,如某些功能的使用,异常等)。

答案 1 :(得分:0)

如果您的目标是.NET 4,则可以将日志文件转到特定文件夹。然后,当用户运行应用程序时,您可以将其复制到服务器并将其删除,或将其写入数据库并将其删除。这是一篇文章,解释了如何指定ClickOnce部署中的日志放置位置。请注意,它在您安装,更新或卸载应用程序时运行。

http://robindotnet.wordpress.com/2010/05/31/enhanced-logging-in-clickonce-deployment/

注册表设置在HKCU中,因此您可以让您的C / O应用程序在首次安装时实际设置信息。您将错过第一个安装日志,但在此之后它会将日志写入磁盘。

另请注意,本文将告诉您如何启用详细日志记录。您不必将日志写入文件夹就可以了。