2016-04-15 19 views
1

現在の画面の明るさを読み取って、実際に設定するアプリを書いています。いくつかの検索を行った後、私はシステムUWPでの管理エラー

static byte GetBrightness() 
     { 
      ManagementScope s = new ManagementScope("root\\WMI"); 
      SelectQuery q = new SelectQuery("WmiMonitorBrightness"); 

      ManagementObjectSearcher mos = new ManagementObjectSearcher(s, q); 

      ManagementObjectCollection moc = mosGet(); 

      byte curBrightness = 0; 

      foreach (System.Management.ManagementObject o in moc) 
      { 
       curBrightness = (byte)o.GetPropertyValue("CurrentBrightness"); 
       break; 
      } 

      moc.Dispose(); 
      mos.Dispose(); 

      return curBrightness; 
     } 

static void SetBrightness(byte targetBrightness) 
     { 
      ManagementScope s = new ManagementScope("root\\WMI"); 

      SelectQuery q = new SelectQuery("WmiMonitorBrightnessMethods"); 

      ManagementObjectSearcher mos = new ManagementObjectSearcher(s, q); 

      ManagementObjectCollection moc = mos.Get(); 

      foreach (System.Management.ManagementObject o in moc) 
      { 
       o.InvokeMethod("WmiSetBrightness", new Object[] { UInt32.MaxValue, targetBrightness }); 
      } 

      moc.Dispose(); 
      mos.Dispose(); 
     } 

System.Management DLLを必要とし、次のコードを発見した私は、UWPでSystem.Managementのdllを追加することができました。私はビルドするときしかし、私は次のエラーを取得:

C#リファレンスは、それが「システム」で定義されているが、それは

を見つけることができませんでした 'コンポーネントの主張を入力し、これを達成する方法はありますUWPで?

答えて

0

System.Management Namespaceは、.Netアプリケーションでのみ利用可能です。
このDLLをUWPアプリケーションで使用することはできません

+0

UWPでのこのような代替ソリューションはありますか? – siam

+0

システムの明るさや音量を制御する方法がないのは怖いです。サンドボックス... –

関連する問題