private void CreateServices(IServiceFactory svcFactory, IServiceContainer sc) { sc.AddService <IDecompiledFileService>(svcFactory.CreateDecompiledFileService()); config = svcFactory.CreateDecompilerConfiguration(); sc.AddService(typeof(IConfigurationService), config); var cmdFactory = new Commands.CommandFactory(sc); sc.AddService <ICommandFactory>(cmdFactory); var sbSvc = svcFactory.CreateStatusBarService(); sc.AddService <IStatusBarService>(sbSvc); diagnosticsSvc = svcFactory.CreateDiagnosticsService(); sc.AddService(typeof(IDiagnosticsService), diagnosticsSvc); decompilerSvc = svcFactory.CreateDecompilerService(); sc.AddService(typeof(IDecompilerService), decompilerSvc); sc.AddService(typeof(IDecompilerUIService), uiSvc); var codeViewSvc = svcFactory.CreateCodeViewerService(); sc.AddService <ICodeViewerService>(codeViewSvc); var segmentViewSvc = svcFactory.CreateImageSegmentService(); sc.AddService(typeof(ImageSegmentService), segmentViewSvc); var del = svcFactory.CreateDecompilerEventListener(); workerDlgSvc = (IWorkerDialogService)del; sc.AddService(typeof(IWorkerDialogService), workerDlgSvc); sc.AddService(typeof(DecompilerEventListener), del); loader = svcFactory.CreateLoader(); sc.AddService <ILoader>(loader); var abSvc = svcFactory.CreateArchiveBrowserService(); sc.AddService <IArchiveBrowserService>(abSvc); sc.AddService <ILowLevelViewService>(svcFactory.CreateMemoryViewService()); sc.AddService <IDisassemblyViewService>(svcFactory.CreateDisassemblyViewService()); var tlSvc = svcFactory.CreateTypeLibraryLoaderService(); sc.AddService <ITypeLibraryLoaderService>(tlSvc); this.projectBrowserSvc = svcFactory.CreateProjectBrowserService(); sc.AddService <IProjectBrowserService>(projectBrowserSvc); this.procedureListSvc = svcFactory.CreateProcedureListService(); sc.AddService <IProcedureListService>(procedureListSvc); var upSvc = svcFactory.CreateUiPreferencesService(); sc.AddService <IUiPreferencesService>(upSvc); srSvc = svcFactory.CreateSearchResultService(); sc.AddService <ISearchResultService>(srSvc); var callHierSvc = svcFactory.CreateCallHierarchyService(); sc.AddService <ICallHierarchyService>(callHierSvc); this.searchResultsTabControl = svcFactory.CreateTabControlHost(); sc.AddService <ITabControlHostService>(this.searchResultsTabControl); var resEditService = svcFactory.CreateResourceEditorService(); sc.AddService <IResourceEditorService>(resEditService); var cgvSvc = svcFactory.CreateCallGraphViewService(); sc.AddService <ICallGraphViewService>(cgvSvc); var viewImpSvc = svcFactory.CreateViewImportService(); sc.AddService <IViewImportsService>(viewImpSvc); var symLdrSvc = svcFactory.CreateSymbolLoadingService(); sc.AddService <ISymbolLoadingService>(symLdrSvc); var selSvc = svcFactory.CreateSelectionService(); sc.AddService <ISelectionService>(selSvc); var testGenSvc = svcFactory.CreateTestGenerationService(); sc.AddService <ITestGenerationService>(testGenSvc); }