如何以编程方式更改DCOM配置标识

 书友58737112 发布于 2023-02-12 13:58

有没有办法以编程方式获取有关启动DCOM应用程序身份的信息.看附图了解我的意思.

屏幕截图,包含DCOM Config的应用程序属性

我试图使用WMI

ManagementObjectSearcher s = new ManagementObjectSearcher(new ManagementScope(@"\\.\root\cimv2"), new ObjectQuery(
                "select * from Win32_DCOMApplicationSetting  where AppID='{048EB43E-2059-422F-95E0-557DA96038AF}'"))
ManagementObjectCollection dcomSett = s.Get();
var value = dcomSett.Cast().ToArray()
             [0].Properties["RunAsUser"].Value;

但"RunAsUser"属性为空.也试过Interop.COMAdmin

COMAdmin.COMAdminCatalogClass catalog = (COMAdmin.COMAdminCatalogClass)new COMAdmin.COMAdminCatalog();
(COMAdmin.COMAdminCatalogCollection)catalog.GetCollection("Applications")

通过这种方式,我设法获得MMC的"组件服务"管理单元中"COM +应用程序"节点下列出的应用程序:

COM +应用程序

我是COM,DCOM,COM +的新手,确信我错过了一些重要的东西.

过了一会儿,我发现为什么我曾经在第一种方法(ManagementObject)中得到NULL.您将收到:

如果标识当前设置为启动用户,则为NULL

"交互式用户"中的"交互式用户"

在第三个选项的情况下使用用户名的一些字符串(参见第一张图片)

但我还是需要一种方法来改变MMC中DCOM Config节点下的Microsoft PowerPoint Slide等项目的身份.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有