We Are Microsoft – Team Sogeti

We Are Microsoft – Team Sogeti

We Are Microsoft Logo


South Central Developer Guidance Council is hosting an event, being organized by the

fabulous Toi Wright, called We

Are Microsoft. This event is a developer competition where teams of developers

create projects for charities over the weekend of January 18th-20th, 2008.

If you’ve not looked into this event, you should. You should get a group of

developers together and compete. Why?

Because Team Sogeti is going to school you, fool, that’s why! Sogeti will be

fielding a team of extraordinary talent to deliver for whatever charity we end up

paired with, and we’re ready to crush the competition. The exact members of

the team are still evolving, but we will be there, and will be bringing our A-game.

Think you’ve got what it takes to compete with us? Great … Bring It!

Tim Rayburn is a consultant for Sogeti in the Dallas/Fort

Worth market.

Visual Studio 2008 InstallFest

Visual Studio 2008 InstallFest

Chris Koenig, our Local Developer Evangelist

has a big event coming up, here are some details:

Visual Studio 2008 Pro Logo

To celebrate the RTM of Visual Studio 2008, Microsoft is teaming up with some of the

local area User Groups to throw a set of Holiday Party InstallFests. We’ve got

3 of them scheduled for South Central District:

These holiday parties will feature food, drink, fun – including several Xbox 360s

in HD with some of the latest games, fellowship and a chance to install the RTM bits

of Visual Studio 2008 along with your friends! In fact, EVERYONE THAT REGISTERS



you install Visual Studio 2008 on your computer during the event, we’ll give you a

free Visual Studio T-Shirt! So – no sneaky register-for-the-event-and-then-not-show-up

action – you must be present to win ๐Ÿ™‚

Since we’re giving away free product, we’ve had to put a cap on registrations – so

register now and make sure you attend to get your free copy of Visual Studio 2008

Professional. If registrations are full, the waitlist should be enabled, so

get on it. If you don’t make it on the registration or waitlist list, don’t

fret – walk-ins are totally welcome, and we’d love to have you join us at the party!

If there is any product left over after all the registered and wait-listed folks get

theirs, you’ll be next in line to get one ๐Ÿ™‚


Q: What version of Visual Studio will I get, and how will the free version

upgrade work?

A: You will be installing a copy of Visual Studio 2008 Professional

Trial Edition at the event. This is a specially created 90-day evaluation of

VS08Pro – it is NOT the same thing that is available today from Microsoft Downloads.

Once you receive your free copy of Visual Studio 2008 in the mail, you will be able

to enter the product key from the packaging into VS08 and “unlock” it. The unlocking

process will only work for the PRO trial edition that you get at the InstallFest –

the version from Microsoft Downloads or MSDN will NOT be unlockable and will require

an uninstall/re-install to get the proper version installed.

Q: Isn’t Visual Studio 2008 RTM already publicly available? Why

do I need to come to this party?

A: Several reasons – first, the opportunity to have some fun over the

holidays with your local user groups! Second, we are giving away FREE copies

of Visual Studio 2008 Professional to registered attendees in the mail following the

product launch.

Q: Do I have to bring my laptop to the event?

A: No, you don’t. But – if you install the bits at the party, we’ll give

you a free T-shirt

Q: What if I don’t have a laptop – can I bring my Desktop? Will

there be room/power?

A: Yes! Please do – we’re looking for volunteers to bring their

monitors + keyboards + mice to the event so that not everyone else needs to.

If you’re interested in helping us this way, please let me know.

Q: Can I bring a friend?

A: Absolutely! Bring 2! Just remember that you have to

be registered, or on the wait list, for a chance to win free product.

Q: Does this InstallFest party cost anything to attend?

A: Nope – it’s absolutely FREE to all attendees!

Q: Does this replace the normal .NET User Group meeting in my city?

A: Yes – there aren’t any plans to have additional meetings, but there

will be plenty of .NET conversations going on around the party, I’m sure ๐Ÿ™‚

Q: I can’t go to this event – can I still get a free copy of Visual Studio

2008 somewhere else?

A: There are several other events coming up that will give you additional

chances at getting free product including the next round of DevCares events,

the “official” product launch events starting at the end of February, and some post-release

