Hi Gareth,
I had the same issue when I installed my website on a W2k and a W2003 server last friday. Over the weekend I found out that by looking at the html on the client machine that it refers the htc file in the root directory ( inetput\wwwroot). Just open your page and use View => Source in the internet explorer. Search for htc and you will see a line like this:
<?IMPORT NAMESPACE=TVNS IMPLEMENTATION="/webctrl_client/1_0/treeview.htc" />
You should have the source code from Microsoft, so a quick search in the source code directory will show you that they set that the location for the treeview in the file treeview.cs. Just open the source file and go to line 1256 or search for htc.( for the other controls, just find the corresponding source file)
Make the following change to that line.
output.Write("<?XML:NAMESPACE PREFIX=TVNS />\n<?IMPORT NAMESPACE=TVNS IMPLEMENTATION=\""
+ Page.Request.ApplicationPath + AddPathToFilename("treeview.htc") + "\" />");
Do the same for the line where the set the location for the images.
output.AddAttribute("systemImagesPath", Page.Request.ApplicationPath + SystemImagesPath);
Recompile the code using the build batch file and copy the new dll over to the bin directory of you website.
Copy the webctrl_client directory over from c:\inetpub\wwwroot the root of your website c:\inetpub\wwwroot\mywebsite.
Hope that helps!
Dirk