We are currently evaluating the upgrade from VS 2010 to VS 2012 as we require features from .Net framework 4.5. During this evaluation I just stumbled upon the issue that VS 2012 is unable to locate the envdte.dll from within a T4 template file.
This will fail:
<#@ Assembly Name="envdte.dll" #>
with the error: Compiling transformation: Metadatafile 'envdte.dll' could not be found
To resolve the issue we currently have to specify the full path to the envdte.dll so this will work:
<#@ Assembly Name="C:\Program Files (x86)\Common Files\microsoft shared\MSEnv\PublicAssemblies\envdte.dll" #>
Although a possible workaround is available, it should not be necessary to specify the full path to the dll and should, in my opinion, be considered a bug and treated as such.