Greg Robinson's Blog

I report it, you decide

Click Once

Custom Authentication in Windows Forms

DataBinding Stuff

Favorite Links

My book contribution

My Book Reviews

My Company

My favorite bloggers

My Personal Life

Richmond, VA .NET Users Group

Smart Client Stuff

What I am reading

September 2005 - Posts

SelectionChangeCommitted event does not always fire

In development, using V 1,1 of the framework, we have seen cases where Combobox.SelectionChangedCommitted does not fire.  Ever trying numerous work arounds, I finally asked MS.  Here is their reply:

" It sounds like using Alt DownArrow to pull down and up the droplist -- which currently (and in 1.1) does not fire selectionchangecommitted. And yes, there are many places where the SelectionChangeCommitted event isn't fired even though the value has changed. SelectionChangeCommitted only fires when the user hits enter or clicks on the item. It should have the exact behavior as in everett.  We were going to change this event, but not only would it be a breaking change, but the meaning of selectionchangecommitted would be blurred with selectedindexchanged.  If you think of how IE works, you can Alt-Down to select another web site, and then Alt-Down again and IE does NOT navigate to the site. However, if you hit enter or click on the item, IE will navigate."

WSUS on web server breaks No Touch Deployment application

After installing WSUS on a web server, our No Touch Deployment application quit working.  We started getting a System.IO.FileNotFoundException exception when trying to retrieve an exe file from the web server.

After weeks and weeks of working with Microsoft on this they finally figured out why.

"the problem is WSUS turns on compression on the web server. There is a known bug with VS.NET Framework that dependent assemblies fail to download when compression is enabled on the server. This bug with compression has been fixed in the beta of next version of VS.NET.

The workaround is to turn off the compression. Greg might be able to provide more insight on if we can turn off compression with WSUS and what happens if we do that.

The other option is on the client machines you can go to IE->Tools->Internet Options->Advanced->Uncheck Use HTTP 1.1 and Use HTTP 1.1 through proxy connections.

This works as HTTP 1.0 doesn't support compression. "

 

 

Mike Richardson will be giving a presentation to the Baltimore MSDN User Group
On September 21st, Mike Richardson will be giving a presentation to the Baltimore MSDN User Group (http://www.baltomsdn.com).  If you happen to be in the area, please stop by if you can.  In the future,

Designing and Implementing High Performance .NET Applications

 

Designing high performance applications which much support millions/billions of transactions and extremely high throughput requires a deep understanding of all aspects of the .NET Framework, hardware infrastructure, and network design.  This presentation will address each tier of a distributed application and the best practices that should be implemented for maximizing performance and scalability.  It will cover everything from implementing efficient code and optimizing the JIT compiler to high volume clustering and NLB algorithms.  While every application is different in terms of complexity, this presentation will illustrate common best practices that can be implemented to achieve maximum performance metrics.  The following topics will be presented:

 

Coding for performance:

- how to avoid unnecessary boxing/unboxing

- implementing custom high performance collections

- implementing micro-benchmarks

- NGEN versus JIT compilation

- garbage collection on multi-processor servers

- introduction to Rotor and the shared source CLI implementation

- avoiding the Reflection API

- analyzing your code (examining cyclomatic complexity and various other attributes)

 

Web Tier:

- HttpHandler versus IHttpAsyncHandler

- enhancing the HTTP Pipeline

- the ASP.NET thread pool versus the CLR thread pool

- tweaking machine.config for performance

 

Inter-tier communications:

- Which method should you implement?

- .NET Sockets best practices

- when you must use unmanaged code / IO Completion Ports

- Remoting best practices

- MSMQ best practices

 

Application Tier:

- Clustering/NLB

          - Clustering best practices

          - implementing efficient NLB (routing, unicasting, and multi-casting)

          - implementing an efficient SAN mechanism (copper versus fiber optic and other issues)

          - effective logging and instrumentation

         

Data Tier:

- Database clustering

- using a real time database (TimesTen) / implementing high performance caching systems

 

About Mike Richardson:

Mike Richardson is the Director of Microsoft Technology for ALTERthought, Inc. (http://www.alterthought.com) in Richmond, VA and is the president of the Richmond.NET User Group.  He has been designing highly scalable applications using Microsoft technologies and J2EE for the past 10 years.  His main areas of expertise include developing high transactional .NET distributed applications, Web Services, XML Schema, .NET and J2EE interoperability, and optimization.  In his free time, he continues to work on developing a .NET LISP compiler, which is now going on three years and will probably never be completed, as well as wasting massive amounts of time on XBox Live.

Click Once and Firefox

Is Click Once browser dependent like No Touch Deployment\Smart Clients? 

I asked Brian Noyes, who asked Microsoft.  The answer:

"ClickOnce does not have a dependency on browser flavour, so it should work with Firefox or IE (5.0.3 and up), provided the FX 2.0 is installed."

Thanks Brian

 

  

More Posts