EN JP CN

C/C++ とC-sharp の混合プロジェクトの解析

C/C++ とC-sharp の混合プロジェクトの解析

C/C++ とC-sharp の混合プロジェクトの解析

C/C++ とC-sharp の混合プロジェクトの解析

統合ビルドに C++ とC# の両方のソースファイルが含まれる場合、サーバープロジェクトとデスクトップに特別な手順があります。この記事では、詳細を掲載したリンクでこれらの手順について説明します。

統合ビルド

統合ビルドレベルでは、混合ソースコードを 2 つの個別プロジェクト として解析します。

  1. kwadmin create-project を使用して 2 つの統合プロジェクトを作成します。たとえば、次のようになります。
    kwadmin create-project WBFSManager_CSharp
    kwadmin create-project WBFSManager_Cxx
  2. kwcsprojparser を使用した C# ファイル用のファイル 1 つと、kwinject を使用した C/C++ ファイル用のファイル 1 つという 2 つのビルドスペックファイルを作成します。たとえば、次のようになります。
    kwcsprojparser "WBFS Manager.sln" --config Debug --output "WBFS Manager.out"
    kwinject "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe" "WBFS Manager.sln" /Rebuild --output kwinject.out
  3. 解析ツール kwbuildproject を 2 回実行します。たとえば、次のようになります。
    kwbuildproject --tables-directory c:\klocwork\tables\wbfsmanager_csharp --url http://server01:8080/WBFSManager_CSharp "WBFS Manager.out"
    kwbuildproject --tables-directory c:\klocwork\tables\wbfsmanager_cxx --url http://server01:8080/WBFSManager_Cxx kwinject.out
  4. kwadmin load でデータベースに各プロジェクトをロードします。たとえば、次のようになります。
    kwadmin load WBFSManager_CSharp c:\klocwork\tables\wbfsmanager_csharp
    kwadmin load WBFSManager_Cxx c:\klocwork\tables\wbfsmanager_cxx

デスクトップ

Visual Studio では、1 つのソリューションを作成しますが、このソリューションを2 つ のサーバープロジェクトに接続します。上の例では、デスクトッププロジェクトを server01:8080 の WBFSManager_CSharp とWBFSManager_Cxx の両方に接続します。デスクトッププロジェクトは、両方の統合プロジェクトと同期を取ります。

デスクトッププロジェクトを Klocwork サーバー上の統合プロジェクトに接続するには、ソリューションを右クリックし、[Klocwork ソリューションプロパティ] を選択します。[Klocwork プロパティ] ダイアログで、各言語に独自のタブがあります。

次のように、[C++ プロジェクト] タブに C/C++ プロジェクト名を指定します。

次のように、[C# プロジェクト] タブに C# プロジェクト名を指定します。

[OK] をクリックします。