June 9, 2006 tools

Advanced MSDN Search

MSDN has a new search UI which includes And, Or, Exclude, Group, Exact Phrase and Preference in the query and then narrowing by source or category in the results, e.g. MSDN or MFC Reference. The ability to exclude CE in the search results is worth the price of admission. Check it out!
June 5, 2006 tools

Web Application Project: “The type ‘foo’ exists in both ‘some dll’ and ‘another dll’”

In using the most excellent Web Application Project support for ASP.NET 2.0 in VS05 from Mr. Guthrie and co, I ran into what was first an intermittent and then a constant problem that actually made it’s way onto my live site (it worked on my machine!). The error looked like this against several classes in my app, i.e. when I’d comment out one, I’d get another class that showed the same problem:

Compilation Error

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: CS0433: The type ASP.clientredirector_ascx’ exists in both c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\sb2\4d76034e\bec2c8d0\App_Web_clientredirector.ascx.cdcab7d2.zmdrab5k.dll’ and c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\sb2\4d76034e\bec2c8d0\App_Web_axhgbqrn.dll’

Source Error:

Line 11: 
Line 12: <!-- client redirector -->
Line 13: <sb:ClientRedirector runat="server" id="ClientRedirector" />
Line 14:
Line 15: <!-- fragment monitor -->

Source File: d:\project\mine\sb2\pageLayout.ascx    Line: 13

I chased this with my ISP a few days ago, but futzing with it made it go away mysteriously. When it came back, it came back with a vengeance and I pulled in every ASP.NET 2.0 resource I could think of to fix it, including sending ScottGu the FTP user name and password to sellsbrothers.com (my site hasn’t fit into a reasonable .zip file for a while now : ).

The thing I did that fixed the problem (seemingly consistently), came from Scott himself; I added the batch=“false” attribute to my compilation element in my web.config file:

<configuration …>
  <system.web>
   
<compilation  batch=false/>
      …

Apparently this ends up generating a lot more assemblies than batch=“true”’, but I don’t know why that would fix the problem or even what’s causing the problem. This never happens in WinForms or Avalon (and, of course, neither of those technologies have issues of their own… : ).

Thanks Scott, Ting-Hao, Simon and David!

Update: Microsoft has updated the Knowledge Base with this issue

May 30, 2006 fun

I wish I had time for this

Alternate Reality Gaming sounds like fun, but I just don’t know where people find the time…
May 26, 2006 book

Windows Forms 2.0 Programming

Windows Forms 2.0 Programming

The Book

Welcome to the home page for Windows Forms 2.0 Programming,” by Chris Sells and Michael Weinhardt, available from Amazon.

The Source

The Table of Contents

  • Foreword
  • Preface
  • Chapter 1 Hello, Windows Forms
  • Chapter 2 Forms
  • Chapter 3 Dialogs
  • Chapter 4 Layout
  • Chapter 5 Drawing Basics
  • Chapter 6 Drawing Text
  • Chapter 7 Advanced Drawing
  • Chapter 8 Printing
  • Chapter 9 Components
  • Chapter 10 Controls
  • Chapter 11 Design-Time Integration: The Properties Window
  • Chapter 12 Design-Time Integration: Designers and Smart Tags
  • Chapter 13 Resources
  • Chapter 14 Applications
  • Chapter 15 Settings
  • Chapter 16 Data Binding Basics
  • Chapter 17 Applied Data Binding
  • Chapter 18 Multithreaded User Interfaces
  • Chapter 19 ClickOnce Deployment
  • Appendix A What’s New in Windows Forms 2.0
  • Appendix C Delegates and Events
  • Appendix D Component and Control Survey
  • Appendix E Drag and Drop
  • Appendix F Document Management
  • Bibliography
  • Index

The 1st Edition

The source code, sample chapters and errata for the 1st edition, Windows Forms Programming in C# and Windows Forms Programming in VB.NET, are available below.

Also, “Windows Forms Programming in C#,” on which the 2e was based, was awarded the 1st runner-up in the Best .NET Books/Training Software category of the 2005 .NET Developer’s Journal Reader’s Choice Awards. I’d like to thank the academy…

The 1e Source

The 1e Sample Chapters

May 25, 2006 .net

WinFX Beta 2

Beta 2 signals the beginning of the final drive towards RTM for WinFX:

Enjoy.

May 24, 2006 spout

T-Mobile Smartphone Fun Facts

A coupla weeks ago, the AT&T wireless cell phone reception at my house went through the floor. I called up the nice folks at Cingular and they guaranteed me that my reception would improve if I moved my old AT&T account to Cingular (Cingular owns both, after all). When that didn’t work, I went to the mall, signed up for T-Mobile, went to my house and, when the reception was much better, had em move my phone number over. Since then, I’ve been moving my smartphone along with me (I have a QTEK 8500 on order, but my Audiovox 5600 is still the greatest thing to happen to me since my first laptop). Here’s what I’ve found:

  • To get the data working (assuming you’ve selected that account option from T-Mobile), set up a GPRS connection that connects to the internet and uses wap.voicestream.com” as the Access Point (no user name, password or DNS addresses). There’s no need for a proxy connection, but make sure that your IE connection options use the internet as its network (I mistakenly had it set to WAP at first).
  • To use the phone as a modem for use in connecting to the internet, pair the phone w/ your computer using Bluetooth (make sure to put the phone into discovery mode so that Windows can find it) and then use the new COM port that Windows adds (COM4 on my machine) to set up a dial-up network connection, using *99#” as the phone number (no user name or password). I get this working when I called T-Mobile and they walked me through the setup, even though the Audiovox isn’t a supported phone and the tech support guy had no documentation on one.
  • This isn’t phone related, but once you’ve got a T-Mobile data plan, you should be able to use WiFi from your laptop at a T-Mobile HotSpot by using your 10-digit phone number as the user name and the last 4 digits of your SSN as your password (I haven’t tried this yet, but I plan to!).

Theoretically, I should be able to use ActiveSync via Bluetooth, but I haven’t figured out how to make that work yet.

So far, I’m loving T-Mobile, not just cuz of the rates and the features, but also because they seem to understand that some folks aren’t going to want to be stuck with the phones that they sell and they actually help you make them work. T-Mobile’s not the biggest network, but apparently that makes em try harder. Recommended.

May 23, 2006 spout

Don’t want to skew Amazon reviews

While I don’t mind being called tacky by one of this generation’s best technical writers, I do mind the idea that the folks that would abuse the system would skew the Amazon reviews. While I don’t hide the fact that I ask people to post reviews for my book, I’ve always been proud that I’ve never asked them what kind of review to post and, when Amazon’s system had a hiccup recently, none of my books had any reviews posted by me (unlike 50% of the other books on Amazon).

So, the idea that folks would just post a review having not even read the book was something I never considered (and why you don’t want me writing your security subsystem). So, consider this offer rescinded. You can post a review on Amazon or not, good or bad, as you choose.

However, as to the signed copies, I still want you to have those. So, the first 5 people to tell me the 2nd word in the 3nd paragraph of prose on page 444, I’ll send you a signed copy. Whether you purchase a copy or just go to the bookstore and look up the word is up to you.

May 22, 2006 spout

Google’s 2-day interview process


← Newer Entries Older Entries →