<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0" 
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<channel>
<title>/* Rambling comments... */</title>
<link>http://www.lenholgate.com/</link>
<description>Len Holgate&apos;s thoughts on this and that...
Mainly test driven software development in C++ on Windows platforms... - Reprints</description>
<dc:language>en-us</dc:language>
<dc:creator>Len.Holgate@JetByte.com</dc:creator>
<dc:date>2005-10-19T09:36:19+00:00</dc:date>
<admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=2.64" />
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>

<item>
<title>Reprints - OLEDB; no pain, no gain</title>
<link>http://www.lenholgate.com/archives/000547.html</link>
<description>

I&apos;ve just finished posting several OLE DB provider articles from back in 1999 and 2000 when the favourite method of data access that Microsoft recommended was OLE DB. This was relatively easy to use as a data consumer, especially from...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000547.html">09:36 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=547" >Comments (1)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>

	</div>]]>

</description>
<guid isPermaLink="false">547@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2005-10-19T09:36:19+00:00</dc:date>
</item>
<item>
<title>Three reprints from when COM ruled the land</title>
<link>http://www.lenholgate.com/archives/000515.html</link>
<description>

I&apos;ve just finished posting three reprints from back in 1998 and 2002 when I was working on lots of COM stuff. 1) Sinking connection points in C++ objects - shows you how to use the least COM possible to connect...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000515.html">09:20 PM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=515" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>

	</div>]]>

</description>
<guid isPermaLink="false">515@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2005-09-20T21:20:00+00:00</dc:date>
</item>
<item>
<title>More Reprints - CORBA, C++ and Java</title>
<link>http://www.lenholgate.com/archives/000479.html</link>
<description>

I&apos;ve just finished posting some more reprints from back in 2001 when I was working on CORBA systems with C++ and Java. The articles mostly compare CORBA to COM and show why providing a reference counted server object lifetime management...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000479.html">10:58 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=479" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>

	</div>]]>

</description>
<guid isPermaLink="false">479@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2005-08-23T10:58:57+00:00</dc:date>
</item>
<item>
<title>Reprint: Using OpenSSL with Asynchronous Sockets</title>
<link>http://www.lenholgate.com/archives/000457.html</link>
<description>

OpenSSL is an open source implementation of the SSL and TLS protocols. Unfortunately it doesn&apos;t play well with windows style asynchronous sockets. This article - previously published in Windows Developer Magazine and on my company web site - provides a...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000457.html">01:52 PM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=457" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_socket_servers.html">Socket Servers</a>

	</div>]]>

</description>
<guid isPermaLink="false">457@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2005-08-04T13:52:00+00:00</dc:date>
</item>
<item>
<title>Reprints</title>
<link>http://www.lenholgate.com/archives/000336.html</link>
<description>

I&apos;ve started a new category, reprints, these are things from &apos;way back&apos; that have been previously published on the web in other forms. 

First in this blatant search for more search engine hits is an old Java article I wrote in 2001 about caches in the middle tier.

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000336.html">09:00 PM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=336" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>

	</div>]]>

</description>
<guid isPermaLink="false">336@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2004-07-02T21:00:18+00:00</dc:date>
</item>
<item>
<title>Using OpenSSL with Asynchronous Sockets</title>
<link>http://www.lenholgate.com/archives/000456.html</link>
<description>

OpenSSL is an open source implementation of the SSL and TLS protocols. Unfortunately it doesn&apos;t play well with windows style asynchronous sockets. This article - previously published in Windows Developer Magazine - provides a simple connector that enables you to...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000456.html">01:08 PM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=456" >Comments (16)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>

	</div>]]>

</description>
<guid isPermaLink="false">456@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2002-11-04T13:08:58+00:00</dc:date>
</item>
<item>
<title>Sinking connection points in C++ objects.</title>
<link>http://www.lenholgate.com/archives/000513.html</link>
<description>

Sometimes it would be nice to be able to use a simple C++ object as a sink for Connection Point notifications. This article shows you how....

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000513.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=513" >Comments (2)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">513@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2002-05-30T01:00:00+00:00</dc:date>
</item>
<item>
<title>Designing asynchonous COM components for VB </title>
<link>http://www.lenholgate.com/archives/000514.html</link>
<description>

This example COM component provides three COM objects for using the Win32 Mailslot IPC mechanism. The component may be useful if you need to communicate from VB using Mailslots. However, the reason I wrote it was to demonstrate creating a...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000514.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=514" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">514@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2002-04-11T01:00:00+00:00</dc:date>
</item>
<item>
<title>AVL Tree</title>
<link>http://www.lenholgate.com/archives/000460.html</link>
<description>

