1

Visual Studio 2012 を使用して、よく知られている "Header Files" フォルダーと同じ特性を持つ "Include Files" という名前の C++ プロジェクト フォルダーを作成したいと考えています。つまり、インクルード ファイル内のファイルには cpi エクステンソンがあり、InteliSense で使用するために解析され、プリコンパイルすることもできます。

フォルダーを作成できますが、フォルダー内のファイルが解析されません。タイプをC++ヘッダーファイルに設定しようとしました。何も機能していないようです。hpp 拡張子を付けて Header Files フォルダーに入れると、ファイルは正常に機能します。

4

2 に答える 2

2

VS2010 のようなものである場合、これはツール/オプション/テキスト エディター ダイアログ オプションから実行されます。ツリー項目「ファイル拡張子」の下で、カスタム ファイル拡張子を追加し、選択した編集エクスペリエンスで処理することができます。

あなたのケースをシミュレートするために、私は次のことを行いました:

  1. Tools/Options/Text-Editor オプション画面を開きました。
  2. 右側のペインで、「拡張子:」ボックスに「cpi」と入力します。
  3. エディタは「Microsoft Visual C++」を選択。
  4. [追加/適用] を選択して、これをカスタム拡張リストに追加します。

通常どおりに進みます。CPI ファイルを開くと、c/cpp/h/hpp などのファイルと同じ構文強調表示と IntelliSense オプションが表示されます。

少なくとも、それが私のカスタム ファイル拡張子でのやり方です。サブフォルダーへのフィルタリングは、すでに必要な方法で行っているようです。

于 2012-10-01T23:18:28.147 に答える
0

CPI目的が .h に似たカスタム ファイル拡張子を実装した方法に関する生の情報を次に示します。私の仕事は、Visual Studio 2012 C++ ソリューションとプロジェクトを動的に作成するプログラムを作成することでした。VS テンプレートは C++ では機能せず、.Net でのみ機能するため、これが必要でした。

ソリューション ファイルとプロジェクト ファイルを作成するために、Visual Basic スクリプト ファイルを作成しました。次の XML をカスタム vcxproj ファイルに挿入しました。NoneClCompile や Include以外の XML タグがあります。タグは私のNone目的に合っているようです。解析、Intellisense、およびコンテキスト メニュー オプションを有効にします。

   <ItemGroup>
        [Do following pattern for each CPI file]
        <None Include="MyCPI.CPI">
            <FileType>CppHeader</FileType>
        </None>
    </ItemGroup>

次の XML を作成し、vcxproj.filters ファイルに挿入しました。

[ファイルの先頭にある ItemGroup 内に挿入します。GUID は C++ ヘッダー ファイルと同じです。それが何を意味するのかわかりません。]

<Filter Include="Include Files">
      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
      <Extensions>cpi</Extensions>
</Filter>

<ItemGroup>
    [Do following pattern for each CPI file]
    <None Include="MyCPI.CPI">
        <Filter>++Include Files</Filter>
    </None>
</ItemGroup>
于 2012-10-02T21:28:49.057 に答える