更新日:2022/03/17
このページではPowershell により指定したファイルを読み取りロックするサンプルコードを紹介します。
ファイルをロックすると他のアプリから読み取ることができなくなります。
例えばテキストファイルに対してこのサンプルプログラムを実行すると、このファイルをメモ帳などで開こうとすると次のようなエラーが発生します。
プロセスはファイルにアクセスできません。別のプロセスが使用中です。
次の例は$FileToLockで指定したファイルを読み取りロックします。
サンプルコード:
$FileToLock="c:\temp\lockfile.txt"
# ファイルを読み取りロックする
$file = [System.IO.File]::Open($FileToLock,[System.IO.FileMode]::Open,[System.IO.FileAccess]::Read,[System.IO.FileShare]::None)
#ロックを解除する
#$file.Close()
すでにファイルがロックされた状態でロックを実行すると、次のエラーが発生してしまいます。
"4" 個の引数を指定して "Open" を呼び出し中に例外が発生しました: "別のプロセスで使用されているため、プロセスはファイル '
c:\temp\lockfile.txt' にアクセスできません。"
[Powershell FAQ トップへ]
[FAQ CENTER トップ]