George2 could merely be looking for consistency in the responses received for a given post. Boards systems have come along way with the growing knowledgability of a more informed programming society, but we still have a ways to go. Allot of times you have to, still yet, piece mill a solution together and inevitably debug the holy hell out of it to get it up to snuff, but it is getting better all the time because of members like you all.
The divide by zero appears to be a .Net Framework problem in scope. This scenario involves all .Net languages to include C# and VB.Net to name a short few. The VS .Net executables and .dll's are assembly sets that act as 'assembly instructions' that are parsed and then sent to the .Net JIT compiler for creation.
Basically a .Net assembly acts as a Make and Linker file all in one and it is with this all in one file that the JIT compiles and links your system into bytecode and dynamically stored into memory for operations.
The divide by zero will have to be handled with managed code from within your system's internal code with a specially designed try - catch method as previously stated. The reasoning behind the managed handling was that the .Net Framework has to be a common interface for any language that wants to use it and not all programming languages handle divide by zero equally. This method of handling the divide by zero fault eliminates allot of overiding and system clashes for the time being.
I personally think that a nominal divide by zero try-catch error handling system should be present, if it isn't already and we are merely overlooking it somehow, and to avoid system clashes between languages you must declare the default as being used for DB0 or you must define it yourself with managed code. This would eliminate allot of confusion.