A &quot;generic&quot; AVL Tree, from the dark days before templates... The code here is some of my first C++. Back in 1991 C++ was still pretty new. Looking back at my early C++ is better than looking back at my...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000460.html">11:31 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=460" >Comments (2)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">460@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-08-07T11:31:56+00:00</dc:date>
</item>
<item>
<title>Rooms 1.7</title>
<link>http://www.lenholgate.com/archives/000459.html</link>
<description>

In 1989 I taught myself C to write an adventure game, the code&apos;s fairly bad, but 10 year&apos;s later, the game&apos;s still quite cool!...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000459.html">11:25 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=459" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">459@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-08-02T11:25:01+00:00</dc:date>
</item>
<item>
<title>Java caches in the middle tier</title>
<link>http://www.lenholgate.com/archives/000335.html</link>
<description>

A common way to improve the performance of Java code is to cache objects rather than repeatedly create and destroy them. This is especially true when you&apos;re writing middle tier servers that service client requests and return results objects. Implementing a flexible caching scheme in Java is relatively easy, but there are a few things to watch for.

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000335.html">08:18 PM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=335" >Comments (5)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">335@http://www.lenholgate.com/</guid>
<dc:subject>Way back</dc:subject>
<dc:date>2001-07-26T20:18:27+00:00</dc:date>
</item>
<item>
<title>The CORBA Evictor Pattern in Java</title>
<link>http://www.lenholgate.com/archives/000478.html</link>
<description>

When a CORBA server allows its clients to create and destroy objects one of the recommended ways to handle the object lifetime issues is using the Evictor Pattern. In The Evictor Pattern we solved the problem for C++ servers, here...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000478.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=478" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">478@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-07-23T01:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - Keep Alive</title>
<link>http://www.lenholgate.com/archives/000477.html</link>
<description>

One way of making a reference counted implementation more robust is to run the keep-alive protocol yourself. We demonstrate this option here....

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000477.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=477" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">477@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-03-17T01:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - The Evictor Pattern</title>
<link>http://www.lenholgate.com/archives/000476.html</link>
<description>

Since CORBA doesn&apos;t really support reliable reference counting implementations we&apos;ll compare one of the recommended methods of servant life-time management with our reference counted iteration interface....

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000476.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=476" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">476@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-03-15T01:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - Iteration</title>
<link>http://www.lenholgate.com/archives/000475.html</link>
<description>

