Exemplo n.º 1
0
        /// <summary>
        /// Initializes the <see cref="EngineCore"/>.
        /// </summary>
        /// <param name="processSynchronizer">
        /// The <see cref="IProcessSynchronizer"/> to use for communication with the host.
        /// </param>
        public static void Initialize(IProcessSynchronizer processSynchronizer)
        {
            lock (_syncRoot)
            {
                if (_initialized)
                {
                    return;
                }
                // Initialize variables.
                _currentProcessId = RemoteHooking.GetCurrentProcessId();
                _serverReporter   = processSynchronizer;
                _logBus           = new LogBus(processSynchronizer);
#if !SYNCLOG
                _logBus.Enabled = true;
#endif
                _engine = VirtualizationEngine.InitializeEngine(processSynchronizer);
                // Attach ProcessExit event handler.
                AppDomain.CurrentDomain.ProcessExit += CurrentDomain_ProcessExit;
                // Mark instance as initialized.
                _initialized = true;
                Log.Message("Successfully initialized core components.");
            }
        }
Exemplo n.º 2
0
    /// <summary>
    /// Initializes the <see cref="EngineCore"/>.
    /// </summary>
    /// <param name="processSynchronizer">
    /// The <see cref="IProcessSynchronizer"/> to use for communication with the host.
    /// </param>
    public static void Initialize(IProcessSynchronizer processSynchronizer)
    {
      lock (_syncRoot)
      {
        if (_initialized) return;
        // Initialize variables.
        _currentProcessId = RemoteHooking.GetCurrentProcessId();
        _serverReporter = processSynchronizer;
        _logBus = new LogBus(processSynchronizer);
#if !SYNCLOG
        _logBus.Enabled = true;
#endif
        _engine = VirtualizationEngine.InitializeEngine(processSynchronizer);
        // Attach ProcessExit event handler.
        AppDomain.CurrentDomain.ProcessExit += CurrentDomain_ProcessExit;
        // Mark instance as initialized.
        _initialized = true;
        Log.Message("Successfully initialized core components.");
      }
    }