我们有一个使用 WMI 检测的应用程序,并添加了一个 WMI 方法,它是一个ManagementTask
. 当我们尝试从另一个应用程序调用此管理任务时,该方法被调用得很好,但是在该执行线程中,我们正在尝试写入文件,向 SCM 发送命令,并执行调试日志记录。这三个项目都不会执行,因为它们似乎遇到了权限问题。
当我们尝试写入文件时,我们得到错误
未提供所需的模拟级别,或者提供的模拟级别无效。
我们如何解决这个问题?
我们有一个使用 WMI 检测的应用程序,并添加了一个 WMI 方法,它是一个ManagementTask
. 当我们尝试从另一个应用程序调用此管理任务时,该方法被调用得很好,但是在该执行线程中,我们正在尝试写入文件,向 SCM 发送命令,并执行调试日志记录。这三个项目都不会执行,因为它们似乎遇到了权限问题。
当我们尝试写入文件时,我们得到错误
未提供所需的模拟级别,或者提供的模拟级别无效。
我们如何解决这个问题?
艾尔,我感觉到你的痛苦。使用本机 WMI 方法写入文件的任何尝试都将失败,因为 WMI 无法执行此操作。但是,Frank White 使用 C# 创建了一个解决方法,该解决方法在VBS中得到了充实。这是他创造的那条神奇的线:
InputParameters("CommandLine") = "cmd /c echo myFTPCommands > c:\ftpscript.txt"
完整描述请参考VBS方法,如有问题请回帖。是的,您需要设置 impersonationLevel,如 VBS 页面所示。
对于向单片机发送命令,这应该没有问题,因此请单独尝试以确保没有问题。对于调试日志,如果您要将文件写入远程系统,则必须使用上述解决方法。