2012-01-12 30 views
6

Tôi đang sử dụng Directory.Exists(uncPath) với đường dẫn UNC, bây giờ không thành công nếu tôi sử dụng địa chỉ IPv6 chuẩn. Có mã có sẵn mà có thể chăm sóc của tất cả các định dạng của unc - ipv4/ipv6/machiname.C# Directory.Exists ipv6 version

Hiện tại tôi chuyển đổi địa chỉ ipv6 của mình thành một địa chỉ như 2001-0-234-c1ab-0-a0-aabc-3e.ipv6-literal.net và nó hoạt động, nhưng bản thân Ipv6 có thể được thể hiện bằng nhiều định dạng. Tôi cần cái gì đó sẽ xử lý tất cả các định dạng.

Trả lời

5

Ký hiệu ipv6-literal.net là cách duy nhất để sử dụng UNC IPv6 trên cửa sổ.

Bạn cần phải thực hiện litteral IPv6 của bạn & thay : với -, % với s và thêm ipv6-literal.net.

+0

Tôi đọc ở đâu đó rằng '% => s' chỉ cần thiết nếu bạn đang sử dụng địa chỉ IPv6 liên kết cục bộ. Địa chỉ Unicast toàn cầu và địa phương duy nhất không yêu cầu số nhận dạng giao diện. Cái quái gì vậy? Điều này có nghĩa là có một số trường hợp đặc biệt? –

+0

Tôi không biết liệu id phạm vi có hợp lệ trong UNC –

+0

Thông tin thêm: http://en.wikipedia.org/wiki/IPv6_address#Literal_IPv6_addresses_in_UNC_path_names – tomfanning