electronic wonderl@nd

the weblog of campbell mcneill
posts - 16, comments - 13, trackbacks - 12

My Links

News

Archives

Post Categories

My Stuff

People I Know

Wednesday, March 21, 2007

Patching issue on SQL 2000 breaking BizTalk Deployment.

Had this issues when I tried to deploy a BizTalk 2004 assembly to a recently patched SQL 2000 SP4 Instance:

[Microsoft.BizTalk.Deployment.DeploymentException] [System.Data.SqlClient.SqlException] Failed to load msxmlsql.dll. [System.Data.SqlClient.SqlException] Failed to load msxmlsql.dll.

A few sites pointed to potential fixes but these appeared to be red herrings. In the end our DBA re-applied SP4 and the issue was cleared up. Most bizarre. Will teach us to deploy security updates so quickly!

posted @ Wednesday, March 21, 2007 11:24 AM | Feedback (0) | Filed Under [ BizTalk .NET ]

Friday, December 01, 2006

Top 20 Programming Lessons

Good Article:

http://www.dcs-media.com/desdev/Detail.aspx?ArticleId=578

posted @ Friday, December 01, 2006 8:56 AM | Feedback (0) |

Wednesday, October 18, 2006

Google Reader

Just got to mention Google Reader. This is the panacea of RSS readers that I've been looking for.

I've previously used RSS Bandit which I thought was excellent, but even though you could do some synchronisation with it's files, it wasn't very portable.

Google reader lets you upload your OPML file with your feeds to it, and it just does a generally excellent job of presenting them to you, and giving you a huge pile of keyboard shortcuts for working through them.

I recommend that you all give it a try!

posted @ Wednesday, October 18, 2006 11:26 AM | Feedback (0) |

Tuesday, August 22, 2006

Behavior patterns of a good programmer

I found this article, very interesting:
Personality_Traits_of_the_Best_Software_Developers.aspx

Makes a lot of sense to me, may be of particular interest to anyone that is hiring at the moment.

posted @ Tuesday, August 22, 2006 7:24 AM | Feedback (0) |

Tuesday, August 01, 2006

StarUML - An excellent open source UML tool

Recommend that anyone who needs a UML tool checks this out http://www.staruml.com/

This is a most excellent free tool that supports UML 2, various approches, code generation, reverse engineering, Gang of Four design patterns and document generation to name but a few features.

I also find that the GUI allows you to create diagrams a lot quicker than you can with the likes of enterprise architect, which is kind of bloated and cumbersome.

I recommend that anyone needing a UML tool for a small to medium size project check this one out! Better than a lot of the paid for offerings out there.

posted @ Tuesday, August 01, 2006 10:12 AM | Feedback (3) |

Wednesday, July 26, 2006

Mail2Web + MDA Pro

Just thought I would quickly post about a neat wee piece of kit.

I got a T-Mobile MDA Pro WM5 mobile phone. The network just released a patch to enable the exchange email push on it.

I discovered www.mail2web.com do a free service that allows you to have an exchange account to which you can forward email and, this in turn allows you to use activesync over a secure connection.

Most impresed by this. Works very quickly, nice way of using the inclusive data allowance I have, and of course being able to more in touch (as if I really need that).

posted @ Wednesday, July 26, 2006 11:01 AM | Feedback (0) |

Wednesday, July 19, 2006

WinInternals / SysInternals

Have been bought out by MicroSoft, and have taken the key staff with them too.

Check this out: http://www.sysinternals.com/blog/2006/07/on-my-way-to-microsoft.html

Does this mean future rootkits and other vulns will be covered up?

posted @ Wednesday, July 19, 2006 5:56 AM | Feedback (0) |

Thursday, July 13, 2006

Do not use SleekHost

Under no circumstances use the provider "SleekHost". Their service is terrible, regular downtime, rotten support, poor performance. I thought I would warn everyone that reads this just in case they ever look at them.

posted @ Thursday, July 13, 2006 8:08 AM | Feedback (1) |

Friday, May 19, 2006

Visual Stuidio and NDoc Integration

Just been messing around trying to integrate nDoc with VS 2003.

I've got it so that I can compile using the external tools, but unfortuantly I can seem to make this as slick as I would like. I've added the console with the following:

Title : NDoc Compile
Command: C:\Software\OpenSource\ndoc\1.3.1\bin\net\1.1\NDocConsole.exe
Arguments: -project=$(SolutionDir)Solution.ndoc
Initial Dir: $(SolutionDir)

This ties me to the solution.ndoc though for hte ndoc project file. Would be good if I could get the add in to automatically look for .ndoc

Anyone got any ideas?

posted @ Friday, May 19, 2006 7:31 AM | Feedback (0) |

Wednesday, January 04, 2006

Visual Studio 2005 and Integrated unit testing

Please, help? Do I really need to buy VSTS to get integrated unit testing?

I've got an MSDN subscription which I thought was kind of universal but it seems I dont get any of team system. Now, I wasn't particuarly bothered with a lot of the stuff but I dont get the integrated unit testing in the pro edition.

