2011-03-06 2 views
3

LanguageService를 구현하고 등록하기위한 절차 (http://msdn.microsoft.com/en-us/library/bb166360.aspx)에 나와있는 단계를 수행 했으므로 작동하지 않습니다.관리되는 패키지 프레임 워크를 사용하여 언어 서비스 구현

패키지가 올바르게로드되고 작동하는 메뉴 항목과 옵션 페이지를 추가 할 수는 있지만 서비스에 등록 된 파일을 열 수 없습니다. 디버거를 연결하면 VSPackage가 생성되고로드되고 FDoIdle 메서드가 두 번 호출되는 것을 볼 수 있습니다. 그 후에 실험적인 Visual Studio 세션이 잡초로 들어가 무한 루프에 빠지게됩니다. .txt 파일을 내 파일 형식으로 저장하려고하면 파일이 올바르게 저장되지만 Visual Studio에서로드되지 않고 개체 null 예외가 발생합니다.

내가이 질문에 언급 된 내 문제를 볼 수 있습니다 Visual studio 2010 colourizers, intellisense and the rest. Where to start!

해상도는 관리 패키지 Framework를 사용하는 대신이 확장 성 프레임 워크 관리를 사용하지 않는 것 같다. 정말 훌륭합니다.하지만 MPF LanguageService 구현에서 내가 뭘 잘못하고 있는지 정말 알고 싶습니다.

누구나 MPF를 사용하여 LanguageService를 만들었습니까? 누구든지 나를 실용적인 예나 연습으로 안내 할 수 있습니까?

문제가 해결! :

가 좀 더 디버깅을했고, 반복적 다음 호출 갇히지 실험의 Visual Studio 인스턴스주의 :

Microsoft.VisualStudio.Editor.Implementation.VsFontsAndColorsInformation.TryGetIndexForNativeItem (문자열 이름을 IVsColorTable colorTable, Int32 & colorTableIndex

직감적으로 ProvideLanguageServiceAttribute에서 RequestStockColors 매개 변수를 true로 지정 했으므로 이제 파일 형식을 열 수 있습니다. 내 간단한 스캐너도 구문 색칠 작업하고있다!

+0

나는 내 문제를 해결했다고 믿었습니다. 솔루션으로 편집 된 소식입니다. – BSharp

+1

아래의 답변에 귀하의 솔루션을 넣고 수락 된 답변으로 표시해야합니다. 이런 식으로 사람들은 거기에 해결책이 있다는 것을 알게됩니다. –

답변

6

문제가 해결! :

가 좀 더 디버깅을했고, 반복적 다음 호출 갇히지 실험의 Visual Studio 인스턴스주의 :

Microsoft.VisualStudio.Editor.Implementation.VsFontsAndColorsInformation.TryGetIndexForNativeItem (문자열 이름을 IVsColorTable colorTable, Int32 & colorTableIndex

직감적으로 ProvideLanguageServiceAttribute에서 RequestStockColors 매개 변수를 true로 지정 했으므로 이제 파일 형식을 열 수 있습니다. 내 간단한 스캐너도 구문 색칠 작업하고있다!

관련 문제