此对象在%windir%\ system32 \ ADMWPROX.DLL 中实现 - 请参阅HKEY_CLASSES_ROOT\CLSID\{70B51430-B6CA-11D0-B9B9-00A0C922E750}
它完全可以从C代码中使用,但是我希望用.NET代码替换它,而对于tlbimp来说,ADMWPROX.DLL似乎不是一个有效的类型库:
z:\Work>tlbimp c:\Windows\system32\admwprox.dll
Microsoft (R) .NET Framework Type Library to Assembly Converter 4.0.30319.1
Copyright (C) Microsoft Corporation. All rights reserved.
TlbImp : error TI1002 : The input file 'c:\Windows\system32\admwprox.dll' is not a valid type library.
z:\Work>
当然,在Visual Studio中添加COM引用时,COM对象列表中缺少它。
PS:我正在尝试设置IIS://localhost/W3SVC/1!SslCertHash
属性,而this article解释说,唯一的方法是通过MSAdminBase
对象,而不是MSAdminObject
(到期)到架构定义中的错误)。后者方便地被.NET System.DirectoryServices.DirectoryEntry
包裹,但前者不是 - 因此是我的痛苦。
答案 0 :(得分:1)
好的,我就是这样做的:
就是这样。
我没有创建互操作源代码作为第一步也是唯一一步,因为IMSAdminBase_W接口非常大,所以我更喜欢将其转换为IDL,这更容易。