I use DotLisp as a .NET scripting language and I do play with things I should be more careful with...
I was looking at a namespace of classes and was determining if their instances implemented more interfaces than their Types declared (this is common, for example __ComObject does not implement IEnumerator, but many COM object instances do). In pseudocode I intended this: For each type in loaded assemblies If type in namespace If type is public Using(Instance = New type()) For each typ in loaded assemblies If TypeOf instance Is typ Then log typ where the Using construct means if the instance implements IDisposable, IDisposable:Dispose is called, and if there's no public constructor for type the exception is caught and ignored. HOWEVER, I put an extra bracket where it didn't need to be so I missed the limit to just the namespace I was interested in :-( That means I created and disposed every type in the BCL that has a public constructor compatible with (I didn't realise why it was failing to get the response I expected, so I tried the loop four times!): 1) no parameters 2) one parameter: integer 0 3) one parameter: integer 1 4) one parameter: String "test" I know the last one created an empty resource file in the current directory, so I guess I've understood what I've done correctly. Now I had a little bit of foreboding once I realised what I'd done, but I'm not sure how long it took me to notice this problem: My fonts have single bits turned off sometimes (*), many mouse cursors have a single pixel wide vertical line about an inch long and across the whole screen there's a very light blue smudge of vertical lines that you can hardly see -- the alpha channel? -- that accumulate with smooth scrolling, whole window drag, etc and mouse cursors leave a trail of this blue smudge too. Note that this happened as a normal User, not an Administrator! I rebooted and found the first mouse cursor displayed once Windows starts BEFORE anyone's logged on already has the vertical line, and the blue smudge was present! As was the font problem once the progress messages are displayed :-( So I logged in as Administrator and tried reducing the video "hardware acceleration". The mouse cursors were correct on the first step down from Full, but the other problems didn't go away until None. Unfortunately, the problems return when I moved back to Full. I also tried power cycling, rebooting to VGA mode and reinstalling the video driver, and a new virus scanner just in case it's an unrelated problem. Anyone know if classes deep in the 1.1 .NET Framework can do this as a User in Windows 2000? And can I fix it? Regards, Mark Hurd, B.Sc.(Ma.)(Hons.) P.S. I've noticed no other errors, crashes or failures (except when Excel tried smooth scrolling when hardware acceleration was None!). (*) Some single pixels turn off for some repaints, seems to be the same pixel for each letter in each font. It seems to be more common in single pixel wide lines, but that might be because they're more likely to be single strokes. =================================== This list is hosted by DevelopMentorĀ® http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com