> When the offending line throws, paste the exception and the stack. Before
you copy the stack, right click on the Call Stack window and choose Show
External Code (or something like that)).
David -
Couldn't see anything like Show External Code in VS2010 Professional (SP1) -
but what was illuminating was to set the FileNotFoundException to break,
then copy its error to the Clipboard. The Call Stack seemed a little more
complete this time , but the detailed exception text seems to indicate that
some temporary files FAIL to be created -
System.IO.FileNotFoundException occurred
FileName=XSDTest1.XmlSerializers, Version=1.0.5.0, Culture=neutral,
PublicKeyToken=null
FusionLog=""
Message=Could not load file or assembly 'XSDTest1.XmlSerializers,
Version=1.0.5.0, Culture=neutral, PublicKeyToken=null' or one of its
dependencies. The system cannot find the file specified.
Source=mscorlib
StackTrace:
at System.Reflection.Assembly._nLoad(AssemblyName fileName, String
codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark&
stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef,
Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean
forIntrospection)
InnerException: System.IO.FileNotFoundException
FileName=XSDTest1.XmlSerializers, Version=1.0.5.0, Culture=neutral,
PublicKeyToken=null
FusionLog=Assembly manager loaded from:
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorwks.dll
Running under executable C:\Users\Ian Thomas\Documents\Visual Studio
2010\Projects\XSDTestVB\XSDTest1\bin\debug\XSDTest1.vshost.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: User = Win7-64\Ian Thomas
LOG: DisplayName = XSDTest1.XmlSerializers, Version=1.0.5.0,
Culture=neutral, PublicKeyToken=null, processorArchitecture=MSIL
(Fully-specified)
LOG: Appbase = file:///C:/Users/Ian Thomas/Documents/Visual Studio
2010/Projects/XSDTestVB/XSDTest1/bin/debug/
LOG: Initial PrivatePath = NULL
Calling assembly : System.Xml, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Users\Ian
Thomas\Documents\Visual Studio
2010\Projects\XSDTestVB\XSDTest1\bin\debug\XSDTest1.vshost.exe.config
LOG: Using machine configuration file from
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\config\machine.config.
LOG: Policy not being applied to reference at this time (private, custom,
partial, or location-based assembly bind).
LOG: Attempting download of new URL file:///C:/Users/Ian
Thomas/Documents/Visual Studio
2010/Projects/XSDTestVB/XSDTest1/bin/debug/XSDTest1.XmlSerializers.DLL.
LOG: Attempting download of new URL file:///C:/Users/Ian
Thomas/Documents/Visual Studio
2010/Projects/XSDTestVB/XSDTest1/bin/debug/XSDTest1.XmlSerializers/XSDTest1.
XmlSerializers.DLL.
LOG: Attempting download of new URL file:///C:/Users/Ian
Thomas/Documents/Visual Studio
2010/Projects/XSDTestVB/XSDTest1/bin/debug/XSDTest1.XmlSerializers.EXE.
LOG: Attempting download of new URL file:///C:/Users/Ian
Thomas/Documents/Visual Studio
2010/Projects/XSDTestVB/XSDTest1/bin/debug/XSDTest1.XmlSerializers/XSDTest1.
XmlSerializers.EXE.
Message=Could not load file or assembly 'XSDTest1.XmlSerializers,
Version=1.0.5.0, Culture=neutral, PublicKeyToken=null' or one of its
dependencies. The system cannot find the file specified.
InnerException:
Much of that shows that it is going to the LOG. I have had the assembly log
binding log viewer running, and just refreshed it - it has its time-stamps
rally cr4pped up, so either daylight saving is causing havoc or it needs a
re-write. I haven't checked all the entries in my custom folder (those .htm
files will have sequential time-stamps, even if internally the LOG
time-stamp is A-about), but I trust that I will find those messages pasted
above.
Leaving that aside: I stepped into (F8) the offending line, but I can't see
on disk, those DLL/EXE files that are named in the LOG.
What does "attempting download" mean? I assume it failed to create those
files, for some reason.
I think I will leave it there for today. (also, Codify or my ISP seems to
have a 1-hour+ delay in posting to the list, this afternoon)
_____
Ian Thomas
Victoria Park, Western Australia
_____
From: [email protected] [mailto:[email protected]]
On Behalf Of David Kean
Sent: Thursday, October 13, 2011 1:02 PM
To: ozDotNet
Subject: RE: first chance exception
When the offending line throws, paste the exception and the stack. Before
you copy the stack, right click on the Call Stack window and choose Show
External Code (or something like that)).
From: [email protected] [mailto:[email protected]]
On Behalf Of Ian Thomas
Sent: Wednesday, October 12, 2011 9:13 PM
To: 'ozDotNet'
Subject: RE: first chance exception
David
This is with a breakpoint set a few lines below the "offending" line, but
seems the same if it's at the same line -
> XSDTest2.exe!XSDTest2.XSDTest.Program2.Main(String() args =
{Length=0}) Line 64 Basic
[Native to Managed Transition]
[Managed to Native Transition]
Microsoft.VisualStudio.HostingProcess.Utilities.dll!Microsoft.VisualStudio.H
ostingProcess.HostProc.RunUsersAssembly() + 0x47 bytes
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.Executio
nContext executionContext, System.Threading.ContextCallback callback, object
state) + 0x9b bytes
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x4d
bytes
Now, with fuslogvw running under admin privileges, running the small app
under Debug or from its Release command prompt (it's a tiny command line
thing), there's nothing to report in the log, after refresh (I left the
default logging location, which I assume it can find and report, if it's
not empty; and 'Log all binds to disk' was selected).
I see that I have 2 versions of the logger - v3.5 and v4.0 (64-bit) -
provided with VS and the Windows SDK - but both can run enabled, and neither
reports anything after running my app.
None of this is illuminating me yet (but I appreciate the help / education
from all of you)
_____
Ian Thomas
Victoria Park, Western Australia
_____
From: [email protected] [mailto:[email protected]]
<mailto:%5bmailto:[email protected]%5d> On Behalf Of David Kean
Sent: Thursday, October 13, 2011 11:45 AM
To: ozDotNet
Subject: RE: first chance exception
Can you paste the call stack when the first chance exception occurs?
From: [email protected] [mailto:[email protected]]
<mailto:%5bmailto:[email protected]%5d> On Behalf Of Joseph
Clark
Sent: Wednesday, October 12, 2011 8:03 PM
To: ozDotNet
Subject: Re: first chance exception
Try using the Assembly Binding log viewer (fuslogvw
<http://msdn.microsoft.com/en-us/library/e74a18c4%28v=vs.71%29.aspx> ) to
see where it is binding the serializer assemblies from (make sure it is
configured to log all binds to disk).
On Thu, Oct 13, 2011 at 1:54 PM, Ian Thomas <[email protected]> wrote:
Looked everywhere under my user account, for all DLLs. But even w/o locating
it/them, should Debug show the first chance exceptions after I have done the
generation? I would have thought the message would disappear.
_____
Ian Thomas
Victoria Park, Western Australia
_____
From: [email protected] [mailto:[email protected]]
On Behalf Of David Kean
Sent: Thursday, October 13, 2011 8:46 AM
To: ozDotNet
Subject: RE: first chance exception
Where are you looking? I believe they generate them in the temp directories
somewhere.
From: [email protected] [mailto:[email protected]]
On Behalf Of Ian Thomas
Sent: Wednesday, October 12, 2011 5:18 PM
To: 'ozDotNet'
Subject: first chance exception
As I understand the documentation, Generate Serialization Assembly should
produce a DLL ("Serialization assemblies are named
TypeName.XmlSerializers.dll"). Is that right? I don't see any DLLs, and I
still receive the The FileNotFoundException (which are first-chance handled
exceptions) in debug.
I did explicitly set it On.
I know (from David Kean's advice) these FileNotFoundExceptions are nothing
to worry about, but I'd like to see reality match MSDN documentation.
_____
Ian Thomas
Victoria Park, Western Australia
_____
From: [email protected] [mailto:[email protected]]
On Behalf Of David Kean
Sent: Wednesday, October 12, 2011 2:12 PM
To: ozDotNet
Subject: RE: XMLSerializer error
The FileNotFoundException (which are first-chance handled exceptions and not
unhandled) are expected - the XmlSerializer looks for a pre-compiled
serialization assembly before it generates one on the fly.
You can pre-generate serialization assemblies via the Generate serialization
assembly option on the Build tab of the Project properties.