Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengendalikan Laluan Fail Terlalu Panjang dalam .NET?
Mengatasi Isu Laluan Fail Panjang dalam Aplikasi .NET
Aplikasi .NET boleh menghadapi masalah apabila bekerja dengan laluan fail melebihi had standard 259 aksara. Had ini menjejaskan kedua-dua kelas FileInfo
terbina dalam dan fungsi Win32 asli yang diakses melalui P/Invoke.
Berikut ialah strategi berkesan untuk mengurus laluan fail yang terlalu panjang:
Memanfaatkan Sintaks Laluan Panjang (.NET 4.6.2 dan lebih baru):
Untuk .NET Framework 4.6.2 dan versi yang lebih baharu, tambahkan laluan dengan "?" (cth., "?C:..."). Ini memintas penormalan laluan dan memastikan laluan penuh dihantar terus ke sistem fail.
Menggunakan API Win32 yang Mematuhi Unikod (Pra .NET 4.6.2):
Dalam versi sebelum .NET 4.6.2, gabungkan "?" awalan dengan versi Unicode bagi fungsi Win32 API (seperti GetFileAttributesExW
) diakses melalui P/Invoke. Fungsi ini secara jelas menyokong panjang laluan lanjutan.
Sokongan Terbina Dalam.NET Core:
.NET Core dan versi terkemudian sememangnya mengendalikan laluan yang panjang, menghapuskan keperluan untuk penyelesaian manual.
Pertimbangan Penting:
Pastikan had ini apabila bekerja dengan laluan yang panjang:
LoadLibrary
, mungkin masih gagal dengan laluan yang lebih panjang daripada 260 aksara.Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Laluan Fail Terlalu Panjang dalam .NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!