2016-03-15 163 views
0

我编写了一个需要通过Windows调度程序调度的.NET控制台应用程序。这种控制台执行一些网络和数据库活动并写入日志文件。如果应用程序在桌面/命令提示符下运行,但如果我尝试通过调度程序运行它,它将拒绝启动。我面临的另一个问题是对应用文件夹的写入访问权限。即使我将权限设置为包含应用程序二进制文件的文件夹以由“每个人”写入,该应用程序似乎也无法创建日志文件和/或向其追加数据。如果我使用管理员权限运行应用程序(在桌面上),但是如果我在调度程序中定义了“使用更高privildegs运行”中的活动,则无法修复该问题。调度控制台应用程序

+0

这些日子并不少见,创建桌面交互的程序被调度程序阻止 - 特别是在服务器上。 – BugFinder

+0

您可能会更适合使用Windows服务而不是预定的控制台应用程序 – Kritner

+0

@Kritner按照您的建议我必须自己管理任务的时间安排。有没有办法创建一个由外部工具安排的单个镜头服务?我认为这无法解决写权限问题。 – weirdgyn

回答

1

最佳的操作过程是创建一个具有管理员权限的服务帐户,并根据此帐户安排任务,并选择用于运行用户登录还是关闭的选项。 这种方法在Active Directory就位的地方更加相关。

希望这有助于 顶点

+0

我试着用管理员权限创建一个新用户,但没有运气。该命令仍然没有执行,问题似乎又是应用程序文件夹上的写入权限(顺便说一下,新创建的用户已被授予对此文件夹的完全控制权限)。 顺便说一句我正在Windows 10 Home中工作。 – weirdgyn

+0

不,我不是指用户帐户。您需要一个特定的服务帐户。 https://technet.microsoft.com/en-us/library/cc739458(v=ws.10).aspx是你最好的选择(我怀疑有一个Windows 10指南,但想法是一样的)。祝你好运,Apex。 – apexlol

+0

好吧,我看到了,当然在服务器上我会这样做,但在Win10 Home中没有其他方法可以做到这一点... afaik – weirdgyn