Showing results for August 2007 - Page 3 of 5 - The Old New Thing

Aug 20, 2007
Post comments count0
Post likes count0

Just because you're a control doesn't mean that you're necessarily inside a dialog box

Raymond Chen
Raymond Chen

Prerequisites: Moderate to advanced understanding of the window and dialog managers. When you're implementing a control, you need to be aware that you aren't necessarily being hosted inside a dialog box. One commenter suggested handling and closing the dialog box as a way to prevent multi-line edit controls from eating the Enter key. But the edi...

History
Aug 17, 2007
Post comments count0
Post likes count0

Do you have a Starbucks name?

Raymond Chen
Raymond Chen

Annabelle Gurwitch has found what may be one of the few remaining places where you can be anybody you want: Starbucks. Check out the part towards the end where people on the street are asked to share their Starbucks names. I'm reminded of a time many years ago when Schultzy's Sausage had expanded to a second location in Redmond. (They closed the...

Non-Computer
Aug 17, 2007
Post comments count0
Post likes count0

What are these spurious nop instructions doing in my C# code?

Raymond Chen
Raymond Chen

Prerequisites: Basic understanding of assembly language. When you debug through some managed code at the assembly level, you may find that there are an awful lot of instructions scattered throughout your method. What are they doing there; isn't the JIT smart enough to remove them? Isn't this going to slow down execution of my program? It is my u...

Code
Aug 16, 2007
Post comments count0
Post likes count0

The Radioactive Boy Scout is back in the news

Raymond Chen
Raymond Chen

The Radioactive Boy Scout appears to be back to his old tricks.¹ Nitpicker's Corner ¹Although this statement is written as if it were a fact, it is actually my interpretation of a newspaper article and is not an official position of Microsoft Corporation.

Non-Computer
Aug 16, 2007
Post comments count0
Post likes count0

What are these strange cmp [ecx], ecx instructions doing in my C# code?

Raymond Chen
Raymond Chen

When you debug through some managed code at the assembly level, you'll find a whole lot of seemingly pointless instructions that perform a comparison but ignore the result. What's the point of comparing two values if you don't care what the result is? In C++, invoking an instance method on a pointer results in undefined behavior. In other words, ...

Code
Aug 15, 2007
Post comments count0
Post likes count0

For $15, you can purchase incorrect information, and to prevent people from getting it, you have to renew every three months

Raymond Chen
Raymond Chen

Given what I know about Naveen Jain, I basically view everything he does with enormous skepticism.¹ I mean, I trust lawyers more than I trust that guy, that's how bad it is. After being booted from InfoSpace, Jain moved across the street and founded Intelius, a company that does basically the same thing: Selling directory information.² ...

Non-Computer
Aug 15, 2007
Post comments count0
Post likes count0

C# static constructors are called on demand, not at startup

Raymond Chen
Raymond Chen

One of the differences between C++ and C# is when static constructors run. In C++, static constructors are the first thing run in a module, even before the function runs.¹ In C#, however, static constructors don't run until you use the class for the first time. If your static constructor has side effects, you may find yourself experiencing ...

Code
Aug 14, 2007
Post comments count0
Post likes count0

SIFF 2007 wrap-up: Grandhotel, The Boss of It All, Vacation

Raymond Chen
Raymond Chen

Sorry, SIFF fans, but this article got stuck in the queue. But now it's unstuck. Grandhotel : A sweet story about a shy, innocent, weather-obsessed hotel employee and the even stranger people who surround him. I wasn't quite sure what to expect, but I was quite pleased with what I got. Part comedy, part drama, the movie creates touching moments wh...

Non-Computer
Aug 14, 2007
Post comments count0
Post likes count0

What is the order of evaluation in C#?

Raymond Chen
Raymond Chen

The C and C++ languages leave the order of evaluation generally unspecified aside from specific locations called sequence points. Side effects of operations performed prior to the sequence point are guaranteed visible to operations performed after it.¹ For example, the C comma operator introduces a sequence point. When you write f(), g(), the...

Code
Aug 13, 2007
Post comments count0
Post likes count0

Math is hard, let's go shopp—oops

Raymond Chen
Raymond Chen

(The title is another variation on Math is hard, let's go shopping!", which appears to be a popular catchphrase over in Michael Kaplan's neck of the woods. The history of the phrase was researched on Language Log.) Last spring, I was at a local crafts store and paid for a $2.15 item with a $5 bill and two dimes. The teenage salesclerk rang up t...

Non-Computer