0

我是本地机器上的管理员。但是,我正在创建的应用程序(Outlook VSTO 插件)将由部署管理员部署给没有管理员权限的用户。

该应用程序安装正确。

我的问题是我有代码可以检查EventLog.SourceExists("my VSTO addin"). 如果没有,它会EventLog.CreateEventSource("my VSTO addin")

我的问题:

  1. 我真的需要创建事件源吗?在没有源的情况下它仍然会记录吗?
  2. 我应该如何创建事件源(如果需要#1)?

2a 也许我需要创建一个创建事件源的小应用程序,并且需要由管理员安装?

2b 也许我可以将它放在安装时将调用的代码中?(我正在使用安装屏蔽)

2c 也许它可以由管理员作为组策略的一部分来完成?

2d 我可以根据https://docs.microsoft.com/en-us/windows/desktop/EventLog/event-sources创建一个注册表项

4

1 回答 1

1

回答我的问题:我确实需要创建源。为了解决这个问题,我创建了另一个控制台应用程序,它只创建了我需要的事件日志源。在 installshield 中,我将这个新的 exe 添加为自定义操作。安装是在管理员模式下完成的,因此会创建源。这修复了应用程序,因为非管理员正在使用该应用程序,并且如果它们不存在,它会尝试创建事件日志源。我删除了这张支票。

于 2018-11-13T12:29:23.817 回答