2

如果我有一个带有 .NET 4.5 和 Windows Store 的可移植类,我可以使用 DllImport。但是,当我添加 WP8 时,它不再可用,即使 WP8 支持 DllImport。这是怎么回事?

4

1 回答 1

4

仅仅因为您可以[DllImport ...]在 C# WP8 项目中添加并不意味着它受支持。

    private void Button_Click_1(object sender, RoutedEventArgs e)
    {
        var v = GetCurrentThread();
    }

    [DllImport("kernel32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
    public static extern IntPtr GetCurrentThread();

...将NotSupportedException在 WP8 中给出一个。尽管MSDN 说这是 WP8 支持的 Win32 API。

这也可以解释为什么你失去了DllImport在 PCL 中使用的能力......

于 2012-12-20T09:02:30.570 回答