September 9, 2008 at 10:02 am
Hey Experts - I need your help. I am NEW to SSRS configuration, not to the engine (just a "dumb DBA" I guess :w00t:). I have installed and configured (via configuration manager) SSRS on a 64bit machine (64bit Enterprise Edition SQL 2005) and am receiving the error message below. I have executed via cmd prompt aspnet_regiis.exe -i inside the C:\Windows\Microsoft.net\framework\v2.0.50727 directory as well as C:\Windows\Microsoft.net\framework64\v2.0.50727. When I PROHIBIT the extension inside of IIS manager the (32bit) version of .NET, I get nuthin - when I ALLOW for both I get this (via IE7):
Server Error in '/Reports' Application.
--------------------------------------------------------------------------------
Attempted to load a 64-bit assembly on a 32-bit platform. Use ReflectionOnlyLoad() instead if trying to load for reflection purposes.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.BadImageFormatException: Attempted to load a 64-bit assembly on a 32-bit platform. Use ReflectionOnlyLoad() instead if trying to load for reflection purposes.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[BadImageFormatException: Attempted to load a 64-bit assembly on a 32-bit platform. Use ReflectionOnlyLoad() instead if trying to load for reflection purposes.]
System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0
System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +211
System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +141
System.Reflection.Assembly.Load(String assemblyString) +25
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +32
[ConfigurationErrorsException: Attempted to load a 64-bit assembly on a 32-bit platform. Use ReflectionOnlyLoad() instead if trying to load for reflection purposes.]
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +596
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +3479081
System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +46
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +177
System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) +180
System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) +3446661
System.Web.Compilation.BuildManager.CompileGlobalAsax() +51
System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +462
[HttpException (0x80004005): Attempted to load a 64-bit assembly on a 32-bit platform. Use ReflectionOnlyLoad() instead if trying to load for reflection purposes.]
System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() +57
System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +612
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) +456
[HttpException (0x80004005): Attempted to load a 64-bit assembly on a 32-bit platform. Use ReflectionOnlyLoad() instead if trying to load for reflection purposes.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +3426887
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +88
System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +149
--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42
Help is appreciated!!!
September 9, 2008 at 11:03 am
That is odd. The error message seems to be indicating that IIS thinks it is 32 bit.
So, the first question is: are you are sure this is a 64 bit server running a 64 bit operating system with 64 bit IIS installed?
Check the processes in task manager to make sure IIS is not running in 32 bit under WOW or something crazy like that.
September 9, 2008 at 11:07 am
I start with the obvious....
This IS a 64-bit machine and OS installation, yes?
September 9, 2008 at 11:19 am
I agree it is "odd" and just to answer your question - yes it is a 64bit OS - Win2003 R2 Enterprise Edition x64 is what the Properties of My Computer list. I also checked the SQL Server installation - the instance clearly has Microsoft SQL Server Enterprise Edition (64 bit).
But thanks for making me take a second "looksee";)
September 9, 2008 at 11:26 am
Ok, so check if IIS is running in 64 bit. It can be installed and configured to run in 32 bit mode under WOW on a 64 bit machine.
September 9, 2008 at 11:45 am
Hi Michael - not being stupid here - BUT - I think you may have "nailed it!" I "assumed" it was a "true" 64bit machine, when in fact, I am thinking now that there is something rather "peculiar". This is a VMWare machine with the 64bit OS loaded, and SQL Server 2005 64bit application loaded, but Task Manager tells what I think may be a different story - I see numerous processes in the TASK Manager that have the *32 including the Frameworkservice.exe * 32.
could this be my issue? I see the VMWareService.exe*32 - could this be part of what is at work here?
Thanks for pointing me in the right direction folks!
September 9, 2008 at 11:54 am
The *32 means the process is running on WOW. So, what you are seeing confirms that your server is running the 64 bit operating system as it should be. Look at the IIS processes to make sure they do not have the *32 on them. I cannot remember if you can specify a particular application pool in IIS to run under WOW, but that may also be the case. If that is possible, make sure RS is running in a 64 bit application pool.
Viewing 7 posts - 1 through 6 (of 6 total)
You must be logged in to reply to this topic. Login to reply