1

Now I decided to ask for some help. After having investigate for 2 days on my issue, I cannot figure out any solution. Maybe I will be luckier here!

So here is my issue:

On our production server (Windows Server 2008) we have a windows services running which is responsible to run some Jobs automatically. These jobs are configurable through a web application and allow the user following action: - Create the job with one or more tasks (sequential tasks) - Define the job schedule (daily, monthly, …) - Run a task manually

When the service find a job to run, it retrieves the information from the DB and execute each tasks sequentially. To execute a task the service instantiate an object corresponding task and execute it (Different type of task are available and located in different assemblies)

In my failing case:

  • Task1 located in ComponentsA.Tasks.dll is executed. => succeed
  • In Task1, MethodA() located in ModuleA.Logic.dll is called => succeed
  • In MethodA(), GetData() located in ModuleA.Data.dll is calles => FAILED

At this point I retrieve the following error message:

Could not load file or assembly ‘ModuleA.Data.dll’ or one of its dependencies. Access is denied.

The end of fusion log show this:

*ERR: Setup failed with hr = 0x80070005.
 ERR: Failed to complete setup of assembly (hr = 0x80070005). Probing terminated.*

All DLLs are located at the root of the service installation folder. Permission seems to be OK (even if I run the service with an Administrator account and set the full control access to everyone I have the issue) Note: We are facing this critical issue only since Friday. Everything was working properly before. According to infrastructure team, they changed nothing on the server…

If anyone of you guy has an idea, it would save my week. Thanks

Cheers Benoît

DevT
  • 4,843
  • 16
  • 59
  • 92
Benoît
  • 29
  • 1
  • 4
  • Maybe some code signing certificate has expired? – Anton Tykhyy Apr 18 '12 at 13:45
  • What do you mean by code signing? – Benoît Apr 18 '12 at 13:52
  • If you have antivirus, check if it blocks the assembly for some reason. Some other application also might keep your ModuleA.Data.dll open and locked, so that no other app could read it. – seva titov Apr 18 '12 at 14:38
  • It is a pure Windows error. Maybe you can see more by using SysInternals' ProcMon utility. At least you'll see any unmanaged DLL getting implicitly loaded, something you can't see with Fuslogvw. – Hans Passant Apr 18 '12 at 14:50
  • @Hans Passant, I already tried with ProcMon and I noticed nothing special, but thanks for your idea. – Benoît Apr 18 '12 at 14:59
  • @Seva Titov: Antivirus is something I have not checked yet, thanks! Otherwise, how can I check is a DLL is opened and locked ? – Benoît Apr 18 '12 at 15:01

2 Answers2

3

Wanted to post another case others might hit:

I was updating a production server by zipping the production bins on OSX, and unzipping on the production box.

After unzipping the files, the files were drawn green in the explorer window, which I ignored initially, but denotes that the files are encrypted.

Copying these files into the production website causes E_ACCESSDENIED. The solution is to unencrypt before moving - see https://superuser.com/questions/29424/what-do-green-folders-mean-in-windows-7-explorer.

Some background: http://blogs.msdn.com/b/asklar/archive/2012/05/03/why-do-zip-files-from-mac-os-show-up-as-green-encrypted.aspx

Community
  • 1
  • 1
fionbio
  • 3,368
  • 2
  • 23
  • 38
0

I had success deleting the folder that the offending DLL (ModuleA.Data.dll) is in and re-adding it, and making the file inherit permissions from it's parent. Not sure what the problem was, but that worked.

MGOwen
  • 6,562
  • 13
  • 58
  • 67