簡體   English   中英

如何在非托管C ++應用程序中托管許可的.Net控件?

[英]How to host licensed .Net controls in unmanaged C++ app?

我需要在純粹的非托管C ++應用程序中托管和運行托管控件。 這個怎么做?

要運行未經許可的控件通常很簡單:

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

但是,當使用許可控件時,我們需要以某種方式將.licx文件嵌入到項目中(參考應用程序許可 )。 在一個非托管的C ++應用程序中,必需的粘合劑似乎不起作用。 lc.exe工具應該能夠將許可證作為程序集資源嵌入,但要么我們沒有揮動正確的調用,要么它無聲地失敗。 任何幫助,將不勝感激。

答案取決於您使用的特定組件。 請與組件幫助台聯系,或閱讀有關部署組件所需內容的文檔。
基本上,組件開發人員可以根據自己的意願自由實施許可。 使用.licx文件,組件需要能夠通過GetKey和IsValidKey執行開發人員所希望的任何操作(在您發布的鏈接中進行了解釋)。 因此,如果GetKey檢查組件目錄中的.licx文件 - 您只需要確保它在那里。
AFAIK客戶端程序集除了實例化控件外不需要執行任何操作。

此外,如果您發布組件的名稱和您正在使用的lc.exe命令,人們可以看看..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM