문제

ASP.NET 웹 사이트에 삽입 된 Firebird를 사용하고 있습니다.VS2010을 관리자로 실행하면 데이터베이스를 성공적으로 호출 할 수 있습니다. 다른 사용자로 실행하면이 오류가 발생합니다.

System.IO.IOException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
   at System.Reflection.Emit.ModuleBuilder.SavePEFile(RuntimeModule module, String fileName, Int32 entryPoint, Int32 isExe, Boolean isManifestFile)
   at System.Reflection.Emit.ModuleBuilder.Save(String fileName, Boolean isAssemblyFile, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine)
   at System.Reflection.Emit.AssemblyBuilder.SaveNoLock(String assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine)
   at System.Reflection.Emit.AssemblyBuilder.Save(String assemblyFileName, PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine)
   at System.Reflection.Emit.AssemblyBuilder.Save(String assemblyFileName)
   at FirebirdSql.Data.Client.Native.FbClientFactory.CreateInstance(TypeBuilder tb)
   at FirebirdSql.Data.Client.Native.FbClientFactory.GenerateFbClient(String dllName)
   at FirebirdSql.Data.Client.Native.FbClientFactory.GetFbClient(String dllName)
   at FirebirdSql.Data.Client.Native.FesDatabase..ctor(String dllName, Charset charset)
   at FirebirdSql.Data.FirebirdClient.ClientFactory.CreateDatabase(FbConnectionString options)
   at FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()
   at FirebirdSql.Data.FirebirdClient.FbConnectionPool.Create()
   at FirebirdSql.Data.FirebirdClient.FbConnectionPool.CheckOut()
   at FirebirdSql.Data.FirebirdClient.FbConnection.Open()
.

IIS에 서비스를 배포했지만 호출 할 때 동일한 오류가 발생합니다.또한 관리자 계정에서 작동하려면 Windows / System32에서 fbemdeb.dll을 복사해야했습니다.

콘솔 응용 프로그램 내에서 DB와 동일한 호출을 해왔으며 모든 사용자 계정에서 작동합니다.웹 서비스에만이 문제가 있습니다.

모든 제안? 나는 Firebird 2.5

를 사용하고 있습니다

도움이 되었습니까?

해결책

권한 문제와 같습니다.앱 풀을 실행하는 사용자는 아마도 디스크에 저장할 수 없습니다.이것은 당신이 보낸 스택 추적에 의해 제안됩니다 :

   at System.Reflection.Emit.AssemblyBuilder.Save(String assemblyFileName)
.

Firebird API는 런타임에 어셈블리를 구축하기 위해 몇 가지 기술을 사용합니다.API 문서를보고 임시 디렉토리를 구성하는 방법이 있는지 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top