Пример #1
0
        public RootFolder(OverviewShellFolderServer server, ShellItemIdList idList)
            : base(idList)
        {
            if (server == null)
            {
                throw new ArgumentNullException(nameof(server));
            }

            Server = server;
        }
        private void CommonStart(string ipcFormat = null)
        {
            _server?.Stop();
            _server = new OverviewShellFolderServer();
            var config = new ShellFolderConfiguration();

            // we're not impersonating client
            config.ImpersonateClient = false;

            // this will fix an endpoint for clients connecting to a service:
            // they *must* register with "ShellBoost.Samples.FolderService.ShellFolderService" as IpcFormat.
            //
            // clients from interactive run (console) don't need that.
            config.IpcFormat = ipcFormat;

            config.NativeDllRegistration = RegistrationMode.User;
            _server.Start(config);
        }
 protected override void OnStop()
 {
     _server?.Stop();
     _server = null;
 }