0

我使用 ATL 项目在 C++ 中创建了一个 COM+ dll。COM+ dll 添加到组件服务后,不显示组件名称。下面给出了屏幕截图的链接,

https://www.flickr.com/photos/100661150@N07/16832241851/in/set-72157649061069133

我经历了很多教程,但找不到合适的解决方案。有没有办法让名称出现,因为需要名称才能将 COM+ dll 用作 WCF。

4

1 回答 1

1

该名称未出现,因为它未在 .rgs 文件中设置。我在下面给出了一个示例,相应地更改代码然后它应该显示组件名称

HKCR
{
    FEDTab = s 'RepDO Class'
{
    CLSID = s '{8949D894-3C9B-4430-8C66-7B2DC3DE7F2D}'
}
    DataObjects.RepDO = s 'RepDO Class'
{
    CLSID = s '{8949D894-3C9B-4430-8C66-7B2DC3DE7F2D}'
    CurVer = s 'FEDTab'
}
NoRemove CLSID
{
    ForceRemove {8949D894-3C9B-4430-8C66-7B2DC3DE7F2D} = s 'ProcessImage Class'
    {
        ProgID = s 'FEDTab'
        VersionIndependentProgID = s 'DataObjects.RepDO'
        ForceRemove Programmable
        InprocServer32 = s '%MODULE%'
        {
            val ThreadingModel = s 'Both'
        }
        TypeLib = s '{C40C7D67-7D49-4291-B0C2-10DAA7824FD0}'
        Version = s '1.0'
    }
}

.rgs 文件可以在 ATL 项目文件夹中找到

于 2015-04-15T08:09:20.107 回答