このドキュメントでは、Tencent Cloud TRTC SDK(Windows C#およびC++ 版をプロジェクトに迅速に統合する方法を紹介します。
このセグメントでは、例として簡単な Winformのプロジェクトを作成し、Visual Studioのプログラムの中でC# SDKを統合する方法を紹介します。
SDKをダウンロード し、ファイルを解凍して開きます。これには次の部分が含まれています。
ディレクトリ名 | 説明 |
---|---|
xxxDemo | C++ Demo ソースコードおよびC# Demo ソースコード |
CPlusPlus | C++版32ビット/64ビットの依存する SDK ライブラリファイル |
CSharp | C#版32ビット/64ビットの依存するSDK ライブラリファイル |
ここの例では、SDK ディレクトリの下のC# 版のSDK ファイルを引用するだけで済みます。
Visual Studioを開き、TRTCCSharpDemo
という名前の Winform アプリケーションプログラムを新規作成します。
解凍後のSDK ファイルフォルダを TRTCCSharpDemo.csproj
が存在するディレクトリにコピーします。
説明:
C# SDKのみが必要な場合は、SDKのパスの下の CPlusPlus ディレクトリを削除して構いません。
Visual Studio の【生成】ディレクトリの下から【Configuration Manager】を見つけて開きます。
【イベントソリューションプラットフォーム】のプルダウン・リストから【新規作成】を選択すると、【ソリューションプラットフォームの新規作成】のダイアログボックスがポップアップします。
新しいプラットフォームを入力または選択し、【確定】をクリックします。
実際のニーズにもとづき、ステップ2 - ステップ3を繰り返して、サポートする必要があるソリューションプラットフォームを新規作成します。
TRTCCSharpDemo プロジェクトが存在するファイルフォルダを開き、テキストエディタを使ってTRTCCSharpDemo.csproj
ファイルを編集します。
TRTCCSharpDemo.csproj
のファイルの中のタグ <itemGroup>
の下に次の内容を追加します。
//それぞれのプラットフォームの下に引用を追加します
<Reference Include="ManageLiteAV" Condition="'$(Platform)' == 'x64'">
<HintPath>SDK\CSharp\Win64\lib\ManageLiteAV.dll</HintPath>
</Reference>
<Reference Include="ManageLiteAV" Condition="'$(Platform)' == 'AnyCPU'">
<HintPath>SDK\CSharp\Win64\lib\ManageLiteAV.dll</HintPath>
</Reference>
<Reference Include="ManageLiteAV" Condition="'$(Platform)' == 'x86'">
<HintPath>SDK\CSharp\Win32\lib\ManageLiteAV.dll</HintPath>
</Reference>
set Platform=Win64
SETLOCAL ENABLEDELAYEDEXPANSION
if $(PlatformName)==x86 (
set Platform=Win32
)
copy /Y "$(ProjectDir)SDK\CSharp\!Platform!\lib\*.dll" "$(ProjectDir)$(OutDir)"
ENDLOCAL
TRTCDemoの属性のページを開き、【生成】を選択して、【プラットフォーム(M)】とトップメニューバーの中のソリューションプラットフォームの設定を一致させます。次の図のとおりです。
Form1.csの設計ツールの中にlabelコントロールを追加します。次の図のとおりです。
Form1.csのコードファイルを開き、次のコードを追加します。
using System.Windows.Forms;
using ManageLiteAV; // 1..ネームスペースの引用を追加します
namespace TRTCCSharpDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// 2.ITRTCCloud インスタンスを取得し、SDK バージョンナンバーをプリントします
ITRTCCloud lTRTCCloud = ITRTCCloud.getTRTCShareInstance();
this.label1.Text = "SDK version : " + lTRTCCloud.getSDKVersion();
// 3.使用終了時に、ITRTCCloud インスタンスを手動で破棄する必要があります
ITRTCCloud.destroyTRTCShareInstance();
}
}
}
F5を押して実行し、SDKのバージョンナンバーをプリントします。次の図のとおりです。
このセグメントでは、簡単なMFC プロジェクトを作成し、Visual Studio プログラムの中で C++ SDKを統合する方法を紹介します。
SDKをダウンロードし、解凍して開きます。これには次の部分が含まれています。
ディレクトリ名 | 説明 |
---|---|
include | 詳細なインターフェースの説明がついたAPI ヘッダーファイル |
lib | 編集用の.lib ファイルおよび実行時にローディングする.dll ファイル |
Visual Studioを開き、TRTCDemoという名前のMFC アプリケーションプログラムを作成します。次の図のとおりです。
迅速に統合する方法を紹介しやすいように、ガイドのアプリケーションプログラムのタイプの画面では、比較的簡単なダイアログベースのタイプを選択しています。次の図のとおりです。
その他のガイドの設定は、デフォルトの設定を選択してください。
解凍後のLiteAVSDK ファイルフォルダを TRTCDemo.vcxprojが存在するディレクトリの下にコピーします。次の図のとおりです。
TRTCDemoの属性のページを開きます。【ソリューションのResource Manager】 >【TRTCDemo プログラムの右クリックメニュー】>【属性】と進みます。次のステップにしたがって設定してください。
Includeのディレクトリの追加:
【C/C++】>【Genaral】>【Include ディレクトリの追加】で、SDK ヘッダーファイルディレクトリ $(ProjectDir)LiteAVSDK\include
と $(ProjectDir)LiteAVSDK\include\TRTC
を追加します。次の図のとおりです。
ライブラリのディレクトリの追加:
【リンケージ】>【通常】>【ライブラリディレクトリの追加】で、SDKライブラリディレクトリ $(ProjectDir)LiteAVSDK\lib
を追加します。次の図のとおりです。
ライブラリファイルの追加:
【リンケージ】>【入力】>【依存項目の追加】で、 SDK ライブラリファイル liteav.lib
を追加します。次の図のとおりです。
copy コマンドの追加:
【イベントの生成】>【後続のイベントの生成】>【コマンドライン】で、コマンド copy /Y "$(ProjectDir)LiteAVSDK\lib\\\*.dll" "\$(OutDir)"
のコピーを追加します。編集が完了すると、自動で SDKの.dll ファイルがプログラムの実行ディレクトリの下にコピーされます。次の図のとおりです。
CTRTCDemoDlg::OnInitDialog
関数の中に、以下のテストコードを追加します。CWnd *pStatic = GetDlgItem(IDC_STATIC);
pStatic->SetWindowTextW(szText);
:::
次のエラーが出現した場合は、 プログラム設定の修正にしたがって、SDKの引用がプログラムの中に引用されているかチェックしてください。
エラー CS0246は、タイプまたはネームスペース“ManageLiteAV”が見つからない場合です(using のコマンドまたはプログラムセットの引用が欠如していませんか?)
次のエラーが生じた場合は、 プログラム設定の修正にしたがって、プログラムの動作プラットフォーム環境がソリューションの現在のターゲットプラットフォームに修正されているかチェックしてください 。
System.BadImageFormatException:“ファイルまたはプログラムセット“ManageLiteAV, Version=2.0.7152.18518, Culture=neutral, PublicKeyToken=null”またはそれの或る依存項目がローディングできません。形式が正しくないプログラムをローディングしようとしています。”
次のエラーが生じた場合は、 プログラム設定の修正にしたがって、生成したイベントが実行ディレクトリの中に正しく追加されているかチェックしてください。
System.IO.FileNotFoundException:“ファイルまたはプログラムセット“ManageLiteAV.dll”またはそれの或る依存項目がローディングできません。指定したコンポーネントが見つかりません。”
Windows のバージョンの違いにより互換性の問題が存在している可能性があります。現在 C# SDK の中には互換性の問題を解決する dll ファイルを新規追加しています。ファイルリストは次の図のとおりです。
次のエラーが生じた場合は、前述のプログラム設定にしたがって、 SDKヘッダーファイルのディレクトリが正しく追加されているかチェックしてください。
fatal error C1083: include ファイルを開くことができません: “TRTCCloud.h”: No such file or directory
次のエラーが生じた場合は、前述のプログラム設定にしたがって、SDKライブラリのディレクトリとライブラリファイルが正しく追加されているかチェックしてください。
error LNK2019: 解析できない外部シンボル "__declspec(dllimport) public: static class TXString __cdecl TRTCCloud::getSDKVersion(void)" (__imp_?getSDKVersion@TRTCCloud@@SA?AVTXString@@XZ)、この記号が関数 "protected: virtual int __thiscall CTRTCDemoDlg::OnInitDialog(void)" (?OnInitDialog@CTRTCDemoDlg@@MAEHXZ) の中に引用されています
この記事はお役に立ちましたか?