Plugging holes in the universe, what are you doing today? RSS 2.0
 Wednesday, April 20, 2005

Downloaded over the weekend, and finally got around to installing into a fresh Virtual Server build. Kicked off the install over an hour ago and its still going...but so far so good.  Looking forward to getting stuck in later this week. All I can report so far is that the installer looks polished :)

Wednesday, April 20, 2005 2:07:40 AM UTC  #    -
Techy

Yep...just noticed the summary of posts by date control is broken always showing January.

Wednesday, April 20, 2005 2:06:27 AM UTC  #    -
Other
 Thursday, March 03, 2005

Wednesday 23rd Feb

Transactions in .NET 2.0 - Ingo Rammer - http://www.thinktecture.com/staff/ingo/weblog/

Ingo's session covered the present methods of coding transactional components (explicit transactions, implicit transactions using Enterprise Services) and a quick refresher on the DTC and Two-Phase Commit. The .NET 2.0 framework has a new namespace called System.Transactions which provides enhanced support for distributed transactions without the need to inherit from ServicedComponent. The session described the new TransactionScope class which is used in local and distributed implicit transactions and the Transaction class which provides support for explicit transactions. All in all a very good session.


Extending the VS.NET IDE - John Robbins - http://www.wintellect.com/about/instructors/default.aspx#2

The session starting with an intro to building VS.NET macros to automate simple tasks in the IDE. Next we moved onto the IDE extensibility model and all the IDE objects that can be got at e.g. solution and project access, output windows, text manipulation and so on. The session also covered the different types of events that macros and AddIns can be notified of when things happen in the IDE. The last part of the session then covered building fully fledged VS.NET addins and importantly how to overcome some of the hurdles the VS.NET team put in your way when getting started doing this. Another good session and I left with plenty of food for thought on building some addins of my own....yet another SQL Stored Procedure Parameter code generator maybe :) ?


ASP.NET 2.0 Configuration and Instrumentation - Jeff Prosise - http://www.wintellect.com/about/instructors/default.aspx#1

Excellent session covering the new ASP.NET MMC snap-in and WebAdmin.axd tools for configuring ASP.NET which should take the pain out of managing the machine.config and your app's web.config files. We then moved onto the new configuration API features which provide the ability to read and write configuration settings. This API is used by the MMC and WebAdmin.axd tools and gives the programmer strongly typed access to configuration sections. There are too many new neat things to list but I recommend digging around the expanded System.Configuration and System.Web.Configuration namespaces. Next in the session we got into the new ASP.NET 2.0 instrumentation capabilities that provide enhancements such as new perf counters (25 new ones), Windows Event Tracing which facilitates end-to-end tracing of requests through the ASP.NET system and application tracing improvements. We then covered the new config section and HeartBeat event which can be fired at user defined intervals and can be used to gather vital info about the state of your app. The session ended with a couple of demo's on building custom web events that can be wired up to the health monitoring features. One neat one was to ensure that your web.config section (new) was always encrypted.


Script it With ASP.NET 2.0 - Dino Esposito - http://www.wintellect.com/about/instructors/default.aspx#5

Last session of the day and my first proper ASP.NET 2.0 one. Dino covered new features such as script callbacks that allow a page to update it's content without performing a full page refresh, cross page scripting that allow one page to post form values back to a different page, the new HtmlHead class which allows easier access to the tag and its contents, the enhanced HttpBrowserCapabilities class, the new Page.ClientScript property which is used to inject script into ASP.NET pages and  finally the new SetFocus() method of the Page class which permits the programmer to assign the initial input focus on a page to the control of his choice..

All in all a pretty interesting day.


 

Thursday, March 03, 2005 3:08:32 AM UTC  #    -
Techy

Tuesday 22nd Feb
 

Keynote - John Robbins - http://www.wintellect.com/about/instructors/default.aspx#2
 
