Red Gate forums :: View topic - Cannot find dependency Microsoft.Workflow.Compiler
Return to www.red-gate.com RSS Feed Available

Search  | Usergroups |  Profile |  Messages |  Log in  Register 
Go to product documentation
SmartAssembly 5
SmartAssembly 5 forum

Cannot find dependency Microsoft.Workflow.Compiler

Search in SmartAssembly 5 forum
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.
Jump to:  
Author Message
mcobrien



Joined: 19 Jul 2010
Posts: 3

PostPosted: Thu Oct 28, 2010 3:54 pm    Post subject: Cannot find dependency Microsoft.Workflow.Compiler Reply with quote

Hi there,

I'm obfuscating a Windows Workflow app and I'm getting an error saying the Microsoft.Workflow.Compiler assembly (which is a dependency of System.Workflow.ComponentModel, which is directly linked by my target app) can't be found.

It is in the GAC though, with the right version and public key. One thing I noticed is that it has a .exe extension rather than .dll. (The full path is C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.Workflow.Compiler\v4.0_4.0.0.0__31bf3856ad364e35\Microsoft.Workflow.Compiler.exe.) Could this be confusing SA somehow?

thanks
Michael
Back to top
View user's profile Send private message
Brian Donahue



Joined: 23 Aug 2004
Posts: 6644

PostPosted: Mon Nov 01, 2010 11:12 am    Post subject: Reply with quote

Hi Michael,

I don't believe that SmartAssembly can pick up this dependency because Workflow.ComponentModel doesn't specifically reference the compiler executable. As far as I can tell you would be required to make sure that the end-user has .NET Framework 3.5 installed on the computer rather than rely on SA to package these Framework Class Library dependencies up for you.
Back to top
View user's profile Send private message
mcobrien



Joined: 19 Jul 2010
Posts: 3

PostPosted: Mon Nov 01, 2010 11:34 am    Post subject: Reply with quote

Hi, thanks for getting back to me.

According to Reflector, System.Workflow.ComponentModel does have a direct reference to the Compiler assembly. This is with .NET 4.0 btw, sorry if I didn't make that clear.

In any case I don't want to package the workflow assemblies -- I'm only obfuscating and merging my own assemblies and leaving workflow as a regular reference.

I've manually added the Assembly element with NotAvailable=1 in the SmartAssembly project file but thought this sounded like a bug.

thanks
M
Back to top
View user's profile Send private message
Brian Donahue



Joined: 23 Aug 2004
Posts: 6644

PostPosted: Mon Nov 01, 2010 11:49 am    Post subject: Reply with quote

I think I may have misunderstood a bit as well. I think you were trying to say the project would not build and I was thinking it didn't run after the build. Also didn't bother to check .NET 4 because it didn't seem to me that MS would make any fundamental changes to something as new as Workflow.

I'll see if I can reproduce this and get back to you.
Back to top
View user's profile Send private message
Brian Donahue



Joined: 23 Aug 2004
Posts: 6644

PostPosted: Mon Nov 01, 2010 3:38 pm    Post subject: Reply with quote

Hello Michael,

I have logged a bug for this ( SA-591 ). Thanks for pointing this out. The problem is during the part of the processing where the assembly dependencies are gathered. The Workflow Compiler is not in the GAC and not in the local folder, it is in the .NET Framework installation folder. This seems to be the root cause of the problem.
Back to top
View user's profile Send private message
Display posts from previous:   
This topic is locked: you cannot edit posts or make replies. All times are GMT + 1 Hour
Page 1 of 1

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group