コード例 #1
0
 public PowerManager(MarshalProvider marshal, PowerManagementInteropWrapper powerManagementInterop)
 {
     _marshal = marshal
                ?? throw new ArgumentNullException(nameof(marshal));
     _powerManagementInterop = powerManagementInterop
                               ?? throw new ArgumentNullException(nameof(powerManagementInterop));
 }
コード例 #2
0
        public PowerManagerCustom()
        {
            var powerInterop = new PowerManagementInteropWrapper();
            var marshal      = new MarshalProvider();

            _powerManager         = new PowerManager(marshal, powerInterop);
            _suspendManager       = new SuspendManager(powerInterop);
            _hibernateFileManager = new HibernateFileManager(marshal, powerInterop);
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: xeniyad/UnmanagedCode.HW
        static void Main(string[] args)
        {
            var powerManagementInterop = new PowerManagementInteropWrapper();
            var marshalProvider        = new MarshalProvider();
            var powerManager           = new PowerManager(marshalProvider, powerManagementInterop);

            DateTime lastSleepTime      = powerManager.GetLastSleepTime();
            DateTime lastWakeTime       = powerManager.GetLastWakeTime();
            var      systemBatteryState = powerManager.GetSystemBatteryState();
            var      powerInformation   = powerManager.GetSystemPowerInformation();

            var           hibernateFileManager = new HibernateFileManager(marshalProvider, powerManagementInterop);
            PointerResult result = hibernateFileManager.ReserveFile();

            if (!result.IsSuccessful)
            {
                throw new InvalidOperationException("Hibernate file reverse was unsuccessful.");
            }

            var suspendManager = new SuspendManager(powerManagementInterop);

            System.Console.WriteLine("Press any key to continue");
            System.Console.ReadKey();
        }
コード例 #4
0
 public HibernateFileManager(MarshalProvider marshal, PowerManagementInteropWrapper powerManagementInterop)
 {
     _marshal = marshal;
     _powerManagementInterop = powerManagementInterop;
 }