記事が元の記事である場合は、転載の元のソースを示してください。
この記事のブログアドレス:https://blog.csdn.net/qq21497936/article/details/113773009
今後もプロジェクトやテクノロジーの共有をさらに増やしていきます。お問い合わせはQQ:21497936、WeChat:yangsir198808を追加してください。
Qt開発コラム:開発技術
前:なし
次:「Qt開発ActiveXノート(2):QtはQtによって開発されたActivexコントロールを呼び出します」
序文
Qtを使用してQtコントロールを開発することは、C#が呼び出すためのOCXになり、activexはocxのより高度な形式です。
QtCreatorにはActiveXコントロールプロジェクトがないため、VSを使用する必要があります。作成者は開発にVS2019を使用します。
準備オーケー
Qt5.15.2 + VS2019 + vsツール、基本的な開発環境のセットアップについては詳しく説明しません。
最初のQtActiveXを開発する:Hello world
ステップ1:新しいQt ActiveQtServerプロジェクトを作成する
ステップ2:QLabelをドラッグして、「Helloworld」と入力します
手順3:エラー「MSB3073」を生成する
VS2019ソフトウェアを開くには、管理者権限を使用する必要があります。
ステップ4:リリースバージョンとデバッグバージョンを生成する
ステップ5:ActiveXコントロールを登録する
実行する前に登録し、Qtに付属のidcを使用して登録します。
idc -regserver activeHelloWorldDemo.dll
ステップ6:activeQtコントロールを呼び出す
以下に示すように、それを確認し、レジストリを開き、clsidを確認するために検索します。htmlを
作成し、次のように入力します。
<html>
<head>
<title>activeQtDemo</title>
</head>
<body>
<object id="object"
classid="CLSID:2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC">
<!-- 以下为入坑了 -->
<!-- classid="2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC"> -->
[Object not available! Did you forget to build and register the server?]
</object>
</body>
</html>
以下に示すように、IEを使用して実行し、アクティブはMicrosoftに固有であり、他のブラウザーはIEをサポートしていません。
ピットに
ピットへ1:コントロールの呼び出しに失敗しました
問題
理由
分類IDの形式が間違っているため
解決する
<html>
<head>
<title>activeQtDemo</title>
</head>
<body>
<object id="object"
classid="CLSID:2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC">
<!-- 以下为入坑了 -->
<!-- classid="2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC"> -->
[Object not available! Did you forget to build and register the server?]
</object>
</body>
</html>
前:なし
次:「Qt開発ActiveXノート(2):QtはQtによって開発されたActivexコントロールを呼び出します」