2010-01-05 4 views
1

솔루션을로드 할 때마다 실행해야하는 Visual Studio 용 추가 기능을 작성하려고합니다. 궁극적으로 솔루션 추가 기능을 사용하여 솔루션을 필요로하는 솔루션에만 실행되도록하겠습니다. 그러나 솔루션을로드하는 사용자에 추가 기능 훅을 추가 할 수있는 방법이 있는지 궁금합니다.솔루션로드시 Visual Studio 추가 기능 훅

감사합니다.

답변

2

VCProjectEngineEventsSolutionLoaded 이벤트.

편집 : 다른 사람들이 게시 할 수있는 샘플을 제안 해 드릴 수 있습니다. 관련 코드는 내가 게시 할 수없는 것입니다. 당신은 예를 들어 Saver add-in source code을 사용할 수 있습니다

+0

C#에 익숙하지 않은데, 어떻게하면 훅을 어떻게 등록했는지 예를 들어 문제가 될 수 있습니까? 감사. – coppro

2

은 (그것은에 대한 추가되는 탭 스튜디오 추가 기능) :
를 Saver.cs에서는이 이벤트를 구독 : SolutionEventsSink.cs에서

solutionEventsSink = new SolutionEventsSink(orderController); 
System.IServiceProvider serviceProvider = new Microsoft.VisualStudio.Shell.ServiceProvider(dte as Microsoft.VisualStudio.OLE.Interop.IServiceProvider); 
vsSolution = ServiceProvider.GetService(typeof(Microsoft.VisualStudio.Shell.Interop.SVsSolution)) as Microsoft.VisualStudio.Shell.Interop.IVsSolution; 
vsSolution.AdviseSolutionEvents(solutionEventsSink, out sinkCookie); 

은 실제 솔루션 이벤트 핸들러 :

class SolutionEventsSink : Microsoft.VisualStudio.Shell.Interop.IVsSolutionEvents 
관련 문제