The blogs of Black Marble staff

Install System Center Capacity Planner 2007 on Windows 7

I’ve been using Windows 7 for a while now, but I’ve never needed to install the System Center Capacity Planner (Andy usually handles that side of our SharePoint engagements). He now has taken the plunge with Microsoft’s shiny OS and hit a problem: SCCP refused to install with an error message saying it was only supported on Windows XP (!)

We tried all sorts, and in the end I resorted to our old friend, Orca – the MSI editor shipped with the Windows SDK. Looking through the tables I found an entry in LaunchCondition specifying ‘VersionNT >=500 AND VersionNT <=600’

One quick hack later and it was looking for less than ‘700’ and the installer worked.


Luckily, the SharePoint Planning installer needed no such hacking. 'in the north' still has some spaces

As I am sure you noticed there was an unfortunate clash of dates between 'in the North' in Bradford and WebDD in Reading on the 18th of April. Well I see that WebDD over the weekend has published it's agenda, opened registrations and is now full.

So if you are disappointed that you can't get a place for the WebDD event have you thought of trying an Open Spaces event like We still have some spaces left. The key difference of this type of event, as opposed to the more traditional lecture format of WebDD, is that the attendees decide the agenda when they arrive and most sessions take the format of an open discussion of peoples real work experiences and opinions.

Go on give it a try it might be fun!

For I am a jolly good fellow ( twice over )

Today I was told by the BCS that I have been awarded Fellow of the Society (FBCS) , I so very proud of the work the BCS is doing to improve the community and I feel that I am pushing to do my bit in the North of England (and the rest of the country given the opportunity occurs)

I was waiting for some pictures (yet to be taken) to announce that I have also been appointed as a Honorary Fellow at The University of Hull, I am tremendously grateful to the great people at Hull for this honour.


Top Architects , Top Conference , Top Speakers

The 4th annual Architect Insight Conference has just been announced and this year I am happy that Black Marble is helping make it happen.

I will be presenting on Microsoft's Vision of modelling using “M” , I think M has a huge future in architecture and while it is only available in it base level , it is important to understand the potential.

I look forward to seeing everyone down in London.


Microsoft Architect Conference
May 8th, Microsoft Offices Cardinal Place, London

“Access is Denied” when crawling content on MOSS 2007 hosted on Windows Server 2008

One of the SharePoint farms we’ve built recently runs on Windows Server 2008  and SQL Server 2008.  As usual, the installation is a least privileged account setup, with individual accounts running the various services and app pools. The farm is also patched to the latest level.

We’ve experienced one or two issues with this setup, but the most persistent one has been to do with crawling.  When crawls run, they would consistently fail with the following error in the Event viewer:

“The start address <> cannot be crawled.

Context: Application 'SharedServices1', Catalog 'Portal_Content'

    Access is denied. Check that the Default Content Access Account has access to this content, or add a crawl rule to crawl this content.   (0x80041205)”

In addition, the following error appeared in the SharePoint logs:

***** Couldn't retrieve server policy, hr = 80041205 - File:d:\office\source\search\search\gather\protocols\sts3\sts3util.cxx Line:548

And the crawl logs showed only errors, each having the following description:

“Access is denied. Verify that either the Default Content Access Account has access to this repository, or add a crawl rule to crawl this repository. If the repository being crawled is a SharePoint repository, verify the account you are using has “Full Read” permissions on the SharePoint Web Application being crawled.(The item was deleted because it was either not found or the crawler was denied access to it.)”

We’d checked all of the usual suspects including web application permissions for the account used by search, database permissions etc with no success.

The solution was to disable the loopback check on the servers hosting SharePoint. Adding the hostnames served to the BackConnectionHostNames list in the registry on the SharePoint servers wasn’t enough, the loopback check had to be completely disabled.

As an aside, another issue we’d experienced with an InfoPath form with code behind failing to load correctly on these servers was also solved disabling the loopback check on these servers.

For instructions on disabling the loopback check, see KB896861.


Visual Studio 2008 Database Edition GDR release - Createdeployment

Whilst preparing for my session at SQLBits next weekend I was re-watched Gert Drapers' PDC session (TL45) where he used a command tool to deploy a database via a USB pen drive (about 30 minutes into the session). Now it seems that the createdeployment command line tool he used is not currently available outside Microsoft, but the same effect can be achieved use the VSDBCMD command.

Step 1 - get the files onto the distribution device

The first step is to build the distribution media, this is just an XCOPY process. As the MSDN documentation says you need to end up with the following directory structure on your USB drive; for this example I used G: for USB drive letter and Database1 for the name of the database I want to distribute

G:\ copy the contents of [Program Files]\Microsoft Visual Studio 9.0\VSTSDB\Deploy & sub directories
G:\ copy the dlls from[Program Files]\Microsoft SQL Server Compact Edition\v3.5 folder
G:\Database1\ copy the contents of [ProjectsFolder]\DataBase1Solution\Database1\sql\debug or release directory after the DB project is built

Step 2 - A script to do the deploy

It is now a simple process of running the command line tool, but this is a bit long to type each time so I used a batch file. My command usage was

deploy [DB name] [SQL server instance]
e.g. deploy database1 .\sqlexpress

The contents of the actual deploy.bat batch file is as follows. Note there are many more options you can set but this seems to be the basic minimum

VSDBCMD /a:Deploy  /dsp:Sql /cs:"Server=%2;Database=%1;Trusted_Connection=yes;"  /model:%1\%1.dbschema  /manifest:%1\%1.deploymanifest /script:%1%.sql /dd

Using this batch file a new instance of a database can be created or an existing one updated.

Note: When I first tried to get this going I keep getting SQL file create errors which appears as TSD01268 errors in the deployment log. Eventually I realised the problem. I was running on a 64Bit Windows 7 PC. My default SQLExpress instance, running as the Network Service account, was setup to and had rights to create files in C:\Program Files (x86)\Microsoft SQL Server\MSSQL.1\MSSQL\Data but not in C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data. Unfortunately the VSDBCMD tried to use the second location. Once the SQL instance was set to default to the second location and suitable rights provided all worked correctly.

Free hotel internet - if you dare touch it

I have been away at the MVP summit and then on holiday for a couple of weeks. On this trip every hotel I stayed in had free internet, though often only wired. Seem many hotels have Wifi contracts with mobile phone companies and they are still charging for.

So top tip make sure you have UTP cable in your bag.

The 'most interesting' system I had was at a hotel in Whistler.


I decided not to touch it and used the free Wifi from a nearby coffee shop!