如何使用regasm.exe为dll创建CLSID

时间:2012-09-21 11:26:21

标签: c# asp.net windows

我们如何使用regasm.exe为DLL创建CLSID

我想在网上使用Windows应用程序,我发现了一篇文章,我发布了下面的链接

http://www.codeproject.com/Articles/14276/Using-Windows-Application-on-web

在上面的文章即将面临第10步附近的问题,它说明::“现在通过使用”regasm.exe“创建并将你的dll的CLSID放在注册表中的exe文件位于” C:\ WINDOWS \ Microsoft.NET \ Framework \ v1.1.4322 \“。”

我不确定如何为dll创建CLSID?

3 个答案:

答案 0 :(得分:0)

致电

regasm.exe /codebase /tlb whatever.dll

根据您的需要,可能不需要/ codebase或/ tlb(即您也可以尝试regasm.exe whatever.dll)。

答案 1 :(得分:0)

CLSID标识COM类对象,而不是DLL。

使用regasm注册程序集时,将为程序集中的每个ComVisible类注册一个CLSID。

您可以通过在类上放置Guid属性来指定所需的CLSID:

[GuidAttribute("12345678-9012-3456-7890-123456789abc")]
public sealed class MyComVisibleClass ...

或者如果您不使用此属性,它将自动生成。

如果它是自动生成的,您可以使用“OLE Viewer”或类似方法检查由regasm生成的类型库。

答案 2 :(得分:0)

CLSID是全局唯一ID(= GUID)。它有固定的格式(参见Joe的答案)并且是“随机的”。您可以使用guidgen.exe创建一个。许多编辑器和IDE都具有创建GUID的功能。使用regasm,您可以在Windows中注册COM类对象的GUID(= CLSID)。

相关问题