A CORBA style method of enumeration can be seen in the iteration interfaces on the CORBA Naming Service. Given the code we&apos;ve already written for the enumeration interface we can easily implement an iteration interface as well as (or, more...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000475.html">02:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=475" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">475@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-02-09T02:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - Enumeration</title>
<link>http://www.lenholgate.com/archives/000469.html</link>
<description>

CORBA provides sequences as a way of returning collections of items from an method call. The problem with just using unbounded sequences is that the client has no control over how many items it receives as a result of the call. COM gets around this problem using the IEnum style interfaces that allow a client to control how it accesses the items in a collection.  

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000469.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=469" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">469@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-02-09T01:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - Reference Counting Issues</title>
<link>http://www.lenholgate.com/archives/000468.html</link>
<description>

At the end of the second article we have developed a self contained reference counting implementation that appears to work. Unfortunately, it&apos;s still far from reliable as CORBA doesn&apos;t provide the level of support for reference counting that&apos;s built into COM. In this article we discuss the problem and the various CORBA methods for controlling server object lifetime. 


<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000468.html">12:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=468" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">468@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-02-09T00:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - More Reference Counting</title>
<link>http://www.lenholgate.com/archives/000467.html</link>
<description>

Although we managed to develop a working solution in the first CORBA reference counting article the results were ugly and fragile. In this article we attempt to clean things up a little and, in doing so, get intimate with the Portable Object Adapter and its Servant Managers. 

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000467.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=467" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">467@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-02-06T01:00:00+00:00</dc:date>
</item>
<item>
<title>CORBA - Reference Counting</title>
<link>http://www.lenholgate.com/archives/000343.html</link>
<description>

We&apos;ve been developing code on Windows and Unix for quite some time, but most of the distributed component work we&apos;ve been involved in has been done using COM. That&apos;s changing now as clients have more requirements for Unix based component solutions. We&apos;re currently evaluating CORBA ORBs and learning how the CORBA way of doing things differs from the COM way. 

The first difference that we came across was the way that CORBA servers deal with object lifetime issues. Adding reference counting to CORBA objects isn&apos;t as easy as it first seems

Please note that these articles initially explore COM concepts implemented in CORBA, some of the early implementations, whilst working examples, aren&apos;t at all production quality... If you want something reliable, that works, skip forward to the Evictor Pattern.

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000343.html">12:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=343" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">343@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2001-02-06T00:00:00+00:00</dc:date>
</item>
<item>
<title>COM+ Administration</title>
<link>http://www.lenholgate.com/archives/000521.html</link>
<description>

COM+ applications can be complex to configure and there&apos;s no standard way to save that configuration in a form that can be placed under version control. Luckily the COM+ Catalog is accessible by a set of completely scriptable COM objects....

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000521.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=521" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">521@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2000-06-29T01:00:01+00:00</dc:date>
</item>
<item>
<title>OLEDB - Disconnected Recordsets</title>
<link>http://www.lenholgate.com/archives/000546.html</link>
<description>

If you are going to use the client cursor engine then often it&apos;s a good idea to disconnect your recordset......

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000546.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=546" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">546@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>2000-05-21T01:00:01+00:00</dc:date>
</item>
<item>
<title>MFC - Include/Exclude list boxes</title>
<link>http://www.lenholgate.com/archives/000552.html</link>
<description>

How to package lots of standard functionality into a CListBox derived class....

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000552.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=552" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">552@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>2000-02-26T01:00:02+00:00</dc:date>
</item>
<item>
<title>Using COM to write extensible applications</title>
<link>http://www.lenholgate.com/archives/000550.html</link>
<description>

Localise design decisions by writing key application functionality as pluggable COM objects. When the requirements change you just write a new plug in......

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000550.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=550" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">550@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2000-02-26T01:00:01+00:00</dc:date>
</item>
<item>
<title>It&apos;s a wonder any code is ever reused</title>
<link>http://www.lenholgate.com/archives/000551.html</link>
<description>

It&apos;s rare that code can be viewed as a black box for reuse. If you include design choices and dependencies as valid parts of the code&apos;s interface then it&apos;s easier to explain why reusing nontrivial code is often harder than...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000551.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=551" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">551@http://www.lenholgate.com/</guid>
<dc:subject>Reprints</dc:subject>
<dc:date>2000-02-01T01:00:01+00:00</dc:date>
</item>
<item>
<title>OLEDB - Client Cursor Engine updates</title>
<link>http://www.lenholgate.com/archives/000545.html</link>
<description>

Making the ADO Client Cursor Engine believe that your rowset is updateable involves jumping through a few extra hoops......

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000545.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=545" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">545@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>2000-01-02T01:00:02+00:00</dc:date>
</item>
<item>
<title>OLEDB - Updating data through an ADO recordset</title>
<link>http://www.lenholgate.com/archives/000544.html</link>
<description>

The ATL OLE DB Provider templates only seem to support read-only rowsets, and making them support updating of data isn&apos;t as easy as you&apos;d expect!...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000544.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=544" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">544@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>2000-01-02T01:00:01+00:00</dc:date>
</item>
<item>
<title>OLEDB - IRowsetLocate and Bookmarks</title>
<link>http://www.lenholgate.com/archives/000543.html</link>
<description>

Adding bookmark functionality is relatively easy and it enables our ADO recordset to be used with a greater number of data bound controls....

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000543.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=543" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">543@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>1999-10-16T01:00:01+00:00</dc:date>
</item>
<item>
<title>OLEDB - Custom Rowsets</title>
<link>http://www.lenholgate.com/archives/000542.html</link>
<description>

The ATL OLE DB Provider templates appear to rely on the fact that your data is kept in a simple array, but that&apos;s not really the case at all!...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000542.html">01:01 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=542" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">542@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>1999-09-15T01:01:01+00:00</dc:date>
</item>
<item>
<title>OLEDB - Objects via ADO</title>
<link>http://www.lenholgate.com/archives/000541.html</link>
<description>

ADO seems to be the ideal way to expose tabular data from your own COM objects and the ATL OLE DB Provider templates can help!...

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000541.html">01:00 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=541" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">541@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>1999-09-15T01:00:01+00:00</dc:date>
</item>
<item>
<title>MFC - Templates</title>
<link>http://www.lenholgate.com/archives/000554.html</link>
<description>

Templates are a great way of reusing code, unfortunately MFC makes it hard to write MFC friendly template classes......

<![CDATA[<div class="posted">Posted by Len at <a href="http://www.lenholgate.com/archives/000554.html">01:01 AM</a>
		| <a href="http://www.lenholgate.com/mt/mt-comments-17.cgi?entry_id=554" >Comments (0)</a>
	
	
| Categories: <a href="http://www.lenholgate.com/archives/cat_reprints.html">Reprints</a>
, <a href="http://www.lenholgate.com/archives/cat_source_code.html">Source Code</a>
, <a href="http://www.lenholgate.com/archives/cat_way_back.html">Way back</a>

	</div>]]>

</description>
<guid isPermaLink="false">554@http://www.lenholgate.com/</guid>
<dc:subject>Source Code</dc:subject>
<dc:date>1998-09-30T01:01:01+00:00</dc:date>
</item>


</channel>
</rss>
