ASP.NET + MDB にて排他制御が上手く行かず、例えば mdb を access にて直接開いているときに、
ASP.NET から IIS 経由にて開こうとするとエラーが出る場合の対処方法です。
原因:そのフォルダに適切なアクセス権が設定されていないことが原因です。
IISは、既定で IIS_IUSRS というグループアクセス権を使用しますので、
mdb が存在するフォルダ全体に対して、IIS_IUSRS に適切なアクセス権(変更と書込)を与えます。
ロックファイル(ldb)にもアクセス権が与えられなければなりませんので、mdbファイルだけでなく、
フォルダ全体にアクセス権を与えることが必要です。
※ アクセス権の変更はシステム・セキュリティー全体に影響を与え、
セキュリティーホールを作ってしまう可能性もあるため、慎重に行ってください。
|