一番速い解決策:PowerShell で一括解除
フォルダ内の 全ファイル から Web のマークを一括削除できます。
① Visual Studio を閉じる
② PowerShell を開いて、プロジェクトフォルダに移動
例:cd “C:\\Projects\\Test_Project”
③ このコマンドを実行(全ファイルからZone情報を削除)
Get-ChildItem -Recurse | Unblock-File✔ これで全 .resx が読み込めるようになります
数秒で終わり、全エラーが一気に消えます。
コマンドを分解して一つ一つ解説していきます!
① Get-ChildItem -Recurse
✔フォルダ内のすべてのファイルとフォルダを取得!
(=Windows の「すべて検索」みたいなイメージ)
Get-ChildItem → 現在のディレクトリの中身を取得
Recurse → サブフォルダも全部含める
例:プロジェクト
├─ Form
│ ├─ JobList.resx
│ ├─ BarcodeManagement.resx
│ └─ …
├─ Model
│ └─ …
この中の すべてのファイル を拾います。
② |(パイプ)
得られたファイルの一覧を 次のコマンドに渡す という意味です。
Unix や Linux のパイプと同じ概念です。
③ Unblock-File
✔ ファイルの「Web のマーク(Zone.Identifier)」を消す cmdlet
Windows は
- インターネットからダウンロードしたファイル
- 外部から入ってきた ZIP を解凍したファイル
に「Zone.Identifier」という隠し属性を付けます。
(メモ)エイリアスがあるので、短縮しまくれる!
エイリアスって便利すぎる…!
ls -r | Unblock-File基本的に、フォルダに対して何かする時はPowershellが便利ですね…!
SaaSとかアプリが世の中には色々ありますが、こういう時はこのアプリ、ツール使うと最強!
みたいな業界図???みたいなものがあればすっごくありがたい気がします…!(作りたい)
