将WSAStringToAddress移植到WinRT中

时间:2012-12-20 11:15:29

标签: c# c++ .net network-programming windows-runtime

所以,我正在将一些代码移植到WinRT,并且出于过于自虐而无法解释的原因,我试图移植一些非常非常依赖于WinSock和IPAddress的代码,所以我正在编写自己的实现IPAddress,我坚持WSAStringToAddress,或者更广泛地说,实现IPAddress InternalParse(接受字符串,吐出IPAddress)。

似乎每个人都使用库函数(有充分理由),这些函数在WinRT中似乎并不合理。 (谷歌搜索它作为'面试问题'似乎没有得到任何结果)

有没有人有一个体面的方式去字符串 - > v6和v4的IP地址?

编辑:

这会合理吗?

    private static unsafe IPAddress InternalParse(string ipString, bool tryParse)
    {
        HostName hn = new HostName(ipString);
        IPAddress ipAddr = new IPAddress(GetBytes(hn.ToString()));
        return ipAddr;
    {

    private static byte[] GetBytes(string str)
    {
        byte[] bytes = new byte[str.Length * sizeof(char)];
        System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
        return bytes;
    }

0 个答案:

没有答案