Whatever John Robbins talks about he keeps his audience interested (as I subsequently discovered after attending one of his later sessions). His keynote speech discussed the new features of VS.NET 2005 and covered a whole bunch of stuff from the new refactoring tools (which looked a lot like Re-Sharper) to Code Snippets to smarter debugging features like Data Tips. Very enjoyable.
 

Visual Studio Team System - Benjamin Mitchelhttp://benjaminm.net/
 
Sadly a last minute change to the schedule meant that the double session originally planned didn't go ahead. Even worse the session was marred by the speaker having to present a whirlwind tour of VSTS using an extremely flaky build.
 

Building Managed Code Office Solutions with Visual Studio 2005 - Mike Peltonhttp://blogs.msdn.com/MikePelton/
 
Its been a long time since I did any Office programming so I thought'd take a look at what was new in this space. Unfortunately Sharepoint and InfoPath were excluded from the session. However, we did get into Office Primary Interop Assemblies, Smart Tags, Smart Documents, The Information Bridge Framework (briefly) and VS Tools for Office. The session was a good primer for developers who need to get started in this area. Many of the examples also came from this book (http://www.compman.co.uk/scripts/browse.asp?ref=697430) which was recommended by the speaker.
 

What's New in ASP.NET Web Services - Tim Ewald - http://www.pluralsite.com/blogs/tewald/default.aspx
 
Tim's session covered new Type Sharing features that overcome .NET 1.x shortcomings, nullable types, IXmlSerializable which allows a type to customise the XML serialisation process, response compression (gzip'd responses), sequence support , partial class support and support for hosting

Thursday, March 03, 2005 3:07:09 AM UTC  #    -

 Tuesday, March 01, 2005

Just back from DevWeek 2005 last week - well Sunday night, but felt the need for a IT free day off today. Sadly connectivity issues with the admin bit of my blog prevented me giving a day by day account of the proceedings. I'll post more about it tonight.

Tuesday, March 01, 2005 3:11:49 AM UTC  #    -
Techy
 Friday, January 28, 2005

Didn't notice this behaviour until today when a customer in the hosting environment was experiencing sporadic problems where his web app would just die with Access Denied errors all over the shop. I double checked the environment to make sure that the security was as it should be though I couldn't understand why my diagnostic script would run just fine (write some files, open and update an Access database etc etc) yet his app was failing.

Turns out he was starting a thread in his Global.asax.cs Application_Start() method which would sleep until certain times of the day and then wake up to do some background database tidy up and writing to an XML log file. This was when things just stopped.

Now, in the shared web hosting environment, ASP.NET application web requests are served by ASP.NET impersonating the anonymous user account created for that user and his website. After bit of head scratching I suspected that the thread wasn't running under the impersonated anonymous user account and hence the permissions errors. A quick look at WindowsIdentity.GetCurrent().Name upon entering Application_Start() told me as much and it was the aspnet_wp.exe process account being used. However, because the thread would sleep until certain times of the day his app would run fine for hours and then just suddenly hit the floor.

In a nutshell, when an ASP.NET application starts up, it executes its startup code in the context of the worker process (aspnet_wp.exe or w3wp.exe depending on whether you run 2k or 2k3) account. When the Application_Start() event is fired, it is fired under the worker process identity, not the impersonation account.

So basically his thread was being created and run under the low privileged process account which doesn't have sufficient rights to perform all of the operations it expected to be able to perform.

Something new learned every day

Friday, January 28, 2005 3:14:06 AM UTC  #    -
Techy
Now Playing
Top Artists This Week
Fluff

Powered by FeedBurner
Categories
Archive
<April 2005>
SunMonTueWedThuFriSat
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010
Kevin Kenny
Sign In
Statistics
Total Posts: 207
This Year: 3
This Month: 0
This Week: 0
Comments: 140
All Content © 2010, Kevin Kenny
DasBlog theme 'Business' created by Christoph De Baene (delarou)