I guess this means that I am going to be sticking with NUnit and as such recommending that my clients do exactly the same.

I don't see why Microsoft should be putting this kind of an additional expense on independant consultants, not given the amount of money I have made them in server licences from my clients!

posted @ Wednesday, January 04, 2006 12:10 PM | Feedback (4) |

Tuesday, August 30, 2005

Podcasts - A cracking resource

Hi, don't know how many of you have found the wonders of podcasts as yet. I'm quite into them, as a good podcast can make the walk to work a better use of time than it would be listening to the latest Green Day album.

As yet the podcast scene is in its infancy but there are several good resources out there. The best one I have found is delivered by the folk who host my blog. It covers all manner of useful developer information including plenty of interviews etc.

Check out Podcast Studio .NET

If like me you are the proud owner of an ipod then iTunes 4.9 includes pod cast access and this podcast is synicated through this. This makes it a lot easier to make sure you have the latest episode.

posted @ Tuesday, August 30, 2005 12:23 PM | Feedback (0) |

Friday, August 12, 2005

NAnt Deployment and Log4net for BizTalk

All, Just to let you know that Scott Colestock has released new versions of many of his very useful tools.

Someone I know gets a notable mention with the log4net stuff too ;)

posted @ Friday, August 12, 2005 11:46 AM | Feedback (0) |

Wednesday, July 06, 2005

A noteable mention to Scott Colestock

I'd like to take a moment to blog about the excellent work Scott Colestock is doing with regards to BizTalk supplemental tools

I've been working with both his Nant deployment script and his implementation of Log4net. Both are absolutly must haves for the BizTalk developer. If you haven't checked this stuff out then I sincerely hope that you do. Your life will be better with it!

I even updated his Log4net library to use the latest version. Hope he gets it up on his site soon

Many thanks for your good work Scott. Check him out at Trace of Thought

posted @ Wednesday, July 06, 2005 10:40 PM | Feedback (0) |

Monday, July 04, 2005

Useful BizTalk FAQ

Enjoy: http://www.netologi.se/default.aspx?Contents=BizTalkFAQ

posted @ Monday, July 04, 2005 3:48 PM | Feedback (1) |

Tuesday, April 05, 2005

Adding / Removing a BizTalk Adapter using a Custom Action

Just been working on getting a BizTalk adapter to install using windows installer. I used the adpater wizard to create the adapter, which kindly provides a nice .reg file to handle the registry stuff. This is nice and easy to use in conjunction with the registry editor function of the setup project in VS.NET. What I also wanted to do was add in support for getting the adapter to show up in the BizTalk admin and also remove it from there when you uninstall it. You can do this by using WMI in a custom action. First what you need to do is add an installer class to your adapter project. You can do this using visual studio. This is covered in the documentataion. Then you need to add in the following statment at the top. You also need to add in the System.Management assembly.

using System.Management;

For the install action, use the following, changing the relevant sections:
            //Run the base class stuff.
            base.Install(stateSaver);
 
            try
            {
 
                PutOptions options = new PutOptions();
                options.Type = PutType.CreateOnly;
 
                //create a ManagementClass object and spawn a ManagementObject instance
                ManagementClass newAdapterClass = new ManagementClass("root\\MicrosoftBizTalkServer", "MSBTS_AdapterSetting", null);
                ManagementObject newAdapterObject = newAdapterClass.CreateInstance();
           
                //set the properties for the Managementobject
                newAdapterObject["Name"] = "<YOURADAPTER>";
                newAdapterObject["Comment"] = "<Comment you want to appear in BizTalk>";
                newAdapterObject["Constraints"] = "<Constraint Bit Mank>";  //Bitmask appears in registry file.
                newAdapterObject["MgmtCLSID"] = "<Adapter Management Class Id>"; //Guid that appears in the registry file.            
                //create the Managementobject
                newAdapterObject.Put(options);
                System.Diagnostics.Trace.WriteLine("Adapter has been created successfully");
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(ex.ToString());
                throw;
            }
And the following for the uninstall:
            try
            {
                ManagementClass adapterClass = new ManagementClass("root\\MicrosoftBizTalkServer", "MSBTS_AdapterSetting", null);
                ManagementObjectCollection adapterObjects = adapterClass.GetInstances();
 
                System.Diagnostics.Trace.WriteLine("We have {0} management objects", adapterObjects.Count.ToString());
 
                foreach (ManagementObject adapterObject in adapterObjects)
                {
                    System.Diagnostics.Trace.WriteLine("Current adapter object is {0}", adapterObject["Name"].ToString());
 
                    if( adapterObject["Name"].ToString().ToUpper() == "<YOURADAPTER>" )
                        adapterObject.Delete();
                }
                System.Diagnostics.Trace.WriteLine("Adapter has been removed successfully");
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(ex.ToString());
                throw;
            }

posted @ Tuesday, April 05, 2005 10:13 PM | Feedback (3) |

Powered by: