问题标签 [system.management]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - Web 应用程序中的权限 - System.Management,一般故障
我想访问 System.Management 并添加 dns 记录。当前代码在 Windows 应用程序上运行良好,但我也在寻找在 Web 应用程序上运行代码的权限。
我需要网络应用程序的许可,这是我知道的:
Windows 身份验证:
整个权限:
iis 功能委托:
更新:您可以在此链接上看到错误
c# - windows server 需要 DNS 权限
我为 windows 应用程序提供了此代码,并能够在 windows server 2019 上添加 DNS 区域。
当我尝试在 Web 应用程序(asp.net)上使用当前代码时,它不起作用:
System.Management.ManagementException:一般故障
当我更改@"\\{0}\Root\MicrosoftDNS"
为@"\\{0}\root\cimv2"
出现此错误时:
System.Management.ManagementException:未找到
在我的物理路径上,提供的任何许可:
即使我将 Windows 身份验证设置为:
即使我检查了我的 RPC,它也可以正常工作
我还检查了在 DNS 中注册此连接的地址
在Microsoft 论坛上,您可能会看到相同的问题而没有结果。
vb.net - 使用 System.Management 对象
我写了这个例程:
但我有这个错误:
我有这些导入集:
还有什么需要的吗?谢谢
.net - 使用 WMI 将用户添加到远程 Windows 共享
我在远程计算机 IMPC-1111 的 C:\ 根目录上有一个共享,我正在尝试添加用户 /w 访问掩码:
我已经弄清楚如何阅读它们....但无法弄清楚如何编写/更改它们。这是我用来阅读它们的代码。
谁能指出我正确的方向?这甚至可以使用 WMI 编写吗?
谢谢!
c# - WMI 值似乎不一致
对于我们的许可/软件激活,我们需要唯一标识一台计算机。为此,我们依赖于 WMI,并且我们正在使用 BIOS 版本、处理器 ID、MainHardDrive 序列等构建一个独特的计算机密钥。自 4 到 5 年以来它一直运行良好,但我们最近有一些客户抱怨激活问题.
经过一些调查,我们发现问题不是新问题,它从一开始就存在,并且 WMI 值似乎从一个应用程序开始到另一个不同......
以下是 2 天内发生变化的一些客户数据示例:
(左侧“好”数据,右侧“不一致”空值)
有时我们的用户的 WMI 已损坏:值是空的,或者我在代码中发现了异常,没什么特别的。在这种情况下,WMI 修复可以完成这项工作。但这是我们第一次面对不一致的数据......
谢谢你的帮助 !
编辑:这是我检索 WMI 值的方法:
c# - C# WMI 用户访问级别检测
我有一个 WMI 查询,它为进程启动检测进行事件跟踪。代码与此类似:
如果当我尝试启动事件观察程序时应用程序以“正常”权限(而不是以管理员身份)启动,我会捕获带有“访问被拒绝”消息的 System.Managenet.ManagementException。
我知道要监视 WMI 事件最好是在管理员模式下,或者也有必要为“普通”用户启用访问权限,但是......
有没有办法(使用 c#)在执行查询或启动观察者
之前检测 WMI 中的用户访问?
如果是,如何针对特定范围查询 WMI 以获取当前用户访问级别(例如跟踪事件?)
谢谢洛伦佐
c# - 在跨域的 IIS 上的 C# 应用程序中运行 Powershell cmdlet
我们必须域:NT1 和 NT2。
我们有一个 C# 应用程序,它在 Exchange 服务器(域 NT2)上调用 Powershell cmdlet。它使用NT2\User的凭据。
摘录:
当我简单地在我的计算机(域 NT1)上运行这个应用程序时,一切都很好。
当应用程序部署在域 NT1 中的服务器上并托管在 IIS 上时,它会停止工作。IIS 应用程序池配置有域 NT1 ( NT1\User ) 的标识。
它在 System.Managemnt.Automation.RemoteRunspace.Open() 处引发 System.Managemnt.Automation.Remoting.PSRemotingTransportException:
Connecting to remote server mail.test.brightfulsolutions.com failed with the following error message: Access is denied. For more information, see the about_Remote_Troubleshooting Help topic.
似乎 IIS 应用程序池身份用户 NT1\User 和 Powershell 预期用户 NT2\User 冲突,但不知道该怎么做。
欢迎任何建议(代码、服务器配置)。
c# - 在 .NET Core 中使用 System.Management 获取 UUID
我正在开发一个 .NET Core 应用程序。我的要求是我必须获得主板的 UUID。代码是:
这段代码在 Windows 机器上运行良好,但是当我移动到 linux 机器时,我收到以下错误:
linux 不支持System.Management吗?如果没有,我如何在 linux 和 windows 机器上获取主板的 UUID
c# - 使用 System.Management 在单独的 powershell shell 中创建运行空间
我正在尝试使用 .NET 的 System.Management 库运行不同的 PowerShell 命令,但我看到每次运行空间共享同一个 shell。更具体地说,如果我在我的操作系统上打开一个 PowerShell 窗口并运行以下命令:
我得到以下输出:
如果我现在打开另一个窗口并再次运行相同的命令,我会得到相同的输出,据我所知,我在不同的会话中有不同的运行空间具有相同的名称。如果我错了,请在这里纠正我!
现在,如果我运行以下代码来运行该Get-Runspace
命令两次:
我得到以下输出
这意味着 Runspace1 从 Runspace2 可见,因此它们共享相同的 shell。
相反,我希望得到以下输出,其中两个运行空间位于不同的 shell 中:
这种行为是可能的还是我的逻辑被打破了?请注意,关闭运行空间不足以解决我的问题。
vb.net - System.Management.Automation.SetValueInvocationException
我正在尝试从我的表单运行 PowerShell 脚本。我在我的项目中添加了一个名为“System Management Automation”的 NuGet 包,它可以从 vb.net 程序与 PowerShell 进行交互。并在包文件夹中添加了对 System.Management.Automation.dll 的项目引用。下面是我用来尝试运行 PowerShell 脚本的代码。
但是,当我单击时,Button1
出现以下异常:
System.Management.Automation.dll 中出现“System.Management.Automation.SetValueInvocationException”类型的未处理异常
附加信息:异常设置“CursorPosition”:“提示用户的命令失败,因为主机程序或命令类型不支持用户交互。尝试支持用户交互的主机程序,例如Windows PowerShell Console或Windows PowerShell ISE ,并从不支持用户交互的命令类型(例如 Windows PowerShell 工作流)中删除与提示相关的命令。”