private void StartServiceCallback(object sender, EventArgs e) { if (_startMenuCmd.Enabled) { AppDomain.CurrentDomain.AssemblyResolve += CurrentDomainAssemblyResolve; WatsonTraceListener.Install(); _service = new IntegrationService(); _serviceChannel = new IpcServerChannel( name: $"Microsoft.VisualStudio.IntegrationTest.ServiceChannel_{Process.GetCurrentProcess().Id}", portName: _service.PortName, sinkProvider: DefaultSinkProvider ); var serviceType = typeof(IntegrationService); _marshalledService = RemotingServices.Marshal( _service, serviceType.FullName, serviceType ); _serviceChannel.StartListening(null); var componentModel = ServiceProvider.GetService <SComponentModel, IComponentModel>(); var asyncCompletionTracker = componentModel.GetService <AsyncCompletionTracker>(); asyncCompletionTracker.StartListening(); SwapAvailableCommands(_startMenuCmd, _stopMenuCmd); } }
static BrokeredServiceBase() { // Use a TraceListener hook to intercept assertion failures and report them through FatalError. WatsonTraceListener.Install(); }