2016-04-30 39 views
0

Visual Studio 2015デバッガのQt5.6 QStringを視覚化することは、QStringビジュアライゼーションの標準的な方法(Visual Studio 2015 \ Visualizersにnatvisを追加する)では機能しませんVisual Studio 2013以前と同じように動作します。 これが正しいですか? VS 2015でQStringビジュアライゼーションを追加した人は誰ですか?Visual Studio 2015デバッガのQt5.6 QStringを表示

答えて

1

私はこのアップデートをVS 2015でQt 5.6でしばらく行っていましたが、アップデート3または追加したもののいずれかが原因となりました。これは私が使用される定義である:あなたが廃止VSアドインが付属していますQt5.natvisファイルがある場合、私はそれを修正することができるように

<Type Name="QString"> 
    <DisplayString IncludeView="nq">{((reinterpret_cast&lt;unsigned short*&gt;(d)) + d->offset/2),sub}</DisplayString> 
    <DisplayString ExcludeView="nq">"{((reinterpret_cast&lt;unsigned short*&gt;(d)) + d->offset/2),sub}"</DisplayString> 
    <StringView>((reinterpret_cast&lt;unsigned short*&gt;(d)) + d->offset/2),sub</StringView> 
    <Expand HideRawView="true"> 
     <Item ExcludeView="simple" Name="[size]">d-&gt;size</Item> 
     <Item ExcludeView="simple" Name="[referenced]">d-&gt;ref.atomic._q_value</Item> 
     <ArrayItems ExcludeView="simple"> 
      <Size>d-&gt;size</Size> 
      <ValuePointer>((reinterpret_cast&lt;unsigned short*&gt;(d)) + d->offset/2),c</ValuePointer> 
     </ArrayItems> 
    </Expand> 
</Type> 

、私は自分のソリューションにこれを追加しました。かなりうまくいきませんでしたが、多くの種類が追加されています。

注:引用符を含まない文字列を表示するビューを追加し、子どもを抑制するために別の場所でview(simple)を使用する機能を追加しましたが、それ以外は変更されていないと思います。

それでも問題が解決しない場合は、あなたがNatvisの警告や冗長ログをオンにすることができますが:

Options > Debugging > Output Window

関連する問題