任务计划程序启动openwith.exe程序而不是PowerShell脚本

时间:2015-09-17 15:04:58

标签: scheduled-tasks

我已经创建了一个自动连接到Office 365的Powershell脚本,并将所有用户的默认日历权限设置为审阅者。手动执行时,此脚本运行完美。

我正在尝试通过WS-2012-R2上的任务调度程序启动powershell脚本。

我运行任务但是当我检查测试用户日历权限时,它仍然是相同的“贡献者”。

当任务调度程序启动任务时,它会创建一个进程,该进程将被赋予进程ID。

我去检查任务管理器中的ID,它在流程选项卡下显示为“选择一个应用程序”。

我右键单击并单击了详细信息,它显示为OpenWith.exe

我检查了文件关联,(。。PS1)与WindowsPowershell

相关联

我去了资源管理器中的脚本文件位置,Rclicked并将POENhell中的OPenWith更改为Windows Powershell ISE,当我运行任务sheduler时,我仍然得到同样的东西。 (“pick and app& OPenWith.exe”)

我尝试将任务管理器中的“操作”编辑为诸如。

之类的组合

在任务shceduler属性

程序/脚本:设置为:C:\ Powershell脚本\默认审阅者权限 这不起作用

然后我将其更改为C:\ Windows \ System32 \ WindowsPowerShell \ v1.0 \ POwershell以及PowerShell_ise

在“添加参数(可选)”部分中使用C:\ Powershell脚本\默认审阅者权限。

反之亦然

任何人都可以告诉我,我可以做些什么来使这个脚本运行。

非常感谢

1 个答案:

答案 0 :(得分:2)

从命令行(CMD而不是PowerShell会话)启动PowerShell时会发生什么:

  def test_is_int(self):
      self.assertEqual(is_int("-51"), True)
      self.assertEqual(is_int("-5.1"), False)
      self.assertEqual(is_int("5.1"), False)
      self.assertEqual(is_int("51"), True)
      self.assertEqual(is_int("0"), True)
      self.assertEqual(is_int("-5-4"), False)
      self.assertEqual(is_int("5..1"), False)
      self.assertEqual(is_int("5-"), False)
      self.assertEqual(is_int("5f"), False)
      self.assertEqual(is_int("-"), False)

因为这应该显示所需的语法?

例如,我的节目(删除额外的帮助信息):

  

的PowerShell       [-File]

具体来说:

  

-File       执行脚本文件。

您应该使用预定任务中的内容(注意:使用引号):

powershell -?

希望这有帮助!