3

純粋にアンマネージド C++ アプリ内でマネージド コントロールをホストして実行する必要があります。これを行う方法?

通常、ライセンスのないコントロールを実行するのは簡単です。

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

ただし、ライセンスされたコントロールを使用する場合は、何らかの方法で .licx ファイルをプロジェクトに埋め込む必要があります (参照アプリケーション ライセンス)。アンマネージ C++ アプリでは、必要な接着剤が機能していないようです。lc.exe ツールはライセンスをアセンブリ リソースとして埋め込むことができるはずですが、正しい呼び出しを行っていなかったか、警告なしで失敗しました。どんな助けでも大歓迎です。

4

1 に答える 1

1

答えは、使用している特定のコンポーネントによって異なります。コンポーネントのヘルプ デスクに連絡するか、コンポーネントの展開に必要なドキュメントを参照してください。基本的に、コンポーネントの開発者は、適切と思われる
ライセンスを自由に実装できます。.licx ファイルを使用すると、コンポーネントは、開発者が GetKey および IsValidKey (投稿したリンクで説明されています) を介して希望することを何でも実行できる必要があります。したがって、GetKey がコンポーネント ディレクトリに .licx ファイルをチェックする場合は、そこにあることを確認する必要があります。私の知る限り、クライアント アセンブリは、コントロールをインスタンス化する以外に何もする必要はありません。

また、コンポーネントの名前と使用している lc.exe コマンドを投稿すると、人々が見てみることができます..

于 2008-09-09T09:30:04.687 に答える