Java以特定用户身份访问WMI

Java以特定用户身份访问WMI,java,wmi,wmi-query,Java,Wmi,Wmi Query,我正在尝试编写一个Java应用程序,该应用程序将查询域内windows主机上的WMI,以获取其mac地址和dns名称。我可以通过exec或使用一些我在互联网上找到的jar来运行脚本,但我所看到的jar都不允许我在运行查询时模拟广告帐户 我希望能够指定查询作为(该域的管理员)运行的帐户,该程序可以在不在该域中的计算机上运行,或者我将查询两个域 我看过JACOB和com4J,但找不到它进行模拟的例子 另外,我无论如何都不是一个高级程序员,所以如果我错过了一些显而易见的东西,我深表歉意 提前感谢。如果

我正在尝试编写一个Java应用程序,该应用程序将查询域内windows主机上的WMI,以获取其mac地址和dns名称。我可以通过exec或使用一些我在互联网上找到的jar来运行脚本,但我所看到的jar都不允许我在运行查询时模拟广告帐户

我希望能够指定查询作为(该域的管理员)运行的帐户,该程序可以在不在该域中的计算机上运行,或者我将查询两个域

我看过JACOB和com4J,但找不到它进行模拟的例子

另外,我无论如何都不是一个高级程序员,所以如果我错过了一些显而易见的东西,我深表歉意

提前感谢。

如果您使用的方法是,您可以指定用户名和密码以作为连接到其他计算机。但是,您不能使用此方法连接到运行代码的计算机

如果调用脚本,请考虑使用Python。在

中有一个很好的例子说明了如何使用python实现这一点,如果您使用的方法是,您可以指定用户名和密码以作为连接到另一台机器。但是,您不能使用此方法连接到运行代码的计算机


如果调用脚本,请考虑使用Python。在

中有一个很好的例子说明了如何使用python实现这一点。您可以通过调用
runas
来包装
exec
命令行,该命令将作为指定用户运行


您可以通过调用
runas
来包装
exec
命令行,该命令行将作为指定用户运行该命令


我尝试使用runas,但它只允许您在执行runas时保存凭据或输入凭据,无论哪种方式,我都无法找到传递密码的方法,我读到的一篇帖子建议您实际上无法通过设计在运行时传递密码。nlr软件提供了另一种选择,“runnas”允许您将凭据保存到文件中。我尝试使用runas,但它只允许您在执行runas时保存凭据或输入凭据。我无法找到传递密码的方法,我读到的一篇文章建议您实际上无法通过设计在运行时传递密码。存在nlr软件的另一种选择是“runnas”,它允许您将凭据保存到文件中。我从未使用过python,但它是一种选择,我会尝试使用SWbemLocator,然后发布我是如何开始的-非常感谢-使用了SWbemLocator并更改了我的测试应用程序,可以使用AD帐户进行查询并通过。我从未使用过python,但它是一个选项,我将尝试使用SWbemLocator并发布我的进展情况-非常感谢-使用SWbemLocator并更改了我的测试应用程序,可以使用AD帐户进行查询并通过。