Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1843 lines
87 KiB

<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./using%20urt%20config_files/filelist.xml">
<link rel=Edit-Time-Data href="./using%20urt%20config_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>Using the URT Configuration System</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Markus Horstmann</o:Author>
<o:LastAuthor>Markus Horstmann</o:LastAuthor>
<o:Revision>24</o:Revision>
<o:TotalTime>148</o:TotalTime>
<o:Created>1999-10-14T00:43:00Z</o:Created>
<o:LastSaved>1999-12-07T20:18:00Z</o:LastSaved>
<o:Pages>11</o:Pages>
<o:Words>3011</o:Words>
<o:Characters>17163</o:Characters>
<o:Company>Microsoft Internal</o:Company>
<o:Lines>143</o:Lines>
<o:Paragraphs>34</o:Paragraphs>
<o:CharactersWithSpaces>21077</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>BestFit</w:Zoom>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;
mso-font-charset:2;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:0 268435456 0 0 -2147483648 0;}
@font-face
{font-family:Verdana;
panose-1:2 11 6 4 3 5 4 4 2 4;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-pitch:variable;
mso-font-signature:536871559 0 0 0 415 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
h1
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:1;
font-size:24.0pt;
font-family:"Times New Roman";
mso-font-kerning:18.0pt;
font-weight:bold;}
h2
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:2;
font-size:18.0pt;
font-family:"Times New Roman";
font-weight:bold;}
h3
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:3;
font-size:13.5pt;
font-family:"Times New Roman";
font-weight:bold;}
p.MsoToc1, li.MsoToc1, div.MsoToc1
{mso-style-update:auto;
mso-style-next:Normal;
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc2, li.MsoToc2, div.MsoToc2
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:12.0pt;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc3, li.MsoToc3, div.MsoToc3
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:24.0pt;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc4, li.MsoToc4, div.MsoToc4
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc5, li.MsoToc5, div.MsoToc5
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:48.0pt;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc6, li.MsoToc6, div.MsoToc6
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:60.0pt;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc7, li.MsoToc7, div.MsoToc7
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:1.0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc8, li.MsoToc8, div.MsoToc8
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:84.0pt;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoToc9, li.MsoToc9, div.MsoToc9
{mso-style-update:auto;
mso-style-next:Normal;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:96.0pt;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoFootnoteText, li.MsoFootnoteText, div.MsoFootnoteText
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
span.MsoFootnoteReference
{vertical-align:super;}
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoBodyTextIndent, li.MsoBodyTextIndent, div.MsoBodyTextIndent
{margin:0in;
margin-bottom:.0001pt;
text-indent:.5in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
color:red;
font-weight:bold;}
p.MsoBodyText2, li.MsoBodyText2, div.MsoBodyText2
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
color:red;
font-weight:bold;}
p.MsoBodyTextIndent2, li.MsoBodyTextIndent2, div.MsoBodyTextIndent2
{margin:0in;
margin-bottom:.0001pt;
text-indent:.5in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
color:red;
font-weight:bold;}
p.MsoBlockText, li.MsoBlockText, div.MsoBlockText
{margin-right:.5in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:.5in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;
text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
{color:maroon;
text-decoration:underline;
text-underline:single;}
p
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
tt
{mso-ascii-font-family:"Courier New";
mso-fareast-font-family:"Courier New";
mso-hansi-font-family:"Courier New";
mso-bidi-font-family:"Courier New";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:-2;
mso-list-type:simple;
mso-list-template-ids:761423964;}
@list l0:level1
{mso-level-start-at:0;
mso-level-text:*;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:0in;
text-indent:0in;}
@list l1
{mso-list-id:575893656;
mso-list-type:hybrid;
mso-list-template-ids:-1800122242 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l2
{mso-list-id:678964059;
mso-list-type:hybrid;
mso-list-template-ids:453913416 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l3
{mso-list-id:766121386;
mso-list-type:hybrid;
mso-list-template-ids:-1299278360 -1942432512 -395118558 -1081728496 377515852 739288804 641093926 -1532712600 -1832496466 1877909766;}
@list l4
{mso-list-id:807557148;
mso-list-type:hybrid;
mso-list-template-ids:176478654 -696213490 -1597622048 832891508 -48056522 797738254 -515843724 -217183430 380829274 1539872580;}
@list l4:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l5
{mso-list-id:855659197;
mso-list-type:hybrid;
mso-list-template-ids:-367899078 2116566740 -1163910998 -2071161390 422087384 117109154 -1993991954 -1087600168 -1347773808 534788264;}
@list l5:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l6
{mso-list-id:1284774935;
mso-list-type:hybrid;
mso-list-template-ids:-901499130 761423964 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l6:level1
{mso-level-start-at:0;
mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
mso-level-legacy:yes;
mso-level-legacy-indent:0in;
mso-level-legacy-space:0in;
margin-left:0in;
text-indent:0in;
font-family:Symbol;}
@list l7
{mso-list-id:1510172926;
mso-list-type:hybrid;
mso-list-template-ids:988300944 1679612518 373985284 1399643390 -2110639446 -54371850 -976974442 529461230 133994354 1720716384;}
@list l7:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l8
{mso-list-id:1829176701;
mso-list-type:hybrid;
mso-list-template-ids:-1784788726 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l9
{mso-list-id:1833376249;
mso-list-type:hybrid;
mso-list-template-ids:1396476904 -1118663700 1126598294 -1813075500 -1353794174 -1308452448 69389066 -1106875208 682947314 -982748962;}
@list l9:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l10
{mso-list-id:1867207660;
mso-list-type:hybrid;
mso-list-template-ids:-1278074742 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l10:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l11
{mso-list-id:2086225176;
mso-list-type:hybrid;
mso-list-template-ids:-483758760 773366188 -713261512 -1861328652 -592530718 -117523022 -207717946 179875860 1749948876 214173590;}
@list l11:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level1 lfo8
{mso-level-number-format:bullet;
mso-level-numbering:continue;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
mso-level-legacy:yes;
mso-level-legacy-indent:0in;
mso-level-legacy-space:0in;
margin-left:0in;
text-indent:0in;
font-family:Symbol;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
</head>
<body lang=EN-US link=blue vlink=maroon style='tab-interval:.5in'>
<div class=Section1>
<h1><a name="_Toc467340649"></a><a name=top></a><span style='mso-bookmark:_Toc467340649'>Using
the URT Configuration System</span></h1>
<p class=MsoNormal><em><b>Getting Started Guide</b></em><i><br>
<em>Application Server/Universal Runtime</em><br>
<em><span style='color:red'>Microsoft Confidential</span> </em></i></p>
<table border=0 cellspacing=0 cellpadding=0 width="100%" style='width:100.0%;
mso-cellspacing:0in;mso-padding-alt:0in 0in 0in 0in'>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Author</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal><a href="mailto:vanvan">Van Van</a></p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Area</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Configuration System</p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>SubArea</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Getting Started Guide</p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Program Management</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal><a href="mailto:markush">Markus Horstmann</a></p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Development</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal><a href="mailto:rcraig">Robert Craig</a></p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Test</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal><a href="mailto:mikefan">Michael Fanning</a></p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Reviewers</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal><a href="mailto:rcraig">Robert Craig</a> </p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Current Version</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>0.9</p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Version History</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>0.9: 12/07/99 : Updated installation instruction for
managed config.</p>
<p class=MsoNormal>0.8: 11/15/99 : Added instruction to <a
href="#_Installing_the_managed">install drops of managed configuration system</a>.</p>
<p class=MsoNormal>0.7: 11/09/99 : Added reg keys required by system event
logging</p>
<p class=MsoNormal>0.6: 10/18/99 : Changed setup contact to URTSetup.
Clarified internal vs. external files. Cosmetic edits - MarkusH</p>
<p class=MsoNormal>0.5: 10/15/99 : Added check-in procedure - MarkusH</p>
<p class=MsoNormal>0.4: 10/13/99 : Added examples on how to extend
collections - MarkusH</p>
<p class=MsoNormal>0.3 : 10/5/99 : Updated BVT instruction - MarkusH<br>
0.2 : 9/13/99 : incorporated RCraig's comments - VanVan<br>
0.1 : 8/23/99 : file created - VanVan</p>
</td>
</tr>
<tr>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal>Status</p>
</td>
<td style='padding:0in 0in 0in 0in'>
<p class=MsoNormal><b>Initial Draft</b></p>
</td>
</tr>
</table>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p class=MsoToc1 style='tab-stops:right dotted 431.5pt'><!--[if supportFields]><span
style='mso-element:field-begin'></span><span style="mso-spacerun:
yes">&nbsp;</span>TOC \o &quot;1-3&quot; \h \z <span style='mso-element:field-separator'></span><![endif]--><span
class=MsoHyperlink><a href="#_Toc467340649">Using the URT Configuration System<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>.. </span><span
style='mso-field-code:"PAGEREF _Toc467340649 \\h"'>1<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600340039000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340650">Overview<span style='color:windowtext;
display:none;mso-hide:screen;text-decoration:none;text-underline:none'><span
style='mso-tab-count:1 dotted'>.. </span><span style='mso-field-code:"PAGEREF _Toc467340650 \\h"'>2<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350030000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340651">Manual Setup<span style='color:
windowtext;display:none;mso-hide:screen;text-decoration:none;text-underline:
none'><span style='mso-tab-count:1 dotted'>. </span><span style='mso-field-code:
"PAGEREF _Toc467340651 \\h"'>2<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350031000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340652">Testing the Install<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'> </span><span
style='mso-field-code:"PAGEREF _Toc467340652 \\h"'>3<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350032000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340653">Installing the managed
configuration system<span style='color:windowtext;display:none;mso-hide:screen;
text-decoration:none;text-underline:none'><span style='mso-tab-count:1 dotted'>.. </span><span
style='mso-field-code:"PAGEREF _Toc467340653 \\h"'>3<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350033000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340654">Reading Configuration Data<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340654 \\h"'>4<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350034000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340655">Extending the Schema<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340655 \\h"'>4<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350035000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc3 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340656">Example 1: Adding a column to the
Fusion &#8220;BindingPolicy&#8221; table<span style='color:windowtext;display:none;
mso-hide:screen;text-decoration:none;text-underline:none'><span
style='mso-tab-count:1 dotted'>. </span><span style='mso-field-code:"PAGEREF _Toc467340656 \\h"'>5<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350036000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc3 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340657">Example 2: Adding a column to the
Ducttape &#8220;Application&#8221; table<span style='color:windowtext;display:none;
mso-hide:screen;text-decoration:none;text-underline:none'><span
style='mso-tab-count:1 dotted'>. </span><span style='mso-field-code:"PAGEREF _Toc467340657 \\h"'>6<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350037000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc3 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340658">Example 3: Adding a new collection<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340658 \\h"'>7<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350038000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc3 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340659">Making the schema part of the
shipping product<span style='color:windowtext;display:none;mso-hide:screen;
text-decoration:none;text-underline:none'><span style='mso-tab-count:1 dotted'> </span><span
style='mso-field-code:"PAGEREF _Toc467340659 \\h"'>7<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600350039000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340660">Writing Plugins<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340660 \\h"'>8<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600360030000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340661">Running BVTs<span style='color:
windowtext;display:none;mso-hide:screen;text-decoration:none;text-underline:
none'><span style='mso-tab-count:1 dotted'>. </span><span style='mso-field-code:
"PAGEREF _Toc467340661 \\h"'>8<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600360031000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340662">Check-in procedure<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340662 \\h"'>8<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600360032000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc2 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340663">File list for Setup<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340663 \\h"'>9<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600360033000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc3 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340664">Files<span style='color:windowtext;
display:none;mso-hide:screen;text-decoration:none;text-underline:none'><span
style='mso-tab-count:1 dotted'>. </span><span style='mso-field-code:"PAGEREF _Toc467340664 \\h"'>9<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600360034000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoToc3 style='tab-stops:right dotted 431.5pt'><span
class=MsoHyperlink><a href="#_Toc467340665">Registry Keys<span
style='color:windowtext;display:none;mso-hide:screen;text-decoration:none;
text-underline:none'><span style='mso-tab-count:1 dotted'>. </span><span
style='mso-field-code:"PAGEREF _Toc467340665 \\h"'>10<!--[if gte mso 9]><xml>
<w:data>08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003400360037003300340030003600360035000000</w:data>
</xml><![endif]--></span></span></a></span></p>
<p class=MsoNormal><!--[if supportFields]><span style='mso-element:field-end'></span><![endif]--><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340650"></a><a name=Overview></a><a name="_Overview"></a><span
style='mso-bookmark:_Toc467340650'><span style='mso-bookmark:Overview'>Overview</span></span></h2>
<p class=MsoNormal>As more and more groups begin using the URT Configuration
System (URTConfig for short), there needs to be a definitive guide which takes
someone who has little to no knowledge about the URTConfig from installing it
to actually using it. This document does NOT touch on the in depth technical
aspects of the URTConfig. You will need to read the technical specification for
that. Instead, this document solely focuses on the user perspective of actually
using the URTConfig either in their code or testing. </p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340651"></a><a name=Setup></a><a name="_Setup"></a><span
style='mso-bookmark:_Toc467340651'><span style='mso-bookmark:Setup'>Manual
Setup</span></span></h2>
<p class=MsoNormal>Currently, we do not have a setup program which does
everything for the user. This may or may not appear depending on our delivery
vehicle. In the meantime, you can follow these simple steps to setup the URT
Config system either for testing or coding against. </p>
<ol start=1 type=1>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l3 level1 lfo3;tab-stops:list .5in'>Go to the drop location: <tt><span
style='font-size:10.0pt;font-family:"Courier New"'><a
href="file:\\urtdist\builds">\\urtdist\builds</a></span></tt> and pick up
the latest build of the Config. The full path is </li>
</ol>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:1.0in'><tt><b><span style='font-size:10.0pt;font-family:"Courier New"'>\\urtdist\builds\{</span></b></tt><em><b><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'>buildnum</span></b></em><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>}\{</span></b></tt><em><b><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'>platform</span></b></em><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>}{</span></b></tt><em><b><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'>buildtype</span></b></em><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>}\Config </span></b></tt></p>
<p style='margin-left:.5in'>For example,</p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:1.0in'><tt><b><span style='font-size:10.0pt;font-family:"Courier New"'>\\urtdist\builds\0823\x86fre\Config</span></b></tt>
</p>
<p style='margin-left:.5in'>Copy everything at this location into a directory
of your choice that is <b>NOT</b> on your path. For example, do not copy it
into your <tt><span style='font-size:10.0pt;font-family:"Courier New"'>%windir%\system32</span></tt>
directory. Instead, create a directory (or use an existing one) like <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>C:\Config</span></tt>. </p>
<p style='margin-left:.5in'>NOTE: If you plan on running our current <a
href="#BVTs">BVTs</a> on this install, you will need to install in the <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>%windir%\XSPDT</span></tt>
directory. This will change in the future, but for now, it is hard coded in our
BVT TEST ONLY. </p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo3;
tab-stops:list .5in'><![if !supportLists]>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>Go to the test drop location: <tt><span style='font-size:10.0pt;
font-family:"Courier New"'><a href="file:\\urtdist\testdrop">\\urtdist\testdrop</a></span></tt>
and pick up the latest build of the test tools that you will also need. The
full path is </p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:1.0in'><tt><b><span style='font-size:10.0pt;font-family:"Courier New"'>\\urtdist\testdrop\{</span></b></tt><em><b><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'>buildnum</span></b></em><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>}\{</span></b></tt><em><b><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'>platform</span></b></em><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>}{</span></b></tt><em><b><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'>buildtype</span></b></em><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>}\Config </span></b></tt></p>
<p style='margin-left:.5in'>For example,</p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:1.0in'><tt><b><span style='font-size:10.0pt;font-family:"Courier New"'>\\urtdist\testdrop\0823\x86fre\Config</span></b></tt>
</p>
<p style='margin-left:.5in'>Copy everything at this location into the exact
same directory as the one you used/created in the previous step. Although these
files are not necessary, they are really helpful in any debugging and testing
scenarios. </p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo3;
tab-stops:list .5in'><![if !supportLists]>3.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>Open up a command prompt and go into the directory you copied
all the files into (e.g. <tt><span style='font-size:10.0pt;font-family:"Courier New"'>C:\Config</span></tt>).
Run the following command: </p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:1.0in'><b>catutil /product=urt /dll=C:\Config\Catalog.dll</b> </p>
<p style='margin-left:.5in'>A few things to note here. Although the product
name can be anything, you will need to be consistent with the name. If you
choose something, you will need to specify the exact same name when calling the
APIs to retrieve config info. The value of /dll needs to be the full path to
Catalog.dll (wherever you copied it). In this example, we are using <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>C:\Config\Catalog.dll</span></tt>.
</p>
<p style='margin-left:.5in'>NOTE: All this does is creates the registry keys
described <a href="#_Registry_Keys">below</a>.</p>
<p>Once you've done all this, the Config system is installed and ready to go. </p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340652"></a><a name="Testing_the_Install"></a><a
name="_Testing_the_Install"></a><span style='mso-bookmark:_Toc467340652'><span
style='mso-bookmark:Testing_the_Install'>Testing the Install</span></span></h2>
<p class=MsoNormal>To test and make sure you have everything installed
correctly and running, you can do a few things (you don't need to do all of the
following, just one is fine): </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l9 level1 lfo6;tab-stops:list .5in'><b>Run the current <a
href="#BVTs">BVT tests</a></b>. </li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l9 level1 lfo6;tab-stops:list .5in'><b>Use </b><tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>STest</span></b></tt><b>
to check your install.</b> Use the command prompt and navigate to the directory
where you installed all the files. Run the following command: </li>
</ul>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:1.0in'><tt><b><span style='font-size:10.0pt;font-family:"Courier New"'>stest
/view /d:meta /t:tablemeta</span></b></tt> </p>
<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:.5in'>You should see 30 some table entries. This is an indication
that things are working. All this does is displays the table meta information
that is in the Config system. </p>
<p class=MsoNormal>You can also use <tt><span style='font-size:10.0pt;
font-family:"Courier New"'>stest</span></tt> to view any information known to
the configuration system. Please refer to <tt><span style='font-size:10.0pt;
font-family:"Courier New"'>stest</span></tt> itself for the syntax and
parameters. </p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340653"></a><a name="Using_the_URT_Config"></a><a
name="_Using_the_URT"></a><a name="_Reading_Configuration_Data"></a><a
name="_Installing_the_managed"></a><span style='mso-bookmark:_Toc467340653'><span
style='mso-bookmark:Using_the_URT_Config'>Installing the managed configuration
system</span></span><span style='mso-bookmark:Using_the_URT_Config'></span></h2>
<p class=MsoNormal><span style='mso-bookmark:Using_the_URT_Config'>To install
(sorry no integrated setup yet):</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Install the latest COM+ 2.0 build from </span><a
href="file://urtdist/builds"><span style='mso-bookmark:Using_the_URT_Config'><span
style='font-size:10.0pt;font-family:Verdana'>file:\\urtdist\builds</span></span><span
style='mso-bookmark:Using_the_URT_Config'></span></a><span style='mso-bookmark:
Using_the_URT_Config'>. M10 builds have build # &lt; 1206, i.e. </span><span
style='mso-bookmark:Using_the_URT_Config'></span><a
href="file://urtdist/builds/1204/x86FRE/Setup.exe"><span style='mso-bookmark:
Using_the_URT_Config'><span style='font-size:10.0pt;font-family:Verdana'>file:\\urtdist\builds\1204\x86fre\setup.exe</span></span><span
style='mso-bookmark:Using_the_URT_Config'></span></a><span style='mso-bookmark:
Using_the_URT_Config'>.</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Copy the latest M11 config build from </span><a
href="file://urtdist/builds"><span style='mso-bookmark:Using_the_URT_Config'>\\urtdist\builds</span><span
style='mso-bookmark:Using_the_URT_Config'></span></a><span style='mso-bookmark:
Using_the_URT_Config'> to your config directory, typically %windir%\xspdt. M11
builds have build# &gt;=1206, i.e. </span><a
href="file://urtdist/builds/1206.5/x86FRE/Config"><span style='mso-bookmark:
Using_the_URT_Config'>\\urtdist\builds\1206.5\x86fre\config</span><span
style='mso-bookmark:Using_the_URT_Config'></span></a><span style='mso-bookmark:
Using_the_URT_Config'>. </span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>copy mngdIST.DLL to configuration.DLL (in your config
directory).</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Re-Register the configuration system:</span></p>
<p class=MsoToc4><span style='mso-bookmark:Using_the_URT_Config'>cd
%windir%\xspdt</span></p>
<p class=MsoToc4><span style='mso-bookmark:Using_the_URT_Config'>catutil
/product=URT /dll=%windir%\xspdt\catalog.dll</span></p>
<p class=MsoNormal style='margin-left:19.0pt;mso-layout-grid-align:none;
text-autospace:none'><span style='mso-bookmark:Using_the_URT_Config'><span
style='font-size:10.0pt;font-family:Verdana;color:teal'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></span></p>
<p class=MsoNormal><span style='mso-bookmark:Using_the_URT_Config'>To try it
out:</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>copy \\urtdist\TestDrop\&lt;M11 build#&gt;\x86FRE\Config\machine.cfg
to your config directory.<b><span style='color:red'> Make sure to save your
machine.cfg file if you modified and care about it!</span></b></span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>In machine.cfg: Make sure the HomeDirectory for Site
&quot;312&quot; (the site last in the file) points to the config directory
using an actual path, e.g. c:\winnt\xspdt, NOT %systemroot%\xspdt. </span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Download test binaries from
http://appcenter/config/testfiles: mwiring.xml, config.cfg, testmerger.exe,
system.handler.dll. (right-click &quot;Save Target As...&quot;) to your config
directory, e.g. %windir%\xspdt. Make sure config.cfg gets downloaded correctly
(Select &quot;All Files&quot; to avoid the .xml file extension being
automatically appended to config.cfg by IE).</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Create sub directories foo and foo\bar under
%windir%\xspdt</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>copy config.cfg and catalog.xms into both foo\ and
foo\bar.</span></p>
<p class=MsoNormal style='margin-left:19.0pt;text-indent:-19.0pt;mso-list:l0 level1 lfo8'><span
style='mso-bookmark:Using_the_URT_Config'><![if !supportLists]><span
style='font-family:Symbol'>&middot;<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]>Run &quot;testmerger.exe URLPermissions&quot; or
&quot;testmerger.exe UserDatabase&quot; or &quot;testmerger.exe
ScriptMaps2&quot; (sources in $/catalog42/src/urt/handlers/testmerger.cool).</span></p>
<h2><span style='mso-bookmark:Using_the_URT_Config'><a name="_Toc467340654">Reading
Config</a></span><span style='mso-bookmark:_Toc467340654'>uration Data</span></h2>
<p class=MsoNormal>Once everything is in working order and has passed your
tests, either BVT or otherwise, you can start using it within your code. In
order to code to it, you will need to: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo11;tab-stops:list .5in'>Include <tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>catalog.h</span></b></tt>
</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo11;tab-stops:list .5in'>Include <tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>catmeta.h</span></b></tt>
</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo11;tab-stops:list .5in'>Link with the static lib <tt><b><span
style='font-size:10.0pt;font-family:"Courier New"'>cat.lib</span></b></tt>
</li>
</ul>
<p class=MsoNormal>You can look at <a href="stest.cpp">stest.cpp</a> for some
sample code. </p>
<p><span style='color:red'>TODO: We really need a small simple sample that
shows how to easily read/write config information here.</span> </p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340655"></a><a name="Extending_the_Schema"></a><a
name="_Extending_the_Schema"></a><span style='mso-bookmark:_Toc467340655'><span
style='mso-bookmark:Extending_the_Schema'>Extending the Schema</span></span></h2>
<p class=MsoNormal>Schema information is stored in <tt><span style='font-size:
10.0pt;font-family:"Courier New"'>catmeta.xml</span></tt> (see <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>catmeta.xms</span></tt> for respective
schema). Wiring information is expressed in <tt><span style='font-size:10.0pt;
font-family:"Courier New"'>catwire.xml</span></tt> (see <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>catwire.xms</span></tt> for
respective schema). </p>
<p>If you wish to change the schema (add your own property) and/or wiring
information, you should modify <tt><span style='font-size:10.0pt;font-family:
"Courier New"'>catmeta.xml</span></tt> and/or <tt><span style='font-size:10.0pt;
font-family:"Courier New"'>catwire.xml</span></tt> appropriately. When you are
done, run </p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:.5in'><b>catutil /validate <em>filename</em></b> </p>
<p class=MsoNormal>where <em><b>filename</b></em> is the .xml file you just
modified. This will validate and make sure you didn't make any mistakes when
you modified the file. Once it's been validated, then run </p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:.5in'><b>catutil /compile /dll=C:\Config\Catalog.dll</b> </p>
<p class=MsoNormal>to &quot;compile&quot; your changes. No source code
compilation actually occurs. This command: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l7 level1 lfo14;tab-stops:list .5in'>generates an XML schema: <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>catalog.xms</span></tt></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l7 level1 lfo14;tab-stops:list .5in'>generates a C style header
of constants: <tt><span style='font-size:10.0pt;font-family:"Courier New"'>catmeta.h</span></tt></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l7 level1 lfo14;tab-stops:list .5in'>modifies <tt><span
style='font-size:10.0pt;font-family:"Courier New"'>catalog.dll</span></tt>
with the new schema information</li>
</ul>
<h3><a name="_Toc467340656">Example 1: Adding a column to the Fusion
&#8220;BindingPolicy&#8221; table</a></h3>
<ol style='margin-top:0in' start=1 type=1>
<li class=MsoNormal style='mso-list:l8 level1 lfo17;tab-stops:list .5in'>Open
catmeta.xml, find the &#8220;BindingPolicy&#8221; table:</li>
</ol>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;TableMeta <span style='mso-tab-count:1'> </span>InternalName=&quot;BINDINGREDIRTABLE&quot;
PublicRowName=&quot;BindingRedir&quot; <o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>SchemaGeneratorFlags=&quot;EMITXMLSCHEMA&quot;
PublicName=&quot;BindingPolicy&quot;&gt;</span></tt><span style='font-size:
10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;Name&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='mso-tab-count:3'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
MetaFlags=&quot;PRIMARYKEY&quot;/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;PK&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='mso-tab-count:
3'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
MetaFlags=&quot;PRIMARYKEY&quot;/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;Version&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
MetaFlags=&quot;PRIMARYKEY&quot;/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;VersionNew&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp; </span><span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;NoPublisherPolicy&quot;<span style="mso-spacerun:
yes">&nbsp; </span>Type=&quot;WSTR&quot;<span style="mso-spacerun: yes">&nbsp;
</span>/&gt;</tt><br>
<tt>&lt;/TableMeta&gt;</tt><br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]><tt><o:p></o:p></tt></span></p>
<ol style='margin-top:0in' start=2 type=1>
<li class=MsoNormal style='mso-list:l8 level1 lfo17;tab-stops:list .5in'>Add
the definition for the new column and save catmeta.xml:</li>
</ol>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;TableMeta <span style='mso-tab-count:1'> </span>InternalName=&quot;BINDINGREDIRTABLE&quot;
PublicRowName=&quot;BindingRedir&quot; <o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>SchemaGeneratorFlags=&quot;EMITXMLSCHEMA&quot;
PublicName=&quot;BindingPolicy&quot;&gt;</span></tt><span style='font-size:
10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;Name&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='mso-tab-count:3'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
MetaFlags=&quot;PRIMARYKEY&quot;/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;PK&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='mso-tab-count:
3'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
MetaFlags=&quot;PRIMARYKEY&quot;/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;Version&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
MetaFlags=&quot;PRIMARYKEY&quot;/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;VersionNew&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp; </span><span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;
/&gt;</tt><br>
<tt><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;NoPublisherPolicy&quot;<span style="mso-spacerun:
yes">&nbsp; </span><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;WSTR&quot;<span
style="mso-spacerun: yes">&nbsp; </span>/&gt;</tt><br>
<tt><b><span style='color:red'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta
InternalName = &quot;NewColumn&quot;<span style="mso-spacerun: yes">&nbsp;
</span><span style='mso-tab-count:3'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Type=&quot;UI4&quot;
/&gt;</span></b></tt><b><span style='color:red'><br>
</span></b><tt>&lt;/TableMeta&gt;</tt><br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></span></p>
<p class=MsoBodyText style='margin-left:.5in;text-indent:-.25in;mso-list:l8 level1 lfo17;
tab-stops:list .5in'><![if !supportLists]>3.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>In the catalog directory (i.e. c:\config), run &#8220;catutil
/validate catmeta.xml&#8221;. Fix any errors reported.</p>
<p class=MsoBodyText style='margin-left:.5in;text-indent:-.25in;mso-list:l8 level1 lfo17;
tab-stops:list .5in'><![if !supportLists]>4.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>In the catalog directory, run &#8220;catutil /compile
/dll=c:\config\catalog.dll.</p>
<h3><a name="_Toc467340657">Example 2: Adding a column to the Ducttape
&#8220;Application&#8221; table</a></h3>
<p class=MsoNormal>Ducttape uses persistent caching. For this reason, there are
two table definitions for each table: one for the &#8220;raw&#8221; data as stored in the
configuration file, and another one for the persisted data as consumed by
Ducttape:</p>
<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;!&#8212;- Configuration file definition --&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;TableMeta<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;APPS_CFG&quot;
SchemaGeneratorFlags=&quot;EMITCLBBLOB&quot;&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppEnabled&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;UI4&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;QueryMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;All&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>MetaFlags=&quot;ALL&quot; /&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;/TableMeta&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;!&#8212;- Persisted table definition: the additional
columns are computed by the cookdown logic --&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;TableMeta<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;APPS&quot;
SchemaGeneratorFlags=&quot;EMITCLBBLOB&quot;&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;SrcCFGFile&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppURL&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>MetaFlags=&quot;PRIMARYKEY&quot; /&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;SiteID&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;UI4&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>MetaFlags=&quot;PRIMARYKEY&quot;
/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>InternalName=&quot;AppPoolID&quot;<span
style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppEnabled&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;UI4&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;QueryMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;All&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>MetaFlags=&quot;ALL&quot; /&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;/TableMeta&gt;</span></tt></p>
<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<p class=MsoNormal>The table for the configuration file usually has the name of
the persisted table plus a &#8220;_CFG&#8221;, i.e. &#8220;APPS&#8221; and &#8220;APPS_CFG&#8221;.</p>
<p class=MsoNormal>In order to add a column, a new ColumnMeta entry with
matching types has to be added to both table definitions (as illustrated in
Example 1). If the new column requires no processing, but merely needs to be
copied through to the persisted table, no further coding is needed.</p>
<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<ol style='margin-top:0in' start=1 type=1>
<li class=MsoNormal style='mso-list:l2 level1 lfo21;tab-stops:list .5in'>Edit
catmeta.xml:</li>
</ol>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;!&#8212;- Configuration file definition --&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;TableMeta<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;APPS_CFG&quot; SchemaGeneratorFlags=&quot;EMITCLBBLOB&quot;&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppEnabled&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;UI4&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoBodyTextIndent><tt><span style='font-size:10.0pt;font-family:"Courier New"'><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;MyNewColumn&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;QueryMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;All&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>MetaFlags=&quot;ALL&quot; /&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;/TableMeta&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;!&#8212;- Persisted table definition: the additional
columns are computed by the cookdown logic --&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;TableMeta<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;APPS&quot;
SchemaGeneratorFlags=&quot;EMITCLBBLOB&quot;&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;SrcCFGFile&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span
style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>Type=&quot;WSTR&quot;<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppURL&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>MetaFlags=&quot;PRIMARYKEY&quot; /&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;SiteID&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;UI4&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>MetaFlags=&quot;PRIMARYKEY&quot;
/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppPoolID&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;AppEnabled&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;UI4&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoBodyTextIndent2><tt><span style='font-size:10.0pt;font-family:"Courier New"'><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;ColumnMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;MyNewColumn&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Type=&quot;WSTR&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>/&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='text-indent:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'><span style="mso-spacerun: yes">&nbsp;</span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;QueryMeta<span
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>InternalName=&quot;All&quot;<span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>MetaFlags=&quot;ALL&quot; /&gt;<o:p></o:p></span></tt></p>
<p class=MsoNormal style='margin-left:.5in'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>&lt;/TableMeta&gt;</span></tt></p>
<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<ol style='margin-top:0in' start=2 type=1>
<li class=MsoNormal style='mso-list:l2 level1 lfo21;tab-stops:list .5in'>Run
&#8220;catutil /validate catmeta.xml&#8221;</li>
<li class=MsoNormal style='mso-list:l2 level1 lfo21;tab-stops:list .5in'>Run
&#8220;catutil /compile /dll=c:\config\catalog.dll&#8221;</li>
</ol>
<h3><a name="_Toc467340658">Example 3: Adding a new collection</a></h3>
<p class=MsoNormal>Simply add a new &lt;TableMeta&gt; elements to the
appropriate &lt;DatabaseMeta&gt; section in catmeta.xml (copying and existing
one and modifying it is usually the easiest). </p>
<p class=MsoNormal>Note: The DatabaseMeta determines which interceptors (i.e.
read from XML, CompLib etc.) will be used to handle the new collection, so pick
a Database that contains collections with similar semantics as the one you are
adding<a style='mso-footnote-id:ftn1' href="#_ftn1" name="_ftnref1" title=""><span
class=MsoFootnoteReference><span style='mso-special-character:footnote'><![if !supportFootnotes]>[1]<![endif]></span></span></a>.</p>
<p class=MsoNormal>Note: To add a collection to the persisted cache (cookdown),
code changes are required in current drops!</p>
<h3><a name="_Toc467340659">Making the schema part of the shipping product</a></h3>
<p class=MsoNormal>For the December release, schema changes need to be checked
into the Config source tree (<a href="file://urtsrc/config">\\urtsrc\config</a>
$/catalog42/src/bin/core/catinproc/catmeta.xml).</p>
<p class=MsoNormal>Please follow the <a href="#_Check-in_procedures">Config
team check-in procedures</a>! </p>
<p class=MsoNormal>Request access to the config sources via <a
href="file://lab7/groupease">\\lab7\groupease</a>. E-mail <a
href="mailto:MarkusH">MarkusH</a> for VSS write access.</p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340660"></a><a name="Writing_Plugins"></a><a
name="_Check-in_procedures"></a><a name="_Writing_Plugins"></a><span
style='mso-bookmark:_Toc467340660'><span style='mso-bookmark:Writing_Plugins'>Writing
Plugins</span></span></h2>
<p class=MsoNormal><span style='color:red'>TODO: Need to include info here on how
to write plugins and perhaps even sample code.</span> </p>
<p class=MsoNormal>Refer to the <a href="simpletablesV2.doc">Native-code
configuration system spec</a> for details on interceptors, wiring etc.</p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h2><a name="_Toc467340661"></a><a name=BVTs></a><a name=Breakdown></a><a
name="_Running_BVTs"></a><span style='mso-bookmark:_Toc467340661'><span
style='mso-bookmark:BVTs'><span style='mso-bookmark:Breakdown'>Running BVTs</span></span></span><span
style='mso-bookmark:Breakdown'></span></h2>
<p class=MsoNormal><span style='mso-bookmark:Breakdown'>To run the current BVT
tests, you need to&nbsp; </span></p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l5 level1 lfo25;tab-stops:list .5in'><span style='mso-bookmark:
Breakdown'>Install the Config system as indicated in the </span><a
href="#Setup"><span style='mso-bookmark:Breakdown'>Setup</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
section of this document, BUT you must install everything in the </span><span
style='mso-bookmark:Breakdown'><tt><span style='font-size:10.0pt;
font-family:"Courier New"'>%windir%\XSPDT</span></tt> directory.
Basically, you will need to follow the directions carefully and wherever
appropriate, use </span><span style='mso-bookmark:Breakdown'><tt><span
style='font-size:10.0pt;font-family:"Courier New"'>%windir%\XSPDT</span></tt>
as opposed to any arbitrary directory.</span></li>
</ul>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo28;tab-stops:list .5in'><span style='mso-bookmark:
Breakdown'>Create a local directory (i.e. </span><a href="file:///c:/mybvt"><span
style='mso-bookmark:Breakdown'>c:\mybvt</span><span style='mso-bookmark:
Breakdown'></span></a><span style='mso-bookmark:Breakdown'>) to hold the
BVT files</span></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo28;tab-stops:list .5in'><span style='mso-bookmark:
Breakdown'>Start the BVT from the current directory, i.e.<br>
&nbsp;&nbsp;&nbsp; cd </span><a href="file:///c:/mybvtdir"><span
style='mso-bookmark:Breakdown'>c:\mybvtdir</span><span style='mso-bookmark:
Breakdown'></span></a><span style='mso-bookmark:Breakdown'> /d<br>
&nbsp;&nbsp;&nbsp;&nbsp; </span><a
href="file://astdrop/drop/x86/catalog/caturtbvt"><span style='mso-bookmark:
Breakdown'>\\astdrop\drop\x86\catalog\caturtbvt</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
build_number [checked/free, default is checked]<br>
&nbsp;&nbsp;&nbsp; Example: caturtbvt 0927</span></li>
</ul>
<p><span style='mso-bookmark:Breakdown'>WARNING!!! The BVT will copy all the
necessary configuration files into both the current directory and the
winnt\xspdt directory. So your files in the current directory and windows\xspdt
will be replaced!!</span></p>
<p><span style='mso-bookmark:Breakdown'>NOTE FOR CHECKED BUILDS: You will need </span><a
href="msvcrtd.dll"><span style='mso-bookmark:Breakdown'><tt><span
style='font-size:10.0pt;font-family:"Courier New"'>msvcrtd.dll</span></tt></span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
in order to run the checked version of Testcookdown.exe. Make sure you copy
this into the same directory as Testcookdown.exe (that is, </span><span
style='mso-bookmark:Breakdown'><tt><span style='font-size:10.0pt;font-family:
"Courier New"'>%windir%\XSPDT</span></tt>). This dependency will be removed in
future builds. </span></p>
<div class=MsoNormal align=center style='text-align:center'><span
style='mso-bookmark:Breakdown'>
<hr size=2 width="100%" align=center>
</span></div>
<h2><span style='mso-bookmark:Breakdown'><a name="_Toc467340662"></a><a
name="_Check-in_procedure"></a><span style='mso-bookmark:_Toc467340662'>Check-in
procedure</span></span></h2>
<ul style='margin-top:0in' type=disc>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Get a code/schema read from a </span><a
href="mailto:catcore"><span style='mso-bookmark:Breakdown'>CatCore</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
developer.</span></li>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Perform a full &#8220;get&#8221; on the catalog42
source tree.</span></li>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Apply your changes and build at least
&#8220;checked&#8221;. Building &#8220;free&#8221; is optional but highly recommended if you make
any code changes.</span></li>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Run </span><a href="#BVTs"><span
style='mso-bookmark:Breakdown'>BVTs</span><span style='mso-bookmark:Breakdown'></span></a><span
style='mso-bookmark:Breakdown'> on at least the checked build.</span></li>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Check in.</span></li>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Send check-in mail to </span><a
href="mailto:catchk"><span style='mso-bookmark:Breakdown'>CatChk</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
</span></li>
<li class=MsoNormal style='mso-list:l1 level1 lfo31;tab-stops:list .5in'><span
style='mso-bookmark:Breakdown'>Get a buddy build (optional).</span></li>
</ul>
<p class=MsoNormal><span style='mso-bookmark:Breakdown'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>
<p class=MsoNormal><span style='mso-bookmark:Breakdown'>Do not check in during
the config build time (currently 7AM Mo-Fr), up-to-date build schedules on </span><a
href="http://urt/build.asp"><span style='mso-bookmark:Breakdown'>http://urt/build.asp</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>.</span></p>
<p class=MsoNormal><span style='mso-bookmark:Breakdown'>Contact </span><a
href="mailto:MarkusH"><span style='mso-bookmark:Breakdown'>MarkusH</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
/ </span><a href="mailto:RCraig"><span style='mso-bookmark:Breakdown'>RCraig</span><span
style='mso-bookmark:Breakdown'></span></a><span style='mso-bookmark:Breakdown'>
to obtain permission for check-in during lock down.</span></p>
<span style='mso-bookmark:Breakdown'></span>
<h2><a name="_Toc467340663"></a><a name="_File_list_for"></a><span
style='mso-bookmark:_Toc467340663'>File list for Setup</span></h2>
<p class=MsoNormal>This section details all the files/reg keys and other
information about the Config system. </p>
<h3><a name="_Toc467340664">Files</a></h3>
<table border=1 cellspacing=0 cellpadding=0 width="100%" style='width:100.0%;
mso-cellspacing:0in;mso-padding-alt:3.75pt 3.75pt 3.75pt 3.75pt'>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>Internal Core</b> </p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>Catalog.dll</span></tt><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:
"Courier New"'><br>
<tt>catalog.xms</tt></span></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>This is the primary .dll which is built. The other file is
the XML schema file needed by the catalog as well. </p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>External Core</b> </p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>MSXML.DLL</span></tt><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:
"Courier New"'><br>
<tt>SHLWAPI.DLL</tt><br>
<tt>URLMON.DLL</tt></span></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>These files are external and built by the IE5 team. We are
currently dependent on these file and are negotiating a redistribution .dll
that we can ship with the product. This is still on-going and whether we will
ultimately ship these or just be dependent on IE5 is still in debate and
negotiations. For now, you must also copy these files in order for the Config
system to work. </p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>External Dependencies (that we don't ship)</b> </p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>MSVCRT.DLL</span></tt><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:
"Courier New"'><br>
<tt>MSVCRTD.DLL</tt></span></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>We require MSVCRT.DLL in order to run the catalog, however,
we don't ship this because it comes standard with all the OS' such as Win9x,
WinNT4, and Win2K. The counterpart is a dependency we have in Checked builds
only (MSVCRTD.DLL). This is not an issue as we will not be shipping Checked
builds. </p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>Managed Code</b> </p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>MngdIST.dll
</span></tt></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>If you are writing managed code and need managed code
access, you will need this as well. </p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>Debug Files</b> </p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>Catalog.pdb</span></tt></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>For debugging purposes only</p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>Schema Extension (internal only)<o:p></o:p></b></p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>catmeta.xml</span></tt><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:
"Courier New"'><br>
<tt>catmeta.xms</tt><br>
<tt>catutil.exe</tt><br>
<tt>catwire.xml</tt></span></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>These files are not necessary for the running of the
Config system. However, if you ever need to change the schema information
(like adding a property) or chaning the wiring information, you will need
these XML files and the tool to recompile them. </p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>Config SDK (Internal only)</b></p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>cat.lib</span></tt><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:
"Courier New"'><br>
<tt>catalog.h</tt><br>
<tt>catmeta.h</tt></span></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>If you are writing code that uses the Config system, you
will need to include the header files and link with the .libs. </p>
</td>
</tr>
<tr>
<td colspan=2 style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><b>Test Tools and Files (Internal only)<o:p></o:p></b></p>
</td>
</tr>
<tr>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal><tt><span style='font-size:10.0pt;font-family:"Courier New"'>App.XML</span></tt><span
style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:
"Courier New"'><br>
<tt>AppPool.XML</tt><br>
<tt>Global.XML</tt><br>
<tt>stest.exe</tt><br>
<tt>stest.pdb</tt><br>
<tt>TestCookDown.exe</tt><br>
<tt>TestCookDown.pdb</tt><br>
<tt>VirtualSite.XML</tt></span></p>
</td>
<td style='padding:3.75pt 3.75pt 3.75pt 3.75pt'>
<p class=MsoNormal>These are the test tools and their respective debugging
files and sample test files used by the test tool only. </p>
</td>
</tr>
</table>
<h3><a name="_Toc467340665"></a><a name="_Registry_Keys"></a><span
style='mso-bookmark:_Toc467340665'>Registry Keys</span></h3>
<p class=MsoNormal><b><span style='color:red'>Notice: this registry key may change
without notice!<o:p></o:p></span></b></p>
<p class=MsoNormal>Use the GetMachineConfigDirectory APIs (mangaged &amp;
unmanaged) to obtain the config directory location. Link to cat.lib to access
catalog.dll.</p>
<p class=MsoNormal>If you need to manually install catalog drops, use &#8220;catutil
/product=URT&#8221; as described above.</p>
<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<p class=MsoNormal><b>With build 1019 the registry key/value structure has
changed!<o:p></o:p></b></p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>HKLM\Software\Microsoft\Catalog42</p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto'>Within this key a sub key is defined for each &#8220;product&#8221; (as passed to the
GetSimpleTableDispenser API in cat.lib). </p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;text-indent:.5in'>Example: HKLM\Software\Microsoft\Catalog42\<b>URT</b></p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto'>Within this product key, two named values are defined:</p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Name:
&#8220;<b>Dll</b>&#8221;. Value: full path to (including) catalog.dll. Example:
&#8220;c:\config\catalog.dll&#8221;, in the future likely &#8220;%windir%\COMPlus\Bin&#8221;.</p>
<p class=MsoBlockText>Name: &#8220;<b>MachineConfigDirectory</b>&#8221;. Value: full path
to the directory that contains the machine configuration file (machine.cfg).
Example: c:\config, in the future likely &#8220;%windir%\COMPlus\Config&#8221;.</p>
<p class=MsoBodyText2>With build 1108 the following additional registry
keys/values are required:</p>
<p class=MsoBlockText style='margin-left:0in'>HKLM\SYSTEM\CurrentControlSet\Services\EventLog\<b>Application</b>\COM+
Config</p>
<p class=MsoBlockText style='margin-left:0in'>Within this key, add two values:</p>
<p class=MsoBlockText>Name: &#8220;<b>EventMessageFile</b>&#8221;. Value: fully qualified
path to catalog.dll</p>
<p class=MsoBlockText>Name: &#8220;<b>TypesSupported</b>&#8221;. Value: 0x07 (DWORD)</p>
<p class=MsoBlockText style='margin-left:0in'>HKLM\SYSTEM\CurrentControlSet\Services\EventLog\<b>System</b>\COM+
Config</p>
<p class=MsoBlockText style='margin-left:0in'>Within this key, add two values:</p>
<p class=MsoBlockText>Name: &#8220;<b>EventMessageFile</b>&#8221;. Value: fully qualified
path to catalog.dll</p>
<p class=MsoBlockText>Name: &#8220;<b>TypesSupported</b>&#8221;. Value: 0x07 (DWORD)</p>
<p class=MsoBlockText style='margin-left:0in'>The following people (and only
those) will be notified of changes to this registry key/structure (e-mail <a
href="mailto:markush">MarkusH</a> to be added to this list):</p>
<p class=MsoBlockText style='text-indent:-.25in;mso-list:l10 level1 lfo33;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol'>&middot;<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><a href="mailto:URTSETUP">URT Setup</a> </p>
<p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>Previous
registry structure (before build 1019):<o:p></o:p></span></p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:.5in'><tt><b><span style='font-size:8.0pt;mso-bidi-font-size:
10.0pt;font-family:"Courier New"'>HKLM\Software\Microsoft\Catalog42</span></b></tt><span
style='font-size:8.0pt;mso-bidi-font-size:12.0pt'> <o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>Within
this key, a new <b>String</b> value is necessary.<o:p></o:p></span></p>
<p class=MsoNormal style='margin-right:.5in;mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;margin-left:.5in'><b><span style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>Name:</span></b><span
style='font-size:8.0pt;mso-bidi-font-size:12.0pt'> URT<br>
<b>Value:</b> <em>full path to (including) Catalog.dll (e.g. </em></span><tt><span
style='font-size:8.0pt;mso-bidi-font-size:10.0pt;font-family:"Courier New"'>C:\Config\Catalog.dll</span></tt><em><span
style='font-size:8.0pt;mso-bidi-font-size:12.0pt'>)</span></em><span
style='font-size:8.0pt;mso-bidi-font-size:12.0pt'> <o:p></o:p></span></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
</div>
<div style='mso-element:footnote-list'><![if !supportFootnotes]><br clear=all>
<hr align=left size=1 width="33%">
<![endif]>
<div style='mso-element:footnote' id=ftn1>
<p class=MsoFootnoteText><a style='mso-footnote-id:ftn1' href="#_ftnref1"
name="_ftn1" title=""><span class=MsoFootnoteReference><span style='mso-special-character:
footnote'><![if !supportFootnotes]>[1]<![endif]></span></span></a> Interceptor
wiring happens via the default database wiring in catwire.xml; refer to the <a
href="simpletablesV2.doc">Native-code configuration system spec</a> for details
on interceptor wiring, including per-collection wiring.</p>
</div>
</div>
</body>
</html>