Color.FromArgb(...);安全信息

时间:2012-10-20 22:20:34

标签: c# visual-studio colors windows-runtime

我从argb定义了一个颜色,ex

Color.FromArgb(255,255,0,0);

在visual studio 2012中,winRT应用程序显示它被标记为[security critical]。有什么理由吗?我试过搜索,没有结果。并且不知道为什么这与安全有关。

更新

现在我注意到,不仅FromArgb(...);方法给出了[SECURITY CRITICAL]警告。其中任何一个:

c.A = 255;
c.R = 255;
c.G = 0;
c.B = 0;

也是。

3 个答案:

答案 0 :(得分:4)

System.Drawing是一个围绕非托管GDI +代码的包装器。根据我的理解,WinRT不支持GDI +:

http://social.msdn.microsoft.com/Forums/en-NZ/winappswithnativecode/thread/0ba00fbd-183f-4df6-afa2-04d0ac14706a

  

原生渲染代码需要使用Direct2D完成。

答案 1 :(得分:2)

您的消息不是警告,是有关方法签名属性的信息。

SECURITY CRITICAL是一个代码属性,其真正的类名是SecurityCriticalAttribute。 必须将此属性赋予需要完全信任才能执行代码的方法(通常是本机代码调用,不安全代码,图形资源(通常需要非托管代码等)。)

如果未授予方法完全信任,则“安全关键”方法会引发异常。

更多信息:http://msdn.microsoft.com/en-us/library/system.security.securitycriticalattribute.aspx

答案 2 :(得分:2)

您应该使用Color中的System.Windows.Media代替。