2014-01-24 38 views
0

我已经创建了几个批处理作业和相关任务,它们运行良好。但有一个问题是,他们运行的是我用来创建工作的帐户。我想成为一个系统帐户而不是我的个人帐户(如果我离开这个地方可能会被取消激活)更改批处理作业用户标识(运行方式)

我看不出改变这一点。我是否必须通过SQL更新声明来更改它?

谢谢。

回答

2

您可以登录,只要你想和设置批处理作业的任何服务的用户,也可以使用runas(...)从代码中做到这一点很容易(http://msdn.microsoft.com/en-us/library/aa893873.aspx):

server static public void Main(Args _args) 
{ 
    RunAsPermission perm; 
    UserId   runAsUser; 
    SysUserInfo  userInfo; 

    userInfo = SysUserInfo::find(); 
    runAsUser = userInfo.Id; 
    perm = new RunAsPermission(runAsUser); 
    perm.assert(); 

    runAs(runAsUser, classnum(EventJobDueDate), "runDueDateEventsForUser"); 

    CodeAccessPermission::revertAssert(); 
}