Martin Heller
Contributing Writer

Small Differences in Vista Can Break Applications

analysis
Feb 2, 20071 min

It's a truism that applications have to be retested on every new operating system. We expect that. On the other hand, we've come to expect that the .NET Framework will buffer applications for operating system differences. We've been spoiled, I'm afraid, and it's not something we can count on. Take the recently released Ruby in Steel, a Ruby programming environment for Microsoft Visual Studio 2005. The first rele

It’s a truism that applications have to be retested on every new operating system. We expect that.

On the other hand, we’ve come to expect that the .NET Framework will buffer applications for operating system differences. We’ve been spoiled, I’m afraid, and it’s not something we can count on.

Take the recently released Ruby in Steel, a Ruby programming environment for Microsoft Visual Studio 2005. The first release build was specifically supported only on Windows XP and not Windows Vista, which was a clue for me that there might be known issues, but naturally people tried it on Windows Vista anyway, and did encounter problems.

I was surprised by the resolution of this particular problem: it turns out that the .NET function Encoding.UTF8.GetBytes returns a different array of bytes under Vista than XP. Who would have “thunk” it?

Martin Heller

Martin Heller is a contributing writer at InfoWorld. Formerly a web and Windows programming consultant, he developed databases, software, and websites from his office in Andover, Massachusetts, from 1986 to 2010. From 2010 to August of 2012, Martin was vice president of technology and education at Alpha Software. From March 2013 to January 2014, he was chairman of Tubifi, maker of a cloud-based video editor, having previously served as CEO.

Martin is the author or co-author of nearly a dozen PC software packages and half a dozen Web applications. He is also the author of several books on Windows programming. As a consultant, Martin has worked with companies of all sizes to design, develop, improve, and/or debug Windows, web, and database applications, and has performed strategic business consulting for high-tech corporations ranging from tiny to Fortune 100 and from local to multinational.

Martin’s specialties include programming languages C++, Python, C#, JavaScript, and SQL, and databases PostgreSQL, MySQL, Microsoft SQL Server, Oracle Database, Google Cloud Spanner, CockroachDB, MongoDB, Cassandra, and Couchbase. He writes about software development, data management, analytics, AI, and machine learning, contributing technology analyses, explainers, how-to articles, and hands-on reviews of software development tools, data platforms, AI models, machine learning libraries, and much more.

More from this author