2008-09-09 136 views
3

我需要在纯粹非托管的C++应用程序中托管和运行托管控件。这个怎么做?如何在非托管C++应用程序中托管许可的.Net控件?

运行未经许可的控制通常是简单的:

if (SUCCEEDED(ClrCreateManagedInstance(type, iid, &obj))) 
{ 
    // do something with obj 
} 

当使用许可控制然而,我们需要以某种方式嵌入.licx文件到项目(REF application licensing)。在非托管的C++应用程序中,必需的粘合似乎不起作用。 lc.exe工具应该能够将许可证作为程序集资源嵌入,但要么我们没有挥动正确的调用,要么就是失败。任何帮助,将不胜感激。

回答

1

答案取决于您使用的特定组件。请联系您的组件帮助台或阅读有关部署组件的文档。
基本上,组件开发人员可以自由实施许可,因为他们认为合适。使用.licx文件,组件需要能够通过GetKey和IsValidKey完成开发人员希望的任何操作(在您发布的链接中解释)。 因此,如果GetKey检查组件目录中的.licx文件 - 您只需确保它在那里。
AFAIK客户端程序集除了实例化控件外不需要做任何事情。

此外,如果您发布组件的名称和您使用的lc.exe命令,人们可以看看..

相关问题