2009-12-02 3 views
2

Visual Studio 2008 통합으로 .NET 용 다른 코드 적용 도구를 작성하고 있습니다.
한 가지를 제외한 모든 것이 잘 진행됩니다. 일부 코드 조각을 강조 표시하는 방법을 찾을 수 없습니다.Visual Studio 2008 추가 기능에서 텍스트 강조 표시

커버 된 블록과 커버되지 않은 블록에 대해 사용자에게 알리기 위해 필요합니다.

Coverage Example

누군가가 나에게 코드보기 창에서 텍스트를 하이라이트 코드를 제공 할 수 있습니다 : 당신은 내가 (코드 검사 도구 세트 VS 기본에서) 다음 화면에서 원하는 기능의 예를 볼 수
?
VS2008과 관련된 적절한 MSDN 기사에 대한 링크도 환영합니다! 사전에

감사합니다.

// retrieving IVsTextManager and highlight id 
DTE2 applicationObject = ...; // get it during addin init 
Microsoft.VisualStudio.OLE.Interop.IServiceProvider serviceProvider = (Microsoft.VisualStudio.OLE.Interop.IServiceProvider)applicationObject; 
Guid SID = typeof(SVsTextManager).GUID; 
Guid IID = typeof(IVsTextManager).GUID; 
IntPtr output; 
serviceProvider.QueryService(ref SID, ref IID, out output); 
IVsTextManager textManager = (IVsTextManager)Marshal.GetObjectForIUnknown(output); 
int highlightID; 
Guid highlightGuid = ...; // your highlighted text style guid 
textManager.GetRegisteredMarkerTypeID(ref highlightGuid, out highlightID); 

// highlighting text block in the active view 
IVsTextView view; 
int result = textManager.GetActiveView(0, null, out view); 
IVsTextLines buffer; 
view.GetBuffer(out buffer); 
buffer.CreateLineMarker(highlightID, startLine, startColumn, endLine, endColumn, null, null); 

더 많은 예제가 MetaScroll Visual Studio Addin에서 볼 수 있습니다 :

답변

2

나는 대답을 발견했습니다 아래 코드를 참조하십시오.

+1

워스 (오래된 것을 다시-의 compat에 대한 STIL 사용할 수 있지만, 새로운 사용하기가 훨씬 쉽다). –

+0

힌트를 보내 주셔서 감사합니다. VS2010으로 업그레이드 한 후 새 API를 살펴 보겠습니다. – Rageous

+0

아주 잘하고 도움이됩니다. 나는 또한 VS 2010 정적 분석기에 대한 플러그인을 쓰고있어 오류와 내 코드를 강조하기 위해 내 플러그인과 동일한 일을해야합니다. 제발 내가 실제로 Guid에서 작성해야하는 것을 얻지 못하고 있습니다 highlightGuid = ...; // 강조 표시된 텍스트 스타일 guid DTE2 applicationObject = ...; // addin init 동안 얻을 수 있습니다. 다시 C#의 새로운 기능이므로 문제를 완전히 이해하는 것입니다! 미리 감사드립니다. –