Trong bài viết này sẽ hướng dẫn các bạn khắc phục error 14 khi biên dịch (compiler) project csharp.
Hiện tượng:
Khi biên dịch project xong, các bạn nhận được thông báo lỗi (error) kiểu như sau:
“Couldn’t process file xxx.resx due to its being in the Internet or Restricted zone or having the mark of the web on the file. Remove the mark of the web if you want to process these files.“
Nguyên nhân:
Nếu bạn đã tải xuống file từ internet (hoặc từ server dùng chung của dự án), file đó có thể là file riêng lẻ hoặc bên trong một file .zip hoặc tương tự thì file đó có thể đã bị “khóa (locked)” vì nó được gắn cờ là đến từ vùng internet (the internet zone). Nhiều chương trình sẽ sử dụng điều này như một dấu hiệu cho thấy nội dung không đáng tin cậy.
Cách khắc phục:
– Để giải quyết vấn đề này, giải pháp đơn giản nhất là bạn tìm đến file xxx.resx của project xuất hiện trong mô tả lỗi (trong ví dụ ở đây là file MezzConForm.resx) > right-click vào file đó > chọn Properties > ở cuối hộp thoại này, bạn chọn “Unblock” > Apply, OK để chấp nhận thay đổi.
– Trường hợp file bạn đã tải là .zip, trước khi giải nén tốt nhất là trước tiên bạn nên unblock file .zip này. Vì nếu file .zip được gắn cờ (flag) là đến từ vùng internet (the internet zone) và bạn giải nén, flag đó có thể lây truyền tới nhiều file chứa bên trong nó sau khi giải nén xong. Nếu bạn unblock trước tiên, các file sau khi giải nén sẽ không sao.
– Để unblock (remove the lock) file .zip thì có nhiều cách. Bạn có thể dùng một lệnh Powershell là Unblock-File:
> Unblock-File *