Community Launch events starting in March (more on that in a future post).

Tim Rayburn is a consultant for Sogeti in the Dallas/Fort

Worth market.

BTSUG Dec 5th – User Group Meeting: Bring on Christmas and RFID (& XBOX360 shh…)

BTSUG Dec 5th – User Group Meeting: Bring on Christmas and RFID (& XBOX360 shh…)

Hi all and welcome to our last meeting of the year.

I know it’s Christmas soon and we’re all checking out the best gifts to get…….well
I got thinking….. why don’t we have a ‘try before you buy’ session
with a xbox360/media extender etc??

We also need to make it Educational as well, so here’s the line up
for next Dec 5th.

Microsoft, North Ryde
1 Epping Road

6pm – Beer + Pizza
6.30pm – Kick off
Dec 5th 2007

1. Introduction to BizTalk RFID Services – 101
Presenter: Scott Scovell
– Scott has extensive experience in EDI and BizTalk
RFID Services.

He has recently been part of a team that has created the Microsoft BizTalk RFID Courseware,
and is always eager to share his knowledge and lend an ear.

Session Outline:

BizTalk RFID Services is new to the BizTalk Product Suite, being able to enable production
lines, track and trace and various other scenarios with RFID technology is key for
companies to maintain a competitive edge.

This presentation will cover:

1. Setting up and configuring BizTalk RFID Services
2. Plugging in a real RFID Reader Device
3. Reading/Writing Tags within a BizTalk RFID Process.
4. Extending and customising RFID Services.

2. XBOX 360 ‘Christmas Evaluation’ Session
Come along and road test some XBOX 360’s with us for Christmas!

I’m looking forward to a great meeting and hope to see you all there.

Many thanks,

p.s. Let me know if you’re coming (so I know how many xbox controllers to put out)

64bit support for the BizTalk Orchestration Profiler and BizTalk Documenter

64bit support for the BizTalk Orchestration Profiler and BizTalk Documenter

A number of you have contacted me in recent months to report that the BizTalk Orchestration Profiler and BizTalk Documenter didn’t run on 64bit machines, this seems to have been down to compiler settings which I’ve now resolved.

I’ve uploaded a planned release for both tools to codeplex – if you’ve got a 64bit machine I’d appreciate it if you could install and test the tool to see if it works on your servers?  Please let me know either way – I’ll then make the releases as the default released versions once I’ve got validation.

You can find the releases at the following URLs:



I’ve done some tidying up across the entire codebase to make it easier to support and also reworked and re-released the Word output option for the BizTalk Documenter thus allowing Word documents to be generated as well as CHM files.  Let me know if the Word output doesn’t work as expected for you when compared to CHM output.

Please keep any feature suggestions coming…



WS-MetadataExchange is a wonderful thing. WCF implements this spec and provides support for it over several different transport protocols including HTTP(S), TCP, and named pipes. All you have to do is choose the appropriate MEX binding.

If you’re familiar with how bindings work in WCF, this all makes perfect sense. However, if you pull out .NET Reflector and begin looking for the various System.ServiceModel.Channels.Binding-derived classes, you might be surprised when you don’t find any.

I was surprised because when you specify MEX endpoints in configuration, there is a separate binding name for each supported MEX transport (mexHttpBinding, mexHttpsBinding,  mexNamedPipeBinding, and mexTcpBinding). The trick is these binding element names don’t map to individual classes but rather to a single class named MetadataExchangeBindings, which provides four public static methods: CreateMexHttpBinding, CreateMexHttpsBinding, CreateMexNamedPipeBinding, and CreateMexTcpBinding, as illustrated here:

public static class MetadataExchangeBindings


    // Methods

    public static Binding CreateMexHttpBinding();

    public static Binding CreateMexHttpsBinding();

    public static Binding CreateMexNamedPipeBinding();

    public static Binding CreateMexTcpBinding();



If you inspect the implementation of any of these methods, you’ll notice they just create one of the built-in bindings, adjusting some of the defaults, and then they override the binding name and namespace as illustrated here:

public static Binding CreateMexHttpBinding()


    return CreateHttpBinding();


