MCMS 2002 Error: The CMS Server license has expired

OK, now that would seem like a pretty straightforward problem, but really it was something else altogether.

Currently I am writing a helper app for MCMS (Microsoft Content Management Server) 2002 to migrate files from another CMS to MCMS. I am using C# and PAPI calls. Everything was fine on the development server. When I moved the app to the staging (QA) server to perform the migration there (you can't use PAPI remotely), the app got an exception the moment it tried to connect to MCMS: "The CMS Server license has expired". Of course immediately I thought the obvious. After a little digging I found this information in the FAQ implying that I didn't have the proper permissions. I had the server admin elevate my permissions and immediately the problem was solved.

The lesson here: "Develop with least privileges!" It will save you headaches later.

Posted: Wednesday, August 02, 2006 8:13:44 PM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
MCMS

Speaking at the Visual Studio 2005 Experience on July 28th

I will be presenting sessions at the Speaking at the Visual Studio 2005 Experience on July 28th. My sessions will be on Visual Studio 2005 – New Features inside the Microsoft Across America truck. There are still spots available for some of the sessions that day. Sign up before it is too late!
Posted: Monday, July 10, 2006 5:51:46 PM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
Speaking | Visual Studio

How ADO.Net 2.0 Batch Updates Really Work

An excellent post by Pablo Castro of  the ADO.NET team explaining the mechanics of how batch updates work with ADO.NET 2.0 and Sql Server 2005.
Posted: Friday, July 07, 2006 3:50:09 PM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
SQL Server

Don't Re-Invent the Wheel - The .NET Developer's Guide to Identity

Learn how to leverage Active Directory in your .Net apps:

The .NET Developer's Guide to Identity

Posted: Monday, June 26, 2006 7:08:41 AM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
Security

A BCL Method to Set a String in Title Case in C#

No need to create a function yourself or reference a VB library: A great post by Rick Strahl:

public static string TitleCase(string input)

{

      return System.Threading.Thread.CurrentThread.

             CurrentCulture.TextInfo.ToTitleCase(input);

}

Posted: Tuesday, May 23, 2006 12:11:44 AM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
.Net 2.0

VSTO Action Pane Closing

When creating VSTO documents that use an Action Pane, the Action Pane gets "lost" if you open another non-VSTO document. The Action Pane is hidden by the different document (as it should), but when you switch back to the original VSTO document, the Action Pane does not automatically re-open itself. This can be fixed by handling the ThisWorkbook_WindowActivate event. In this event we can check the state of the Actions Pane and re-display it if necessary:

private void ThisWorkbook_WindowActivate(Microsoft.Office.Interop.Excel.Window Wn)
{
    if (!Globals.ThisWorkbook.ActionsPane.Visible)
    {
        Globals.ThisWorkbook.ActionsPane.Visible = true;
    }

    if (!ThisApplication.DisplayDocumentActionTaskPane)
    {
        ThisApplication.DisplayDocumentActionTaskPane = true;
    }
}

Posted: Tuesday, May 16, 2006 5:48:16 PM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
Office | VSTO

Read and Learn

An awesome post by Jessica Fosler about finding memory leaks.
Posted: Tuesday, May 09, 2006 12:19:34 AM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
Performance

Another VSTO ListObject Bug

With extensive use of the ListObject in an Excel VSTO project, I have identified a second actual bug in the ListObject. This one also has to do with pasting data like the previous bug I posted about, but this time data is being lost instead of created erroneously.
Posted: Thursday, April 20, 2006 9:52:24 PM (Eastern Standard Time, UTC-05:00)  #    Comments - Trackback
Office | VSTO