![]() | |
![]() |
| | Thread Tools | Search this Thread | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
I have tested this in a variety of scenarios and the results lead me to point at .NET 2.0. I have also recreated the error in a newly created "hello world" COM server with zero dependencies. On a server with .NET 1.1 only, everything works perfectly, on a server with 2.0 the results are always the same - see below: We expose as a web-service through COM+ the COM server with the "uses soap" method. (SEE: http://tinyurl.com/frsh3) We have used this method for many COM components on many servers without a problem. However - as we deploy it on a server that has .NET 2.0 installed - BOOM! The exposure set-up through COM+ seems to work fine - it creates the necessary interop dll in the \Com\SoapVRoots\ directory, creates the application in IIS and creates all the other necessary files etc. And, as expected, browsing to the root of the new directory in IE shows the root web-service listing, however when we click on the service itself to show the WSDL document the server chokes with: System.BadImageFormatException: The format of the file 'XTest999ServSoapLib' is invalid. File name: "XTest999ServSoapLib" at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Boolean isStringized, Evidence assemblySecurity, Boolean throwOnFileNotFound, Assembly locationHint, StackCrawlMark& stackMark) at System.Reflection.Assembly.InternalLoad(AssemblyNa me assemblyRef, Boolean stringized, Evidence assemblySecurity, StackCrawlMark& stackMark) at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark) at System.Reflection.Assembly.Load(String assemblyString) at System.Runtime.Remoting.RemotingConfigInfo.LoadTyp e(String typeName, String assemblyName) at System.Runtime.Remoting.RemotingConfigInfo.GetServ erTypeForUri(String URI) at System.Runtime.Remoting.RemotingConfigHandler.GetS erverTypeForUri(String URI) at System.Runtime.Remoting.RemotingServices.GetServer TypeForUri(String URI) at System.Runtime.Remoting.Channels.Http.HttpRemoting Handler.CanServiceRequest(HttpContext context) at System.Runtime.Remoting.Channels.Http.HttpRemoting Handler.InternalProcessRequest(HttpContext context) === Pre-bind state information === LOG: DisplayName = XTest999ServSoapLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=72e3a4f914a25359 (Fully-specified) LOG: Appbase = file:///C:/WINDOWS/system32/com/SoapVRoots/xt LOG: Initial PrivatePath = bin Calling assembly : (Unknown). === LOG: Publisher policy file is not found. LOG: No redirect found in host configuration file (C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspn et.config). LOG: Using machine configuration file from C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\confi g\machine.config. LOG: Post-policy reference: XTest999ServSoapLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=72e3a4f914a25359 LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/xt/b1ae6f40/1c17e613/XTest999ServSoapLib.DLL. LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/xt/b1ae6f40/1c17e613/XTest999ServSoapLib/XTest999ServSoapLib.DLL. LOG: Attempting download of new URL file:///C:/WINDOWS/system32/com/SoapVRoots/xt/bin/XTest999ServSoapLib.DLL. "XTest999ServSoapLib" is the interop DLL that COM+/.NET created when we check "uses soap" in COM+, the dll itself is named "XTest999Serv". Please help - we are desperate! M. |
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
| |