private static WSHttpBinding CreateHttpBinding()


    WSHttpBinding binding = new WSHttpBinding(SecurityMode.None, false);

    binding.Name = “MetadataExchangeHttpBinding”;

    binding.Namespace = “http://schemas.microsoft.com/ws/2005/02/mex/bindings”;

    return binding;


In the case of CreateMexHttpBinding, they use the WSHttpBinding but set the security mode to SecurityMode.None. Because they’re basically just using the other built-in bindings, they probably figured it wouldn’t make sense to define completely new binding classes just for the MEX scenarios…they’re really just slightly different configurations.

Obviously this also means that you don’t have to actually use the MEX binding element names (or MetadataExchangeBinding) when configuring endpoints to use MEX. Instead you can use the corresponding built-in binding directly as long as you configure it properly for the MEX scenario (like in the example above, I have to set the security mode to SecurityMode.None when using WSHttpBinding).

xkcd – I’m becoming a big fan

xkcd – I’m becoming a big fan

As an IT geek, Dilbert has been my favourite cartoon for a long long time. It was the only cartoon that came close to reflecting my experience of the world as a cube rat.

However, Dilbert’s place has been usurped (sorry Scott Adams) by Randall Munroe at www.xkcd.com. Randall is brilliant (he built robots at NASA so its not really hyperbole to say that) techically and comically as well.

His creations are a fresh take on all things geeky and I’m becoming a big fan.

I predict Randall Munroe will be the next millionaire cartoonist a la Scott Adams. The tshirts have started. The books will follow soon.

here is a particular favourite

Messaging Engine failed while notifying an adapter of its configuration & The error threshold was exceeded

Messaging Engine failed while notifying an adapter of its configuration & The error threshold was exceeded

We recently had an issue where we had a lot of a receive locations connecting to the same server (sum 1,200).

They kept going down complaining the Messaging Engine failed while notifying an adapter of its configuration


and The error threshold was exceeded


The fix is explained in the following KB article:


For the MaxCmds and MaxMpxCt values, it should be set at 10000 (decimal)

This setting needs to be on all of the BizTalk machines AND the file server it is connecting to.

After you make the change, you have to reboot the machines where this registry change happened.

How to test:

Open up perfmon and add a counter from Redirector called Current Commands


In which you will see the number of connections open (in this case 627)


Did I mention the disclaimer on the side of my blog?

Auto-generating BizUnit Test Cases

Auto-generating BizUnit Test Cases

This post follows on from yesterday’s post: Creating
BizUnit Test Cases for comparing Xml Files

If you are using the XmlValidationStep/XmlValidationStepEx BizUnit
steps and using XPath validation, then it can be a pain to write all these XPathValidation
statements by hand.

So I wrote a utility to generate the XPath statements for you.
In fact, it generates the entire BizUnit Test Case for validating an Xml file.
Once it has been generated, all you have to do is:

a. Change the location to copy input files and look for output files (or change
completely if not using the File adapter)
b. Change the location/namespace of the Xsd file (if performing validation)
c. Edit the list of XPath statements to remove any which are not necessary.

Generating a Test Case can be performed:

  1. From the GUI (which will set the schema location in the Test Case if you have validated
    against that schema in the GUI)

  2. From the command line (useful for batch files and scripts)

  3. By right-clicking on an Xml file and choosing Generate BizUnit Test Case (assuming
    you have installed the reg file):

The utility (and installation/help files) can be found here:
DanSharp XmlViewer

Note: I also have a suggestion for an improved version of XmlValidationStep
you can find this here:
XmlValidationStep using .NET 2.0 Schema Validation

This new version combines XmlValidationStep and XmlValidationStepEx into
a single step, allows you to not specify a namespace for the schema in the Test Case,
and uses the newer .NET 2.0 XmlReaderSettings mechanism
for validating schemas. I compile it into my own utility assembly and then refer to
it from a BizUnit TestCase via the assemblyPath attribute.

BizTalk Atomic Transaction Rollback of Variables

This week I’m delivering a BizTalk development class for my colleagues, and during my preparation of demonstrations, I spent a few extra minutes confirming the behavior of members variables and atomic transactions.
Atomic transactions in BizTalk don’t necessarily behave like some folks expect.  For instance, if a BizTalk orchestration calls a component with ADO.NET code which […]